From 116f2f4150d5575d8e987239b812f6ef23679690 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 12:44:24 +0300 Subject: [PATCH 01/97] contribution edits --- .github/workflows/check_and_commit.yml | 2 +- CONTRIBUTION.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 059ce2b6d..3b58037ef 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -131,4 +131,4 @@ jobs: git diff-index --cached --quiet HEAD || git commit -m 'Auto Commit - Duplicate Packages Samples - Publish DLL Dependencies' - git push \ No newline at end of file + git push -f \ No newline at end of file diff --git a/CONTRIBUTION.md b/CONTRIBUTION.md index 3ca06dca9..22856bd07 100644 --- a/CONTRIBUTION.md +++ b/CONTRIBUTION.md @@ -74,7 +74,7 @@ If you're unsure how you would actually extend Chainsafe's SDK, take a look at t 4. **Write Tests**: Write unit tests for your code and ensure that all existing tests pass. 5. **Commit Changes**: Commit your changes with a descriptive commit message using `git commit -m "Add feature X"`. 6. **Push to Your Fork**: Push your changes to your forked repository with `git push origin my-contribution`. -7. **Submit a Pull Request**: Finally, submit a pull request targeting the `dev` branch of web3.unity repository. +7. **Submit a Pull Request**: Finally, submit a pull request targeting the `dev` branch of web3.unity repository and label it with `ready-to-merge` so required checks can initialize once your changes are ready for review. ## Reporting Issues From ee0917e58d63e50e7893dbb942d0b41e825e2668 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 12:53:45 +0300 Subject: [PATCH 02/97] condition to run tests fixed --- .github/workflows/pre_pull_request_checks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pre_pull_request_checks.yml b/.github/workflows/pre_pull_request_checks.yml index a2a3ee013..221f52325 100644 --- a/.github/workflows/pre_pull_request_checks.yml +++ b/.github/workflows/pre_pull_request_checks.yml @@ -20,7 +20,7 @@ jobs: needs: [ web3_tests ] unity_tests: name: Unity Tests - if: ${{ github.event.pull_request.head.ref == 'main' }} + if: ${{ github.base_ref == 'main' }} uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main needs: [ analyze_code ] secrets: inherit \ No newline at end of file From 53c9f253f5fd5698ef77d59a30f7d23aa031e538 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 12:58:59 +0300 Subject: [PATCH 03/97] typo fix --- .github/workflows/post_push_checks_and_commits.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 7a1371922..5cd430cf3 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,5 +7,5 @@ on: jobs: check_and_commit: name: Check and Commit - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yaml@main + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main secrets: inherit \ No newline at end of file From 6ff54d1492da67abbe86ca6c86cfb19142a55b0a Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 15:40:37 +0300 Subject: [PATCH 04/97] use deploy key for push --- .github/workflows/check_and_commit.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 3b58037ef..c8b2e6eab 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -19,6 +19,7 @@ jobs: - uses: actions/checkout@v4 with: lfs: true + ssh-key: ${{ secrets.DEPLOY_KEY }} - name: Configure Git run: | git config user.email $git_email From f39eddd100780c1cb27c8702f684079d453bfcd9 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 15:46:38 +0300 Subject: [PATCH 05/97] bot makes push instead of actor --- .github/workflows/check_and_commit.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index c8b2e6eab..7400ef452 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -22,10 +22,8 @@ jobs: ssh-key: ${{ secrets.DEPLOY_KEY }} - name: Configure Git run: | - git config user.email $git_email - git config user.name "${{ github.actor }}" - env: - git_email: "${{ github.actor }}@users.noreply.github.com" + git config --local user.name github-actions + git config --local user.email github-actions@github.com - name: Duplicate Web3 Unity Samples run: | export SOURCE_PATH= From 15ad02016e531e9d6597b21fe412c01cd1d4a0c6 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 15:52:46 +0300 Subject: [PATCH 06/97] fixed syntax --- .github/workflows/check_and_commit.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 7400ef452..26da75111 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -19,7 +19,7 @@ jobs: - uses: actions/checkout@v4 with: lfs: true - ssh-key: ${{ secrets.DEPLOY_KEY }} + ssh-private-key: ${{ secrets.DEPLOY_KEY }} - name: Configure Git run: | git config --local user.name github-actions From 26d722cd7a20a2e13aa5aaf4efe3180a3da8101e Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:01:24 +0300 Subject: [PATCH 07/97] setup ssh keys added --- .github/workflows/check_and_commit.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 26da75111..a95a51725 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -19,6 +19,9 @@ jobs: - uses: actions/checkout@v4 with: lfs: true + - name: Set up SSH keys + uses: webfactory/ssh-agent@v0.5.3 + with: ssh-private-key: ${{ secrets.DEPLOY_KEY }} - name: Configure Git run: | From a07151d976cb9f013cc1c26ae8ce7ee83e2f8742 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:13:32 +0300 Subject: [PATCH 08/97] different way for setting up ssh --- .github/workflows/check_and_commit.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index a95a51725..eb1c950c4 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -19,14 +19,16 @@ jobs: - uses: actions/checkout@v4 with: lfs: true - - name: Set up SSH keys - uses: webfactory/ssh-agent@v0.5.3 - with: - ssh-private-key: ${{ secrets.DEPLOY_KEY }} + - name: Set up SSH + run: | + mkdir -p ~/.ssh + echo "${{ secrets.DEPLOY_KEY }}" > ~/.ssh/id_rsa + chmod 600 ~/.ssh/id_rsa + ssh-keyscan github.com >> ~/.ssh/known_hosts - name: Configure Git run: | - git config --local user.name github-actions - git config --local user.email github-actions@github.com + git config user.name github-actions + git config user.email github-actions@github.com - name: Duplicate Web3 Unity Samples run: | export SOURCE_PATH= From 297c7ddb986ca1e0113f63c6d993f1a2be435630 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:25:27 +0300 Subject: [PATCH 09/97] only play mode tests --- .github/workflows/check_and_commit.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index eb1c950c4..a866b4fe7 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -14,7 +14,6 @@ jobs: - src/UnitySampleProject testMode: - PlayMode - - EditMode steps: - uses: actions/checkout@v4 with: From d902b3b108c4be78acf79a835189dc5feadfd120 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:32:31 +0300 Subject: [PATCH 10/97] reverted ssh setup method --- .github/workflows/check_and_commit.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index a866b4fe7..26f174d4c 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -18,12 +18,10 @@ jobs: - uses: actions/checkout@v4 with: lfs: true - - name: Set up SSH - run: | - mkdir -p ~/.ssh - echo "${{ secrets.DEPLOY_KEY }}" > ~/.ssh/id_rsa - chmod 600 ~/.ssh/id_rsa - ssh-keyscan github.com >> ~/.ssh/known_hosts + - name: Set up SSH keys + uses: webfactory/ssh-agent@v0.5.3 + with: + ssh-private-key: ${{ secrets.DEPLOY_KEY }} - name: Configure Git run: | git config user.name github-actions From c695eda014a03ace3eef294e4b242208c0bc7555 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:35:57 +0300 Subject: [PATCH 11/97] run workflow on dev not main! --- .github/workflows/pre_pull_request_checks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pre_pull_request_checks.yml b/.github/workflows/pre_pull_request_checks.yml index 221f52325..2acc1238a 100644 --- a/.github/workflows/pre_pull_request_checks.yml +++ b/.github/workflows/pre_pull_request_checks.yml @@ -21,6 +21,6 @@ jobs: unity_tests: name: Unity Tests if: ${{ github.base_ref == 'main' }} - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev needs: [ analyze_code ] secrets: inherit \ No newline at end of file From b1f7ba879e50fb2ace0c40bb72bd827eab9b108b Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:37:18 +0300 Subject: [PATCH 12/97] revert pre commit check branch and change post push action branch to dev --- .github/workflows/post_push_checks_and_commits.yml | 2 +- .github/workflows/pre_pull_request_checks.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 5cd430cf3..117a95ee0 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,5 +7,5 @@ on: jobs: check_and_commit: name: Check and Commit - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev secrets: inherit \ No newline at end of file diff --git a/.github/workflows/pre_pull_request_checks.yml b/.github/workflows/pre_pull_request_checks.yml index 2acc1238a..221f52325 100644 --- a/.github/workflows/pre_pull_request_checks.yml +++ b/.github/workflows/pre_pull_request_checks.yml @@ -21,6 +21,6 @@ jobs: unity_tests: name: Unity Tests if: ${{ github.base_ref == 'main' }} - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main needs: [ analyze_code ] secrets: inherit \ No newline at end of file From 74343478422019031ee2fff814224af1390de11e Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:50:39 +0300 Subject: [PATCH 13/97] added ssh key for checkout --- .github/workflows/check_and_commit.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 26f174d4c..6ed8e838b 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -18,6 +18,7 @@ jobs: - uses: actions/checkout@v4 with: lfs: true + ssh-key: ${{ secrets.DEPLOY_KEY }} - name: Set up SSH keys uses: webfactory/ssh-agent@v0.5.3 with: From ee9a9d9f9f4227545629d1a078b98f72e51b38bf Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 16:57:56 +0300 Subject: [PATCH 14/97] removed tests for faster iteration --- .github/workflows/check_and_commit.yml | 76 -------------------------- 1 file changed, 76 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 6ed8e838b..f975511f6 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -51,82 +51,6 @@ jobs: git add "$DESTINATION_PATH." -f done - - name: update submodules - # clone submodules - run: | - git submodule update --init - shell: bash - - name: Setup .NET - uses: actions/setup-dotnet@v3 - with: - dotnet-version: 6.0.x - - name: Publish Solution DLLs - run: | - dotnet publish src/ChainSafe.Gaming.Unity/ChainSafe.Gaming.Unity.csproj -c Release /property:Unity=true - - name: Move DLLs to Unity Packages - run: | - - export PUBLISH_PATH="${GITHUB_WORKSPACE}/${{ vars.PUBLISH_PATH }}" - - echo -e "DLLs Generated\n$(ls "$PUBLISH_PATH")" - - export PACKAGE_DEPENDENCIES=($(<${GITHUB_WORKSPACE}/scripts/data/published_dependencies.txt)) - - PACKAGE_DEPENDENCIES="${PACKAGE_DEPENDENCIES//$'\n'/ }" - PACKAGE_DEPENDENCIES="${PACKAGE_DEPENDENCIES//$'\r'/}" - - export DLL_META_FILE_TEMPLATE="${{ vars.DLL_META_FILE_TEMPLATE }}" - - for entry in "${PACKAGE_DEPENDENCIES[@]}" - do - IFS=':' read -ra dirs <<< "$entry" - export PACKAGE_LIB_PATH="${GITHUB_WORKSPACE}/${dirs[0]}" - - if [ -d "$PACKAGE_LIB_PATH" ]; then - rm "$PACKAGE_LIB_PATH"*.dll - else - mkdir -p "$PACKAGE_LIB_PATH" - fi - - IFS=';' read -ra dependencies <<< "${dirs[1]}" - - for dependency in "${dependencies[@]}" - do - cp "$PUBLISH_PATH/$dependency.dll" $PACKAGE_LIB_PATH - if ! [ -f "$PACKAGE_LIB_PATH$dependency.dll.meta" ]; then - echo -e "${DLL_META_FILE_TEMPLATE/"[[assetGuid]]"/"$(uuidgen | tr -d '-')"}" >> "$PACKAGE_LIB_PATH$dependency.dll.meta" - fi - done - - git add "$PACKAGE_LIB_PATH." -f - done - - uses: actions/cache@v2 - with: - path: ${{ matrix.projectPath }}/Library - key: Library-${{ matrix.projectPath }} - restore-keys: | - Library- - - uses: game-ci/unity-test-runner@v3 - id: tests - env: - UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} - with: - projectPath: ${{ matrix.projectPath }} - testMode: ${{ matrix.testMode }} - artifactsPath: ${{ matrix.testMode }}-artifacts - githubToken: ${{ secrets.GITHUB_TOKEN }} - checkName: ${{ matrix.testMode }} Test Results - coverageOptions: 'generateAdditionalMetrics;generateHtmlReport;generateBadgeReport;' - - uses: actions/upload-artifact@v3 - if: always() - with: - name: Test results for ${{ matrix.testMode }} - path: ${{ steps.tests.outputs.artifactsPath }} - - uses: actions/upload-artifact@v3 - if: always() - with: - name: Coverage results for ${{ matrix.testMode }} - path: ${{ steps.tests.outputs.coveragePath }} - name: Commit and Push changes if: ${{ github.ref_name == 'dev' }} run: | From 337a618e9ba8a692b16f26e46e161eeb556a606e Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:01:12 +0300 Subject: [PATCH 15/97] put back publish dlls --- .github/workflows/check_and_commit.yml | 49 ++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index f975511f6..209fd6d2d 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -51,6 +51,55 @@ jobs: git add "$DESTINATION_PATH." -f done + - name: update submodules + # clone submodules + run: | + git submodule update --init + shell: bash + - name: Setup .NET + uses: actions/setup-dotnet@v3 + with: + dotnet-version: 6.0.x + - name: Publish Solution DLLs + run: | + dotnet publish src/ChainSafe.Gaming.Unity/ChainSafe.Gaming.Unity.csproj -c Release /property:Unity=true + - name: Move DLLs to Unity Packages + run: | + + export PUBLISH_PATH="${GITHUB_WORKSPACE}/${{ vars.PUBLISH_PATH }}" + + echo -e "DLLs Generated\n$(ls "$PUBLISH_PATH")" + + export PACKAGE_DEPENDENCIES=($(<${GITHUB_WORKSPACE}/scripts/data/published_dependencies.txt)) + + PACKAGE_DEPENDENCIES="${PACKAGE_DEPENDENCIES//$'\n'/ }" + PACKAGE_DEPENDENCIES="${PACKAGE_DEPENDENCIES//$'\r'/}" + + export DLL_META_FILE_TEMPLATE="${{ vars.DLL_META_FILE_TEMPLATE }}" + + for entry in "${PACKAGE_DEPENDENCIES[@]}" + do + IFS=':' read -ra dirs <<< "$entry" + export PACKAGE_LIB_PATH="${GITHUB_WORKSPACE}/${dirs[0]}" + + if [ -d "$PACKAGE_LIB_PATH" ]; then + rm "$PACKAGE_LIB_PATH"*.dll + else + mkdir -p "$PACKAGE_LIB_PATH" + fi + + IFS=';' read -ra dependencies <<< "${dirs[1]}" + + for dependency in "${dependencies[@]}" + do + cp "$PUBLISH_PATH/$dependency.dll" $PACKAGE_LIB_PATH + if ! [ -f "$PACKAGE_LIB_PATH$dependency.dll.meta" ]; then + echo -e "${DLL_META_FILE_TEMPLATE/"[[assetGuid]]"/"$(uuidgen | tr -d '-')"}" >> "$PACKAGE_LIB_PATH$dependency.dll.meta" + fi + done + + git add "$PACKAGE_LIB_PATH." -f + done - name: Commit and Push changes if: ${{ github.ref_name == 'dev' }} run: | From 141b00db7e5a1d2a2aa2e510efa417b39b7bce2f Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:12:08 +0300 Subject: [PATCH 16/97] check if latest commit isn't from github actions to avoid recursive actions --- .github/workflows/post_push_checks_and_commits.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 117a95ee0..106fb4a66 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,5 +7,6 @@ on: jobs: check_and_commit: name: Check and Commit + if: ${{ git log -n 1 --pretty=format:%ae != 'github-actions@github.com' }} uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev secrets: inherit \ No newline at end of file From 1cc3a47a9c972017368eeb3e0f1bebf6bae8c94f Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:13:28 +0300 Subject: [PATCH 17/97] small syntax fix --- .github/workflows/post_push_checks_and_commits.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 106fb4a66..f971897d0 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,6 +7,6 @@ on: jobs: check_and_commit: name: Check and Commit - if: ${{ git log -n 1 --pretty=format:%ae != 'github-actions@github.com' }} + if: ${{ "$(git log -n 1 --pretty=format:%ae)" != "github-actions@github.com" }} uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev secrets: inherit \ No newline at end of file From 44438afbdf982128a917db759823707c4c0ffa4e Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:14:21 +0300 Subject: [PATCH 18/97] small syntax fix 2 --- .github/workflows/post_push_checks_and_commits.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index f971897d0..2216ad7df 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,6 +7,6 @@ on: jobs: check_and_commit: name: Check and Commit - if: ${{ "$(git log -n 1 --pretty=format:%ae)" != "github-actions@github.com" }} + if: ${{ '$(git log -n 1 --pretty=format:%ae)' != 'github-actions@github.com' }} uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev secrets: inherit \ No newline at end of file From bb84ab8e8a70281a494946be13e867616af30430 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:20:18 +0300 Subject: [PATCH 19/97] replace conditional fix for loop issue with commit skip ci keyword in message --- .github/workflows/check_and_commit.yml | 2 +- .github/workflows/post_push_checks_and_commits.yml | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index 209fd6d2d..ef32a1922 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -103,7 +103,7 @@ jobs: - name: Commit and Push changes if: ${{ github.ref_name == 'dev' }} run: | - git diff-index --cached --quiet HEAD || git commit -m 'Auto Commit + git diff-index --cached --quiet HEAD || git commit -m 'Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies' git push -f \ No newline at end of file diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 2216ad7df..117a95ee0 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,6 +7,5 @@ on: jobs: check_and_commit: name: Check and Commit - if: ${{ '$(git log -n 1 --pretty=format:%ae)' != 'github-actions@github.com' }} uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev secrets: inherit \ No newline at end of file From 2da4827f154054aadef61c80796250ef191a94c5 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:30:23 +0300 Subject: [PATCH 20/97] put tests back in --- .github/workflows/check_and_commit.yml | 27 ++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index ef32a1922..fcc4b624c 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -100,6 +100,33 @@ jobs: git add "$PACKAGE_LIB_PATH." -f done + - uses: actions/cache@v2 + with: + path: ${{ matrix.projectPath }}/Library + key: Library-${{ matrix.projectPath }} + restore-keys: | + Library- + - uses: game-ci/unity-test-runner@v3 + id: tests + env: + UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} + with: + projectPath: ${{ matrix.projectPath }} + testMode: ${{ matrix.testMode }} + artifactsPath: ${{ matrix.testMode }}-artifacts + githubToken: ${{ secrets.GITHUB_TOKEN }} + checkName: ${{ matrix.testMode }} Test Results + coverageOptions: 'generateAdditionalMetrics;generateHtmlReport;generateBadgeReport;' + - uses: actions/upload-artifact@v3 + if: always() + with: + name: Test results for ${{ matrix.testMode }} + path: ${{ steps.tests.outputs.artifactsPath }} + - uses: actions/upload-artifact@v3 + if: always() + with: + name: Coverage results for ${{ matrix.testMode }} + path: ${{ steps.tests.outputs.coveragePath }} - name: Commit and Push changes if: ${{ github.ref_name == 'dev' }} run: | From 7b2c8efc2cc955a9aead3df6acd22766ea107221 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:32:04 +0300 Subject: [PATCH 21/97] on push workflow call now back to from main --- .github/workflows/post_push_checks_and_commits.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 117a95ee0..5cd430cf3 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,5 +7,5 @@ on: jobs: check_and_commit: name: Check and Commit - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main secrets: inherit \ No newline at end of file From 8f2dc13432a22b578076e41361fd95dcb4d8ff61 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:35:54 +0300 Subject: [PATCH 22/97] test again --- .github/workflows/post_push_checks_and_commits.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 5cd430cf3..117a95ee0 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,5 +7,5 @@ on: jobs: check_and_commit: name: Check and Commit - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev secrets: inherit \ No newline at end of file From 9bce586ff5a888fab5c5f4b1b848dd6759d3e66c Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:44:01 +0300 Subject: [PATCH 23/97] reverted actor from bot to user and removed ssh setup --- .github/workflows/check_and_commit.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index fcc4b624c..a08bcbd7b 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -19,14 +19,12 @@ jobs: with: lfs: true ssh-key: ${{ secrets.DEPLOY_KEY }} - - name: Set up SSH keys - uses: webfactory/ssh-agent@v0.5.3 - with: - ssh-private-key: ${{ secrets.DEPLOY_KEY }} - name: Configure Git run: | - git config user.name github-actions - git config user.email github-actions@github.com + git config user.email $git_email + git config user.name "${{ github.actor }}" + env: + git_email: "${{ github.actor }}@users.noreply.github.com" - name: Duplicate Web3 Unity Samples run: | export SOURCE_PATH= From 76d9812088b58a8532feb3adb268b0aae3b54938 Mon Sep 17 00:00:00 2001 From: robGG1997 Date: Wed, 3 Apr 2024 17:50:56 +0300 Subject: [PATCH 24/97] revert post push workflow file target back to main --- .github/workflows/post_push_checks_and_commits.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/post_push_checks_and_commits.yml b/.github/workflows/post_push_checks_and_commits.yml index 117a95ee0..5cd430cf3 100644 --- a/.github/workflows/post_push_checks_and_commits.yml +++ b/.github/workflows/post_push_checks_and_commits.yml @@ -7,5 +7,5 @@ on: jobs: check_and_commit: name: Check and Commit - uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@dev + uses: ChainSafe/web3.unity/.github/workflows/check_and_commit.yml@main secrets: inherit \ No newline at end of file From e0e95b55f81c8728ebef5dbaf6ad93e36b0bca23 Mon Sep 17 00:00:00 2001 From: Snoppy Date: Tue, 9 Apr 2024 19:10:48 +0800 Subject: [PATCH 25/97] chore: fix typos (#918) Co-authored-by: Robel Getnet Geremew --- Modules.md | 2 +- .../Runtime/Plugins/Web3AuthSDK/Types/SecurePlayerPrefs.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Modules.md b/Modules.md index 23795984d..6efc83f0b 100644 --- a/Modules.md +++ b/Modules.md @@ -36,7 +36,7 @@ public static IWeb3ServiceCollection UseJsonRpcProvider(this IWeb3ServiceCollect serviceCollection.AssertServiceNotBound(); // register Service with IEvmProvider as a Contract Type - // and JsonRpcProvider as Implmentation Type + // and JsonRpcProvider as Implementation Type serviceCollection.AddSingleton(); return serviceCollection; } diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Types/SecurePlayerPrefs.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Types/SecurePlayerPrefs.cs index f69facb64..baca9729f 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Types/SecurePlayerPrefs.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Types/SecurePlayerPrefs.cs @@ -40,7 +40,7 @@ public class SecurePlayerPrefs /** - * Initializes the encryptor. If its the frist time, it will generate + * Initializes the encryptor. If its the first time, it will generate * a random 3 digit number and puts it between private key and its appendix. * If this was initialized on this device before, it will load it and create * the private key. From 138e54ed2e06b5d810d65014dc4acd57b8e8e197 Mon Sep 17 00:00:00 2001 From: rob1997 Date: Tue, 9 Apr 2024 11:14:37 +0000 Subject: [PATCH 26/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 32256 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 16384 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45568 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 222208 -> 222208 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 251f425f19315173fb3b4ba76ffa3dd9a3b956f3..95e2a8d4c47814a847f549a0c28cb8eb2e0ebe65 100644 GIT binary patch delta 238 zcmZqp!`SeLaY6@+KkwXo8+$6^1@<^jnSMa%tlxqUX@?)khrik^lHkIlk!p}?X_{ne znr2~`Y+-I>k(!j6W}1?em}ZukVriUeY?fq@l$>Z}ytyIAg^lHhwe8W#CyD|DVqSfI zr=xVpX}ih7Cw>uGUnXl5FHnFA7L`KcH@R0 z+`kw4te(o8{xiyI_GFFX1qx8XIoVJ_km}c5T<%q(-zVPm*nDF1i(&yb{}hH4h9rhm zAWUJf1j1wnLxwa4b0BR5glRw#BcPlqgBeiV5{ONKVyO%kV4e|>Gy%$+07a6)vL>6| It9CL20AOfNRR910 diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 0711c881d054573829f9f16d09dca3fbaf0fdf16..39c1461cd77a7c1b86054d8e19dcd0cb9b39ee26 100644 GIT binary patch delta 254 zcmZoT!_;twX+j4J%SYEc8+&~81x)XsIh%Szz;lt{#wJ;@LbuH?^o>|eQVmiqO_NMb z(<}^=EzFH9Qj=2COjD8))65c6ER9o*&5{g~k`s-L85md@8JHLtoERBwCr>mr*j#5C zmd0Xp&gstN8?yrh-uraMZ;A5poZT#Y!Ns|wXtKqe2@2?fAl3VfEQ=G*d|YGsd)xBO zFXkLz@lRziU`S=KWH4n&0%B8!GzJR>LxyA^Y0h8-BvXOnsX$Rvh7=$x5y&zFk|{tP Z#z1jnATJ4MLK09%B2c~Y=I;wRSpdM^Q0f2x delta 254 zcmZoT!_;twX+j6flUo0_jXgg40w2|eQc{vqQ&TK0 zlMU0%lZ}khER9l4%?vFKP18~>3@wceO^i%ZlPwKR7#LU?8JHLtoERBwCr>mr*j#5C zmd5hsA5X*N8?yrhUP?)PbG6*zzGR(9W$y_FtH~B~CMZA!uctr-fvOpv&22b%=;@*@ zl|?#FH@}#3fW<$BA%!7{Ar%Ny7%YJ>nZb}Djlmp98v$V&P{ar*XUbp(6t@IoQ=nKX Zg9Vsp1SCy>@+Lr$WU#Es=I;wRSpdMxQ7`}i diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 8dc0134ac305036aa9d6993d87a0be7a20a4b21e..4329ebaefa3e501671a248b7eafebc0e169bb3e1 100644 GIT binary patch delta 235 zcmZqBY0#O_!BQ$-^?zfJ2B(1WmaaFZ`RAOs@$5>vRkPk=^AS!-MvYX1R7=w&Q`0mH z!(8RAaLwgQVm{Bjd@e+|evAH`#2RoWdO-5dQh#?S*-_ zd?qElHQ{wHQkZ;%yGH>gcnK;9RBal=)Z}S6<=jPu^k=s=7x1XC`lm7&Fr+eAGMF+X z0kJ7V8iNIcAwx2dG-ogZlBq!PRG_FSLkf_U2xOT7$rPXtW1zS(ke38BAql7>5vbmH J^J76-764=ON@f56 delta 235 zcmZqBY0#O_!BUtJ@?v9;2B$!{#q-PZwR`;L9sMoj!F_$z<|CYvj2bB^NvWwRmX^te zY39jBMroEtsitOzmWHNjsTPKoMusLvCaKAmh9;9)xuaS5?75y!PT>v^5S;m}ebvLg z9vfnfG%z?BK5T*e|jDT{c3}!%aOCUA{ils7GfO$qh(gY}P0u)IG%bIL{EGWwY E0G%C3Pyhe` diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 404603c178fc92394a0827dc8e0750c3eff5268a..640484dc98946e16c4785bd140eef1c48f5ae1ae 100644 GIT binary patch delta 252 zcmZo@U~Fh$oY29-ryg>7V^4vOKx~W4z02=q9X1&i?%gbA(6gCGSD#fc)gaZps~nom?YHkYsLh`oVA`Vq6%;rO6$GjNl6tT0=^v4@y0c0S zoBx>3VD(RBFknb!uw*c0NCIM0hBO8X21ABqAZgBE1SC^|;;BGUQ-%~ED-p;t1Cl8~ a9mYU$V<0aHXhITDMR&c8D?%4eBVsOp({hDw{)Obp}ENHs{cG)*!! zO|vjewlFucNKHyjGfhcKOfySNu{2IKHcK){N=`H~o?Ng%b93;#qg*VWPDhqamRT7f zP@*K(qSE8zzw~wX-^EJbW=*bH*`@#$T>lg*2vn`+DfzWxD$|>%4rT41HY=_2V)ajD zFknb!uw*c0NCIM0hBO8X21ABqAZgBE1SC^|;;BGUQ-%~ED-p;t1Cl8~9mYU$V<0aH SXhITDM8^|uaEnE!)bH*)mF|Md^;xBtZY+&3KkVZ1%ayNWy5Y?w`wRX|vKQFIN8) zh7^V*hEyO-VXy?kWClZqGzN1ZZ3KjAKoKLLoGF7DP}~xTO@U&m3>ILX5s)+i%9{X1 OlEJbjn|H5wWdZ=vn^a@~ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index a4aabc26d55f638e6145d6ca6609d24f8430d516..2b21a314c53efeea5ede1083643d950317f3ecdf 100644 GIT binary patch delta 235 zcmZp0XmFU&!P0LPb8=(P89{+3g3cKX&z8Gv-(jf58qFcRIYUT~Nh8%D)zUP{)HKb) zFxkS~$Raf8PDtB3{&sOLZNnd7?I zyXC;lLxyA^Y0h8-BvXOnsX$Rvh7=$x5y&zFk|{tP#z1jnATJ4MLK09%B2c~Y JW_g*1%m6iwOQrw- delta 235 zcmZp0XmFU&!J^Op;o-)fGlBx|cW!wt5VFp3@_(nJUrf}mY|aqUW70@TNlHykv9wG! zOfye5GD@>FN;Nezv@|qLOSLexG%_?XGD%IgG&GsKPb7&Y_3?^dlT}0m1RmK;(b z*JI)@?eFX2)gvdjh|W-e3UUNO1wpFs-&yiO_(7UAt+)JQc*wKPpKHBGZH zOtvsLvPexzO*2hNN=!3LOtCahH8x8!NJ>sLGM;>dFNS5x|E*UhtMCU1oVxMvy+!S8 zuN8rlW+(R>U!2^+zfS=wsHFiF1gSom;^gZTZN2T0#BcY_Ndii2{;3QG45ODg~X delta 235 zcmZoLX)u}4!SY$C{l&(f3Lb&7YeH;$QV)1d{QM*H)Wu_+n?-m#7&TH-l2TJsEG?4_ z)6A2NjM6NPQccYaEe%c6QY{QEjSNkUOj46A4NWE=;frCp{n2IiWEK7Z0i%8DpT71j z^IXL(v*4Ow;r7Wb{QDH3f|XfNL6GVsS$&VoFV?K&Rm%|CoFt&c=AXil!jQy}3WO;P zmOz-yV91chU=E~>fG`axVg!^kWiSJZTLQ5uP%M?f0?ac4k|scT6QD>kSk`3oWief5 E06~^X`2YX_ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 97b29a0e103d02496cbf0de76c2dea1d980556b7..ba5a8c4fac38df40cef73878fab668784caba85e 100644 GIT binary patch delta 235 zcmZpOXo#55!6GGl_vpr+719FIGpg-aT|6CDHouLXt@ifHW*3=$W{p&XR7=w&Q`0mH z!(8RAaLwgQVm{Bjd@x<&U!1Pio&W`G`V*z$V@9^i_tU zo(q?^uJ*ovKzg!@;wA;C;LSv+AW*eMop1J2A7+zpYbxtZHh)tLV)IXBFknb!uw*c0 zNCIM0hBO8X21ABqAZgBE1SC^|;;BGUQ-%~ED-p;t1Cl8~9mYU$V<0aHXhITDM%KMM6$vJ4%X|rGy%$+07a6)vL>6SYh*G5 E0EX8{HUIzs diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 4f2415e9fc9a004d5e100b8995108b238823e412..4c3785b9019cc514d3ff7d96f7445088a6d0a34e 100644 GIT binary patch delta 245 zcmZoDX(*Y{!7|IsW7Ec-0!;xQu7$s+A9?CH>B{z|d-pPgH}hyYv*@K7q*|ILnVP0q z7$#eo8(E|#rKXvtBqgSqC8k&!ry83j86+hq8W}S%crY?JPnI`Om^@c+GfR$W>Ve52 z`T+vL?8~Yo6CZj_PfuVK*Ew)>@)rGR3Q$3=aHt?i^+nFLY?WO)OH$#eBKvmAf3YsTad z{Q!ag_kQ;#r#ZRIxa}UjJj#l9@)rGR3Q$3n8&E-@YKfD5N6gt)u2DRBK$yZ{353ZEh74&8=0MsA2-AQfMnE}J1~Z_zB@mke#Znn8z&s-$X#$it Q0g5DpWlc77n|);l0L3m%;s5{u diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index af61d1ad9187f539687bbb6ad4e404f575f8cd41..7404377557f6b91ced8e29867561ce9e97d97a08 100644 GIT binary patch delta 249 zcmZpOXo#55!SbX>;qk_v9vK1V_^4dYW(U_TO}(j6UlTuU){xC&)=M==wKPpKHBGZH zOtvsLvPexzO*2hNN=!3LOtCahH8x8!NJ>sLGG<_KVq~zLyiiGMvaF)O!) z?VWr_F+f1YnJ;+i#3ZjZH*-zi%=@r=vW-%g0#xu7Oc1ErHg7}Xed*VlFLb6ITfO<2 z(kvGLR0acvR0c~1Q-&lUHf2a-uwXD`NCuMT3`RgQ6)2tx6g6c?0kRT-EHfaP0@Ps) Y6gLL)l7J>80d*t-)f;a%^I><%z7y)NvWwRmX^te zY39jBMroEtsitOzmWHNjsTPKoMusLvCaKAmh9(RQPK*q;lNTyUO_o&@nEXoN9gB2H z-1EtI6axe$dlBFwU5(k!p}? zX_{nenr2~`Y+-I>k(!j6W}1?em}ZukVriUeY?fq@l$>Z}yxnIRqYMYj{WOb5({t7_ z1_(&)vwFVS&%|>R>#4^tCAZC*er6rx1O=#QWf4>qs6OeLjkx0S|LZnzS?`#l<14(lRBOsXy6i)?;nlhvSS&2ZF8IVi?>M#b1 Y8v}VsKogRHIue2EjkkZ_%*e?C06yMPasU7T delta 247 zcmZqpz}E1AZ9)gjo%^=`8hf_(Fn(Ych`#>uL~P&-ze%s(E?(cbMQeKx2jh&n8YwAB zsi`TJmdS=`=E+7zX_iK*re=nghNfw$7KWBah9*WPsmYdxCfj|MG0JeTbXluTnx3!G3`^_3guPOP73dpu-Yx5f6F^^7_! z{wWM83`q>BK$yZ{353ZEh74&8=0MsA2-AQfMnE}J1~Z_zB@mke#Znn8z&s-$X#$it R0g5DpWlgq!-^|F#0sv}EQl|g_ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 6c37eafc432a72c921afe84901cea7644b4b218e..e79f2d4900857ac031b7284332f477dc4026da8b 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6@63c7f5~dWP#WeAHNOC7EddSe;aHr@etwANHs{cG)*!! zO|vjewlFucNKHyjGfhcKOfySNu{2IKHcK){N=`H~-n=2eg_)%yIAr?dAHe|v7hM-$ zcx$oMVW+y$PVL|cUnWO{%u;{~eyD^B0#%EreBrdcUA02RD>NZ^vryIFl0yulI9FXKr$65o(dE-Wk>$wo$LmPVrArfI1bhL%Q#CPpTy$(DvDn>PfwFtao|Ha?#GBRD{y_{*`( z7K6K3f;%zpTdyBki?J* zgeeS`K$y&6$dJZh4y28MFbybT1e7ynFawHP0 z!Z6vw+{hv|DK*VBB`Gn@EHTB>IMvuJ$sj2?(a3o7ef67MEXpf1Cr#dC6d*AB?<+@P zT~(*8Y)q=_7@9UsmN9NofC@I1LIr`Uh2C3mw%rQ*bLv0)h1r`A7_VXVPh~J*NM*2O zFl9&rVpE1R1`7s5hGZaV&R_&2Q-R{CKv7eM6d)@R$T9Q7X MP`&Zy-IlIQ0LY|FcK`qY delta 236 zcmZpuXsDRb!E({fcIU<(4JCn+Pl1*Tt*yNmo_OHILX5s)+i%9{X1lEJbjn|E8f GG64V)R!W2b diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index fb483aa9991dd905ec184ba89a09bb29f04b0c6c..dc9da5eacd4c75bc9235bcb86c018e632419ee91 100644 GIT binary patch delta 237 zcmZpe!rU;0c|r$^>CUQy8+&q=@mnX)ojUWSp6Bdu8}_|Od%Kx^`5u0aRD)DY(V zGz-II3v(lj)TGoj)0CvdG_%AMOXE~yvm}G0_y#5jQazVjWy|HPkL7okSf1D%b1;F$Kb66NA(g?B z!IU8hh)o&N7%UhJ8IpmdIfD_9Oa+Rk0!2+3Qh=;PAj=F$rT}#q1I3Mjydfv@|j_F)~R_wlp-^{CZm?C(Cht&GyM22Lc41B)Gj& zaqD)P`-<_$9H}2)Ca*X!MFA>U6blsusg^pTcizOw&ed_f>x0cP2NPKQQy5Yhk{D8f zFonSq2$LBM8PXWcfwU12rU6BafO4h`WSFpI$JBk#+id z17^1EMh48Ev{?SK&ipxDBbqrtfcf3!jt9$r`Ye2~C}!!j80d*t-)f;cGPh@Un0sx(zS)>2} delta 265 zcmZoT!P{_xcR~lt8O1ky8hcuM7`OH?ag+(TcCGOFJ;lIr$^}l2uqkizw=XGUa@nbo zl9H5~nqq00Y?x-AY-E&XX_RVeW@u?>nwDx|XlZ0C}ISZGi5LX iidzD)DNrnx!2--P0+J>`c@v;WGFaARdwn8vBNG6PY*bVL From e579b89ae33105b1465a5ed4888306ca22e5f269 Mon Sep 17 00:00:00 2001 From: Robel Getnet Geremew Date: Fri, 12 Apr 2024 10:25:51 +0300 Subject: [PATCH 27/97] Metamask SDK fixes (#922) * Revert "automated duplicating imported samples modifications (#595)" This reverts commit a5558941827a91df51e2dd200648dcd13a1231c8. * made main package testable, revert due to a mistake * Sign verify and WebGL login logout issue fixed for metamask --------- Co-authored-by: robGG1997 --- .../Runtime/Scripts/EVM/Token/Evm.cs | 2 +- .../MetaMaskProvider.cs | 10 +++++++++- .../MetaMaskProviderExtensions.cs | 3 ++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs index 5fb439ab0..76ea40144 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs @@ -131,7 +131,7 @@ public static async Task SignVerify(Web3 web3, string message) var msgHash = new Sha3Keccack().CalculateHash(Encoding.UTF8.GetBytes(msg)); var signature = MessageSigner.ExtractEcdsaSignature(signatureString); var key = EthECKey.RecoverFromSignature(signature, msgHash); - return key.GetPublicAddress() == playerAccount; + return key.GetPublicAddress().ToLower() == playerAccount.ToLower(); } public static string EcdsaSignTransaction(string _privateKey, string _transaction, string _chainId) diff --git a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs index 53e60d95b..05898326c 100644 --- a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs +++ b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs @@ -1,6 +1,7 @@ using System.Threading.Tasks; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Analytics; +using ChainSafe.Gaming.Web3.Core.Logout; using ChainSafe.Gaming.Web3.Environment; using UnityEngine; using Object = UnityEngine.Object; @@ -10,7 +11,7 @@ namespace ChainSafe.Gaming.MetaMask.Unity /// /// Concrete implementation of . /// - public class MetaMaskProvider : IMetaMaskProvider + public class MetaMaskProvider : IMetaMaskProvider, ILogoutHandler { private readonly ILogWriter logWriter; @@ -86,5 +87,12 @@ public async Task Request(string method, params object[] parameters) { return await metaMaskController.Request(method, parameters); } + + public Task OnLogout() + { + Object.Destroy(metaMaskController.gameObject); + + return Task.CompletedTask; + } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs index 5d1575a42..0143af1ad 100644 --- a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs +++ b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs @@ -1,4 +1,5 @@ using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core.Logout; using Microsoft.Extensions.DependencyInjection; namespace ChainSafe.Gaming.MetaMask.Unity @@ -18,7 +19,7 @@ public static IWeb3ServiceCollection UseMetaMask(this IWeb3ServiceCollection col collection.AssertServiceNotBound(); // wallet - collection.AddSingleton(); + collection.AddSingleton(); return collection; } From 03270af6ba8a48021be4fac0cc8b3698918791e5 Mon Sep 17 00:00:00 2001 From: kantagara Date: Fri, 12 Apr 2024 07:29:02 +0000 Subject: [PATCH 28/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 32256 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 16384 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45568 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 222208 -> 222208 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 95e2a8d4c47814a847f549a0c28cb8eb2e0ebe65..2adb72150d911107d4ad70ddd0cacf37586d1b64 100644 GIT binary patch delta 235 zcmZqp!`SeLaY6^nL0i{@8+$6^1^zoQ{+4Ok>ATiHb7EMi*Zj>Q39dZqrskGO7M6*r z#>R#Qrb&h-W~PazsVOEF78b?^X32?0MyaN0MrM|q8**IOSiZOGeV=@yC_sRxCRWDt zPQBN5w#PfpP1x~uvPSU&1*l+^IaCm&T5*B02j960GEMEga7~l delta 235 zcmZqp!`SeLaY6@+KkwXo8+$6^1@<^jnSMa%tlxqUX@?)khrik^lHkgtZjfqenq+F4 zW?`6YVQyrRnv|Mmnv#^5W|o*@X`E_omSm8WoM>dcxgp1ejpc{6?a|36iUI^;UVVP2 zqjbn=yUD^Qei2z;CTkQgP=E>+l|uzVsu>EWW{LfcnzHoHJKfDMiiOyG4H!}xEE!B0 zl7QHhA&tR;!H^*tNSZSk0m)RLcq&lTlpzJkN(8dZfMg0#hcQsx7|2UvFaY9Ypr{dp K@n-j`oy-8qM^LK( diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 39c1461cd77a7c1b86054d8e19dcd0cb9b39ee26..8ca95249b41af713925edd94f278494150ec7451 100644 GIT binary patch delta 251 zcmZoT!_;twX+j4}V4L8#jXgg40*&9^9VmL+?zQ?Ef5q8ZbEj>7p>ND;Y-(Sfd7`Po<~q}` zG?uXYPu5JnF*`tD=|zcE+Y1BT=P&=cyj9y{+hmJ56BM9=-{YZzAl2#bmTRu6XY=h# zQN6$U#hgPdzNQT343-Q@3>H8#ks+1A7zhm+3>Zv-VulPR3}!%9A`quCqyTvqU}y}K aH)BW!iW>o8Do{2JNSiTOZvMWIlLY`kN>Z!< delta 251 zcmZoT!_;twX+j4J%SYEc8+&~81x)XsIh%Szz;lt{#wJ;@LbuH?^o?1K4N@&llT1z1 zEDVz^%#AEklTy=6Q<4(X%o0;9jZ=-yk_?iP6OD`+7+4t@m>3wG7#VCQPc${yTxS}V z#$t2M>CWUEvjYU)`*g-{iSqHB-7I^-#kr$svc;SU3h06$)%%Prixba$Tx0or+w#pX z<{V=2HDE|(uw*c0NCIM0hBO8X21ABqAZgBE1SC^|;;BGUQ-%~ED-p;t1Cl8~9mYU$ XV<0by!2pPpfucqX#+$z{Tu`9ZxX+y{*QOan3KP`fJcqh*ObAW!IB|~!2(Do zGNdvX1EC><0fQ+}%#gu^!3@Ys1maYN6d=z642^;EW(>(daU&p11vRkPk=^AS!dMsFwDMJd7l?Y^+0m&4g4r8FWF_4$UU;xC)Kv5$GR#Qrb&h-W~PazsVOEF78b?^X32?0MyaN0MrM`_3=WJ8){}FzBqkp)7T7$|D4L07 z%fj{7Cx0*r5YV-I$8f;omec-k%5!S|x~-oaVA`Vq6*Phg0#%2Lq||;$mT3KN*qq6* z`H$%=R$o&Fa|TO>BnAs0naGgJU<`zY37V^4vOKx~W4z02=q9X1&i?%gbA(6gCG*ML>mAl1?|$<#E> z!Z6vw+{hv|DK*VBB`Gn@EHTB>IMvuJ$sj2?(a4yA!GV#%dUB4I#N-3U0-GlqMKiJd zk-m0p@&}Uuftm|_5w)4C9GcDTx9>No&7T}#+M@s!6gUhO1gZX#dav#2ACa=Uvq}z| z|Cr8V^)+BfWw2y0Wk>>IQ-(AK3kE}mWFTqIU<4#nf#Rt^QB#H#AS)5bG6Rw+KpnMmH$6kW@UhY z|NR0pg}&w9^GnRWeym@8V{*;PHU+5QYk8<3NOf_iig@cWm1RW*t0rz%TIIv)Ysz5G zV9AigU;!i(8B!UHfzXh_fWZ_fX2@W|Ug7GlpcKxDgPh0%g;H Nv>Ait=H2UEnE(XsPYnP7 delta 239 zcmZp8!qo7DX+j4}4A-RojXeSr1%!>R&c8D?%4eBVsOp({hDw{)Obq8yH%PTKO)@o2 zvoK7yFgLPDO-fBOO-V{jGfPadG)^@(OEO4GPBb!}T(CfMbMU;QTr8eWN0v>NSs5Tu zq9oR$(&OX5^mX>%#Y*31O|DtlrT`UO{}d_+RITPI`L$vy)0?LbW$m9fE3NWj^)+Bf zWw2y0Wk>>IQ-(AK3kE}mWFTqIU<4#nf#Rt^QB#H#AS)5bG6Rw+Kpn<0fQ+}%#gu^!3@Ys1maYN6d=z642^;EW(>(daU&p11= z*}~k&A~h*B%`_z`G0iM7#nL#{*euB)DLK)|c=A4xB$h>W-sdK(hz1C#=Rfh8t9#1&Mb#>5vj}e|qq?cNWs-$uVydyR zp@C_Vp^2GkqG@W1iG_uQv4L4~qLERmX_}Fl<>VuLF)ZKCv`(I^!XF^8;-Jcr3in|D z&Rd&yIjZO$oZP~{PXQ{J4-*8bUaYdPu;u%a2~#A!YBwhdsId8(GMF=1G9)or0Les# zR0d-pG-NPfFa?SkGMF%!0a=MaoXU^_iO_(7UAt=R5wVqG)*!!O|vje zwlFucNKHyjGfhcKOfySNu{2IKHcK){N=`H~o_vHahGokCtyd9_NJ$f>i$w&3aoWx^kHecce^U%$^EG8KXRu^QVz2;` zi43U>#z1JuV8CDs6fP}~RzQ-QK+K-!GKa`SYJ GOlANqGfr&) delta 232 zcmZpOXo#55!6GGl_vpr+719FIGpg-aT|6CDHouLXt@ifHW*3x8-qNWTfKvp7JK;5`zH{Cj&)|7>qYh I*T`fB06>OGXaE2J diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 4c3785b9019cc514d3ff7d96f7445088a6d0a34e..8583a41391e4fdb827a68ec1009b6f8b29a0688b 100644 GIT binary patch delta 4801 zcmZu#3v?9K8UF8`*_qkd2b)bcBoe}g5Lglt67m2K`O6s^^xZ7reSy}Jb3)0xb7|L_0* z```CJvxziCnx0*!F4+8Ccl(AEw!3}rY&P9uY>=&>gs9v~<3p@DY!G|NYGvW%wrM1< zi9k*^at4S38AQx_KX4pcb&`5Tty#wwBEzeHw09{MKtLb zd<0V9Q9=Cx9;zUkZf0aF1GC&--tF@c^)Z5#($rIFm2``Gd1Ap9h!Dar5t9}Yz016( zu?od1L9N&H(MB~`h90t89wWC*4`EK!U@dgPI$>yNL(hVXrFc|`!KgcyPYo^+ZuJ5h z0D5%6vFci|5!~ff0!>!LDDJZi%=uAryvqA^x5T3+Z%zQlse$FzCBqk90Xvq37{*29 zrmt>Mau#S&)K3Ylj5_qmRcIeP>~h^!L5Zmep}@LLh&Ind&EP!L0t{j=X9ZV75?u+S z%)XB&W|%FaCbzdlMA6(zVKTi64`9<}eKdoIgxbZMMbYg`#7uKvtPY~AfwpHTG7bWe ziJ?4&;-dsH!aHgsuol|Po`D5hdIlzHDS?!Ga1nigCw)d!!=lAC zm`I{e?;-kJg>L2y`k)_?n5OjmXHF_cc?G=KnrY^{#0=tCi(O4^R)?7t#ym+TG#DMO zXLTk^je@p6*)_T%ak3`l3+fJgJbjBw8jZ1itZ9^|^*1zn%O>zii7!Z0rTz=GzhTl^ zdoR^ZqwK$OX!N=&;=DzpO^y0$U11%2!O;a=q6+lO#unP2F}?Jub2Tb#m--pfN7seV zMp^lQBIK{Bh9weXPcn^W+jiLRp|_19-A&&cx14TzTFYl{dd_j!?xr1(O}b(BQnBQY zUaCemv=!E>jCROauAB5B0(mLH zSnV*WR28F~W#qH|bk(q#{b?835c#@cA=vGxWiO#-sGt?$+cV` zNGWEAkx0v3Phw2*a!d{Agq!~0JS^6UX3LdfByJCx_HC|0DGPSW*yfsqwC$l*oRKC| zFq0C9qfQ4B%0pm2$qpfsV9BJgum=H%glk_=4QbL(j9zudMa{5QvWvi_>LpnFGY-A*(dfLv6%ir~|7kcUcl66(6?%>C zRn`Evn{Co(7ccdr&(vltM4dal3pNoue&>P0X1uyIN+dN5ts zt}+oVp0>o8h!#&@##oxGRPm8EKzMGZQhgSfxD;wjYOs#D`-UG;l4F{atW9}LNx5UU zAH&*;OQDmjLpgx8z0ICg7AyW9ChDb=Pqu=%=<5LTOST5<>;c6G0uF-xE2E1~~bUO%-Wov>ZCYnZ!8~ zDFO9- z$(AXTA+ONJAPb4mt!#@@L+jZ;%qM6t>sIQaIj1kBdMZU16KKBPOexZHfW#D;6WZAg zwv!G*vj7%ieH>M3kVQL6wN8xW`dEDDh_3S`P?WuqL|(9Cgmjkcku9@;DM zK6*^cpcCw>`5l^9bPvLbF1Aa2hpn*JU{Cy3SJ+@yrP_fVt_1coI-{hrG(;E(yx_=z zp7R1$OwX(L13z|_g;9teO_i#0WT|DWTxO$knT^V2HY%4nY^tchrb_?8Y@DlrjbzpO zW_Fn+D_elOjJ+&@9(No8t}{-s6YP?Cip`g^QYH0OQeP{h)uNTN6uyq$ea4zFj_+Bm zOqjKDKAPxjr^#z&YHg+}BZVKNp;&@BtP&_f_lH%a*$pIeL^DlvWRRVUS&5UF%-(19 zkT2maVP~njkTWrJcD7sU4+(vkZIyqJ)%5X=rAy!x`Cr89UT}?xxgtj8aPAh z=K;scIFCxKkQku_VFYcJWQ}a#*YpH5pGXa{Mygj8CYn!|I9}ociGIG1UQ@>cyVVF6 zoqLLlx_)&BaID0L#1|#LA(3p-DzT8}lWQ&Aq*3f)_6aNCE37XQeBqPk3goqGj%Hwn zvsp2ajySS8m$!nH!jR(>umSjd;7Hv%(n&Gi5_Xz^EMljLln$JX6mQ4I9)zSbjk1BI zIF1gQ4%tEFko!>uKF&JmF#V3cps}om1=*SV*dN)S**7eKXYy=5h0o(p^UZuKf0?Th zks0s4w&A0e-=#Zgz3v;8^d4W0T=~DgCtQ{{ap2(P;=>jFmp==HNbm7{gdu#j+_}#2 z4r^&*ed6=9lWnDg>@%w4ZffT?c9;`&{wuLYchyukJu*I6x1_eZsk+LVpL)P5>^In| z?{~mCX=<=0xU^|v#p0^k&QyO1vo@xU>b#Yu@tPj0m*uC zbz@UQaHX|&z=lpw#^MUnwLE_GK09q)$Q&^LJd2Bbi1l&1Q*1i(M%r!og%i1M^Ds&!)ns17P8{_+@TU{= zmc&JF=zh-JeZ3{NT;ZhQI~hh*XK?||7Z*9m+<4Uq!J3=Z_o0IfF21-SD2%8%o)pdN z7Tu#rVmB3Uq}AKvb=v%l$CKt4>iyQ~tT~JJ z>!iBHCG=I z9xB-UV!m+jFkASuYO=3q7Y-j;Ibvi*b$)(cZee9!K~Z5vVRco(h!G?5bBh*K3>#Km zxNum}NTP|1##{Yz{npl;&b+ssFZ`ZZNhx+M?ZC6H1kcbr8(o|y{CdVA#V=L-Lnq5> z9h&Yb)4kugE1sFMUD@}~l@B_fx4MRI9u`wRQ5jPr^z^ddEIIzlFBhJ@aO7&+s@VU7 zMDR^Q_P3`cvbIhuH^i*5EUD8y?0`~INW<}UQAs0!6;w_6xbrBN3ZcuxTet{P1)gfE o0vjRkeAtVS5-VsJ?rK;UqAa43osOcLjPDuK88_lf)}E{X2RR~RApigX delta 4704 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 ZjgXF~l0kdf6~<3b9du9nifu2}{{xNBX%hed diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 7404377557f6b91ced8e29867561ce9e97d97a08..94873d951b942bafe1ba5b82eaef4adf36a6aa98 100644 GIT binary patch delta 246 zcmZpOXo#55!E*M<=II-IdSnDTPy1Y2efzId1NT<*%KJ+-H*3gdGwYg~TP9gpCZ-x2 z8yc7<8Jd`xCYq+Em{?d?7#o-+CmI>0nx+|kMF+d<_))b2s4smYlIBmnGue;DX*+!{L0V*i=4k`##9UK<3M5(rYx`>IP)BDZO zl;*JbnlhL(STZCrSOCdHhExV)AT(q!U@!%W88VnKm;qUdK%B~u0_0hMp)pY2j3F5) VZUls>K-n}PZN^}^`MkOz3jl#gOTYjC delta 246 zcmZpOXo#55!SbX>;qk_v9vK1V_^4dYW(U_TO}(j6UlTuU){xC+)-_1AG)*!!O|vje zwlFucNKHyjGfhcKOfySNu{2IKHcK){N=`H~W?*n)WU!sQP)TaCtfIi=R|@Y~iu4!l zoqR_zKtRQrFL>(2B(F6$b4}jN`>=bmjZ&8aRPYr{5UAQVZ$sjJ>DQVsbfz6!z4@8a z92Q>#hExVi22+M4AU0)4W3XT_WJm^*<_tzaG8HJE3KTVENCC1Efh;p1nF7>d3=}s8 V@{$+~fH)Z_YQ$i?`MkOz3jm@GwT>9C_qI&g$+xv#?y+-aY$3`8lKQHR~Dm zSbR+x%o!{hk{B$2WFkWum&Oc>07tVAGAWk>;M1& delta 244 zcmZqpz}E1AZ9)gj3CT4LjXhg?7(cKJ)Qhf?_LmOv+OU4-of|sm>$dlBFwUH-Zjfqe znq+F4W?`6YVQyrRnv|Mmnv#^5W|o*@X`E_omSm8WoM>dc-Der23b>mbJj5i z2uSU-dcN7u#B&qtsmCuRx6PVo#y%@0h&3W<8@G zi?0DgDuX41DMJzvn=+&^STGneBm+rv1|uMu3KUNTikdQ{09lDZmKl&t0qQUYiW>uY VNel)+oD38-VldwReKR8`3jj0-P^bU^ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index e79f2d4900857ac031b7284332f477dc4026da8b..4d85c3661972d6694709c2f194583d3fbce98832 100644 GIT binary patch delta 235 zcmZqJ!`QHgaY6@+5&wkC8+&fJ3v{<0&A#qx=)E*n!h+fS`o+y99-R#Qrb&h-W~PazsVOEF78b?^X32?0MyaN0MrM|qHw3sav-AYI%$fWnI6z>E#Uuuc zW&fQgo{8JnI;}~3azw~11(;wUR1m0I#>4LBoV-@e>nB|f7H$>_J;35?%3#i5$&kcg z0VER{QW=ba(2&7^!4xQF$Y8=?24p1yaVkR!kY@pg#z1*9hGd|)5fG*VWz&GP8H43! I`KX7?0I};wB>(^b delta 235 zcmZqJ!`QHgaY6@63c7f5~dWP#WeAHNOC7EddSe;aHr@et)uH%PTKO)@o2 zvoK7yFgLPDO-fBOO-V{jGfPadG)^@(OEO4GPBb#!ydl7anWZ8)WcuVE!2tpnT^CLD`#evD0J diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 5bfcb4ba171e48ea2137087aaba9ecb142b51399..d33bc9b6edc94944fc5b2ed9c3fe540ca259a2a5 100644 GIT binary patch delta 233 zcmZpuXsDRb!Qv{K{dr@LhLXVhWydGHP-FF3rTi%4!+w?1n~x}cVNo|Vw@k9IOiVR4 zHZ(9zGBhzWO*BnSF|n|)Fg7qtPBbz~HBB=zv)p`N{U#U7j Hr7IHvGJs7_ delta 233 zcmZpuXsDRb!LsL**Ts!J8cG7|xF2&rD7o&x-R@=jf!9wzZ9by(g+<*U)zUP{)HKb) zFxkS~$RafXOcF1*_#g-uVeK!U`S=KWH4n& z0%B8!GzJR>LxyA^Y0h8-BvXOnsX$Rvh7=$x5y&zFk|{tP#z1jnATNo*0Em-;qDBnH Kn|E8fG64X{&P%NT diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index dc9da5eacd4c75bc9235bcb86c018e632419ee91..dbf5cff86ab1b7c237211b0a8346e0e057baedc2 100644 GIT binary patch delta 235 zcmZpe!rU;0c|r$EhULvC8+&q=3Cwy{zGN@=2B$7&9@hESR;}C2v3w7|x~aKkl7(er zsCUQy8+&q=30No3ojUWSp6Bdu8}_|Od)vL4WBDF_b%Rt((V zGz-II3v(lj)TGoj)0CvdG_%AMOXE~yvm}G0_y#5jQazVjWy|HPkL7okSf1D%b1;d;*MK3F!IHt0 zAqj|08PXUm7z`PbfuuQu5s*v;il+iaO&L;vtVAHo3`nK`br=K1je)!*1_K~Y28tRn L7;ol2_LUg``zco* diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 0dee892da56754a964c83fa9b4a4520ce68cb434..b1c34df5bec5a87512abd53404491e1a724fd4fd 100644 GIT binary patch delta 262 zcmZoT!P{_xcR~lt*WLD)8hcuM7`OH?ag+&UWcr1+Y|-*rvr<(hG4=WM?Mup-Tz9IQ znp-AWSSF?#8ygy!CK;NTnI@X1rkGe*SQs0aB_|pgrJAN0nORQ1Xv!=;y-6;o z%xv3@446M@u>|;@`!Zc4nmIrqf#1X8$^Tlum&Oc>07tVAGA kWk>qUVQ;p4%43d%)jf|&XG-Vc_UNDD|b^3Y( zX147{2F#zdSpKrk{5f4CnmIs#`Q7D?2g`o?EPSviX6dx#UDG?FnJW~aqIVRbq9FB_ zcdLFs(3R(ycT(fxc7+&bAy!`lhExVi22+M4AU0)4W3XT_WJm^*<_tzaG8HJE3KTVE mNCC1Efh;p1nF7>d3=}s8@{$+~fH)Z_YQ$i?y*`n-kqH2MOjz0g From d57532c448ec3440d782720ff802f00ed6e3a115 Mon Sep 17 00:00:00 2001 From: rob1997 Date: Tue, 23 Apr 2024 16:27:18 +0000 Subject: [PATCH 29/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 32256 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 16384 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45568 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 222208 -> 222208 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 2adb72150d911107d4ad70ddd0cacf37586d1b64..5313fa23402f085b778f7273a4579447d2ff94a0 100644 GIT binary patch delta 235 zcmZqp!`SeLaY6@6y7z?58+$6^1@=}izFzm--C?cn-CNHRf7NdmNpR&+H#0~xGfT8g zGEcHJH#9IcF-c1_GPX=fHc2*0GBC0*Gf1>dF-}U{+>qnK#^RK>dh6s9MF9enJ+e-1 z;a=$5_j-#_(3!JKCTkQgP=E^Bo`VX4R4>{2cWX1NUgEz0`TI7%C>CP#HDfSfNMkSq z!bAp3h9m}aAhraOhCp#s1`{Am1IidN7z0I97?OefWFRjIC~L%E0n}vx)|Ud5Phv>i J>|V8#8357~P$>Wa delta 235 zcmZqp!`SeLaY6^nL0i{@8+$6^1^zoQ{+4Ok>ATiHb7EMi*Zj>Q39dZqrskGO7M6*r z#>R#Qrb&h-W~PazsVOEF78b?^X32?0MyaN0MrM|q8**IOSiZOGeV=@yC_sRxCRWDt zPQBN5w#PfpP1x~uvPSU&1*l+^IaCm&T5*B02j960GEMEga7~l diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 8ca95249b41af713925edd94f278494150ec7451..1b7e4136d20f605c6c9f9ad1bc6f896760289def 100644 GIT binary patch delta 251 zcmZoT!_;twX+j4J(;>mujXgg40_j5hN_~eX`1E$9ywt2T{j~XozA>w@nL(PFS)yf< zd6K2Mp@FH1Nm`rBJa zSUz1-yFdBH>;Qq9&ul_E+^H^0yqq?fYwn*s*<#KF1*jlP3RDoNI{xurw^SjG2iI8I zZPGWtm~)85*Nnk{A&tQd2oo7B8Il;xf!GpA8Un>l8BBmM4Jc#8U ZpsW#t1yGj(SYHZIK8Yc5^Y?|EEC6h%Nv!|? delta 251 zcmZoT!_;twX+j4}V4L8#jXgg40*&9^9VmL+?zQ?Ef5q8ZbEj>7p>ND;Y-(Sfd7`Po<~q}` zG?uXYPu5JnF*`tD=|zcE+Y1BT=P&=cyj9y{+hmJ56BM9=-{YZzAl2#bmTRu6XY=h# zQN6$U#hgPdzNQT343-Q@3>H8#ks+1A7zhm+3>Zv-VulPR3}!%9A`quCqyTvqU}y}K aH)BW!iW>o8Do{2JNSiTOZvMWIlLY`kN>Z!< diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 01c7409d8636536e07ad0d10e6c37ee3ac9719e9..09444896cb776ff09ca1f8676356ceb519685029 100644 GIT binary patch delta 232 zcmZqBY0#O_!SYCtZO_IY4Nd{3Ef3#ZF<0~0^ZX<8rV_?gn~!ixF{+yxq?wr|S|*t% zS(+Ofn3|ZRB^nu9rX-sr8zmVSS(q6lTBaB$B~E7Lj%F#yY-*gG!W|%R`)!QW_p4hy z7Oq;8a*;3K_v9noJql1k2}P(NNOjRB^}@{mGM||}q_%A?;8A1sHDfSfNMkSq!bAp3 zh9m}aAhraOhCp#s1`{Am1IidN7z0I97?OefWFRjIC~L%E0n}vx)|Ud5Phv>i{8&(y F1pwp_NJanv delta 232 zcmZqBY0#O_!LoRTTu`9ZxX+y{*QOan3KP`fJcqh*ObAW!IB|~!2(Do zGNdvX1EC><0fQ+}%#gu^!3@Ys1maYN6d=z642^;EW(>(daU&p11dTd|&ZD<5|a-Y3v8Zf6wSnP z=!?zd$sbGt1d^tAR^L!PR#Qrb&h-W~PazsVOEF78b?^X32?0MyaN0MrM`_3=WJ8){}FzBqkp)7T7$|D4L07 z%fj{7Cx0*r5YV-I$8f;omec-k%5!S|x~-oaVA`Vq6*Phg0#%2Lq||;$mT3KN*qq6* z`H$%=R$o&Fa|TO>BnAs0naGgJU<`zY3 delta 239 zcmZp8!qo7DX+j6f8mYhEH}(ij6nMcAKdE<)lh5p%KN~~czw&HeGclY;-PGJN$-*)* z)!5k3z%MmH$6kW@UhY z|NR0pg}&w9^GnRWeym@8V{*;PHU+5QYk8<3NOf_iig@cWm1RW*t0rz%TIIv)Ysz5G zV9AigU;!i(8B!UHfzXh_fWZ_fX2@W|Ug7GlpcKxDgPh0%g;H Nv>Ait=H2UEnE(XsPYnP7 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index a7efc32092e06717c3472d9f8df70ffb221abb3d..ae05d428bb3173f9bf426123b567db44291885df 100644 GIT binary patch delta 232 zcmZp0XmFU&!LnIi{?o>uGlBxS{}-A56nN-1d-Cj_k5>}DZ_W_XXHqvaNHa4_v`jKj zvNSg|Ff}nrOEfaJOi4CLHcB!uvM@79v`jHhN}Rk;B#A{u=HcwgDxv`bdh55HQRNZVNHjUNSjKP2*jlm2E6B#TS zk{HZ^*b+z@0>w=kOn@*AC}YH63=~aaNCxtgfxIN3tPz6+P?rH%UkXq@i6L>byv##p E08KJSt^fc4 delta 232 zcmZp0XmFU&!LlXq^oET+X9NWvPFHwTS?uIDLFD1zy!I0kn=^#;nbb|qEt4!P6H|?i z4Gm0_3{A{T6HQZ7Oe`!cj1A0^6OD{gP1B6bEGO?1Nn){b;QTyUMKnMl-T&tP{5xE( zdq1nEZ*z2fGPy-`h5}UZC`=Hjx_G~ZLVU*EMH|gjX0O?7BQ}lI*ObAW!IB|~!2(Do zGNdvX1EC><0fQ+}%#gu^!3@Ys1maYN6d=z642^;EW(>(daU&p113Lb$=HJ90BIs!d=PJCBQ+kdNNvj}e|qq>O0r3^QIdg?g_%L3Wr}f9;^ZTIF)X#`_#RAF;SUg)JfHRM%0H_d z8x3FId1jctX>tqyJ_V>?B1{mZ`lNjM+LI?&RPLEJTYhtrfC`(h8G`{s8iN@SCNfwu zBr%u+u_cf+1d5w7m;hlKP{xSC7$};;kPPG}19?e6StAAupe_Tjz7(K*5<}wV%VN6B E0KNxH?*IS* delta 232 zcmZoLX)u}4!LrLdWWvUt3LXIlk(-Ou-nTo>t9#1&Mb#>5vj}e|qq?cNWs-$uVydyR zp@C_Vp^2GkqG@W1iG_uQv4L4~qLERmX_}Fl<>VuLF)ZKCv`(I^!XF^8;-Jcr3in|D z&Rd&yIjZO$oZP~{PXQ{J4-*8bUaYdPu;u%a2~#A!YBwhdsId8(GMF=1G9)or0Les# zR0d-pG-NPfFa?SkGMF%!0a=MaoXU^_H9L24H9_NJ$f>i$w&3aoWx^kHecce^U%$^EG8KXRu^QVz2;` zi43U>#z1JuV8CDs6fP}~RzQ-QK+K-!GKa`SYJ GOlANqGfr&) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 8583a41391e4fdb827a68ec1009b6f8b29a0688b..cf0d659f58889271e45735513fa5ffb222f43730 100644 GIT binary patch delta 232 zcmZoDX(*Y{!SXKn!|{zhA({ev&n?i^?_uzszS{cS-QTZYZ2q9>!J=+vkY;9%N= zZ~cS#x|Ok9k0;O3pQZp6w9|(Qf>iS-wZ-uXPxWwQOI@)!$RLN+*Nnk{A&tQd2oo7B z8Il;xf!GpA8Un>l8BBmM4Jc#8UpsW#t1yGj(SYHZIK8Yc5Gq>4S FW&m(XO1}UA delta 232 zcmZoDX(*Y{!IC`f`@fAnA({gFk|b`gzn$jPn7glD^;T8x<`0@4Eb6A_mPrv}s$k#N?P=Fyz&&1_&5!^XzToSGF(+*CPZIrqcV1gM?L7?jJM~<^TT$mo?`Ne&u!RBX5 zb69-M7z`NF7|eh$k-?H7iNPF*ErFyVP~4Qk1PIfBGDZx>K+zP2WFS8o$V&ps8ZlS^ Ubs2#5r2yrV7!o(1S2tt<00clx4gdfE delta 246 zcmZpOXo#55!E*M<=II-IdSnDTPy1Y2efzId1NT<*%KJ+-H*3gdGwYg~TP9gpCZ-x2 z8yc7<8Jd`xCYq+Em{?d?7#o-+CmI>0nx+|kMF+d<_))b2s4smYlIBmnGue;DX*+!{L0V*i=4k`##9UK<3M5(rYx`>IP)BDZO zl;*JbnlhL(STZCrSOCdHhExV)AT(q!U@!%W88VnKm;qUdK%B~u0_0hMp)pY2j3F5) VZUls>K-n}PZN^}^`MkOz3jl#gOTYjC diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 97e594495bf623581a3003418d23129a3e6f84c6..46863417c2eced744ab9390bf41c1b3d8a57b193 100644 GIT binary patch delta 244 zcmZqpz}E1AZ9)f&u}|#s#-6P`j33wqjP{gnci`XXwsF6(Zi&~k%iDW67-!B^H#0~x zGfT8gGEcHJH#9IcF-c1_GPX=fHc2*0GBC0*Gf1>dF-}U{?z4Roy%m4?SI(S%W*y@M1*j_o0O~RT S>q`O3Cov>$|Gt@#lLY{A3r!*b delta 244 zcmZqpz}E1AZ9)gjrKdNZHTG=nVf?@@Ftd5)!4D2+-8XDs-rTbBiRkto4#t^t)lJPU zlPoL~Q;m%c4NQ{^P0UOaO;b}$EG#UH4a|}gjf_%F(~Qh4xBDz(l;L1$xSIZNdd@n= z0D&8kb{oZ*4?C@wbM`*HVQt>@GwT>9C_qI&g$+xv#?y+-aY$3`8lKQHR~Dm zSbR+x%o!{hk{B$2WFkWum&Oc>07tVAGAWk>;M1& diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 4d85c3661972d6694709c2f194583d3fbce98832..1871851f39dba31a30732274dc7f09b3f2dd08c4 100644 GIT binary patch delta 235 zcmZqJ!`QHgaY6^n>uIw;ZS1+>F2K?{`FG5NPtFq}7P?$qny;Kx_#l4T0jO3?@LB29z;kFb0aIFeC%{$v|EbP}YdS0;tOXtS<#9pTv;3 JSw89^GXT%HOf&!h delta 235 zcmZqJ!`QHgaY6@+5&wkC8+&fJ3v{<0&A#qx=)E*n!h+fS`o+y99-R#Qrb&h-W~PazsVOEF78b?^X32?0MyaN0MrM|qHw3sav-AYI%$fWnI6z>E#Uuuc zW&fQgo{8JnI;}~3azw~11(;wUR1m0I#>4LBoV-@e>nB|f7H$>_J;35?%3#i5$&kcg z0VER{QW=ba(2&7^!4xQF$Y8=?24p1yaVkR!kY@pg#z1*9hGd|)5fG*VWz&GP8H43! I`KX7?0I};wB>(^b diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index d33bc9b6edc94944fc5b2ed9c3fe540ca259a2a5..a0478fe9c89fb83cb290875b12d57b372b2541d8 100644 GIT binary patch delta 233 zcmZpuXsDRb!E$?A--V4m8cG6NHWe0J?|$LB`*G0LY2CszHXl*?!lG_wkY;9 Hr7IHvGJs7_ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index dbf5cff86ab1b7c237211b0a8346e0e057baedc2..c958eb571838e65c68b56033859e39b88bf1fb0d 100644 GIT binary patch delta 235 zcmZpe!rU;0c|r$E^tald8+&q=3EW&g`}eGyTCUw8&NEmxyx6>%WBDF_bu)uBGqXg? zB=aOob3+4D6O*(=BV)^yWRqm0Bm*N0GlN9S6yv1C&9ApbaIJb@GY>Qxu?r_B>EQkm{TRx0?Qbw@lP;n98|1=3o+wuNi{@LmGn_ z5GFEMG9)pW1F9cv7aZ(mZz>BbS*Ncz zU}oEHWWfAMi$(KE_L}J$(aZq?Z`StCsaN!KX^75QJ$*+||MZS%<_ZOZU-6;o z%xv3@446M@u>|;@`!Zc4nmIrqf#1X8$^Tlum&Oc>07tVAGA kWk> Date: Mon, 29 Apr 2024 17:06:17 +0100 Subject: [PATCH 30/97] Package built-in dependencies fix (#925) * Package built-in dependencies fix * Added polling and timeout to GetTransaction method Introduced DelayUtil --------- Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: Robel Getnet Geremew --- scripts/data/published_dependencies.txt | 4 +- .../WalletConnectTransactionExecutor.cs | 2 - src/ChainSafe.Gaming/Web3/Core/DelayUtil.cs | 26 +++++++++++++ .../Web3/Core/Evm/RpcProviderExtensions.cs | 38 +++++++++++++------ 4 files changed, 54 insertions(+), 16 deletions(-) create mode 100644 src/ChainSafe.Gaming/Web3/Core/DelayUtil.cs diff --git a/scripts/data/published_dependencies.txt b/scripts/data/published_dependencies.txt index 1973fd315..a12f33d70 100644 --- a/scripts/data/published_dependencies.txt +++ b/scripts/data/published_dependencies.txt @@ -1,2 +1,2 @@ -Packages/io.chainsafe.web3-unity/Runtime/Libraries/:ADRaffy.ENSNormalize;Nethereum.Model;BouncyCastle.Crypto;Nethereum.RLP;ChainSafe.Gaming.Debugging;Nethereum.RPC;ChainSafe.Gaming.Gelato;ChainSafe.Gaming.SygmaClient;Nethereum.Signer.EIP712;ChainSafe.Gaming.InProcessSigner;Nethereum.Signer;ChainSafe.Gaming.InProcessTransactionExecutor;Nethereum.Util;ChainSafe.Gaming.Unity.ThirdParty;Nethereum.Web3;ChainSafe.Gaming.Unity;System.Buffers;ChainSafe.Gaming.WalletConnect;System.Memory;ChainSafe.Gaming;System.Numerics.Vectors;Microsoft.Bcl.AsyncInterfaces;System.Reactive;Microsoft.Extensions.DependencyInjection.Abstractions;System.Runtime.CompilerServices.Unsafe;Microsoft.Extensions.DependencyInjection;System.Runtime.InteropServices.WindowsRuntime;Microsoft.Extensions.Logging.Abstractions;System.Security.Cryptography.Cng;Microsoft.IdentityModel.Abstractions;System.Text.Encodings.Web;Microsoft.IdentityModel.Logging;System.Text.Json;Microsoft.IdentityModel.Tokens;System.Threading.Channels;NBitcoin;System.Threading.Tasks.Extensions;Nethereum.ABI;WalletConnectSharp.Auth;Nethereum.Accounts;WalletConnectSharp.Common;WalletConnectSharp.Events;Nethereum.BlockchainProcessing;WalletConnectSharp.Core;Nethereum.Contracts;WalletConnectSharp.Crypto;Nethereum.Hex;Nethereum.JsonRpc.Client;WalletConnectSharp.Network.Websocket;Nethereum.JsonRpc.IpcClient;WalletConnectSharp.Network;Nethereum.JsonRpc.RpcClient;WalletConnectSharp.Sign;Nethereum.KeyStore;WalletConnectSharp.Storage;Nethereum.Merkle.Patricia;WalletConnectSharp.Web3Wallet;Nethereum.Merkle;Websocket.Client;Nethereum.Metamask;Nethereum.Siwe.Core;Nethereum.Siwe;Nethereum.UI;Nethereum.Unity.Metamask;Nethereum.Unity;ChainSafe.Gaming.MetaMask;ChainSafe.Gaming.MetaMask.Unity;ChainSafe.Gaming.InProcessTransactionExecutor.Unity -Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/:Chainsafe.Gaming.Chainlink;ChainSafe.Gaming.Lootboxes.Chainlink;ChainSafe.Gaming.Marketplace \ No newline at end of file +Packages/io.chainsafe.web3-unity/Runtime/Libraries/:ADRaffy.ENSNormalize;Nethereum.Model;BouncyCastle.Crypto;Nethereum.RLP;ChainSafe.Gaming.Debugging;Nethereum.RPC;ChainSafe.Gaming.Gelato;ChainSafe.Gaming.SygmaClient;Nethereum.Signer.EIP712;ChainSafe.Gaming.InProcessSigner;Nethereum.Signer;ChainSafe.Gaming.InProcessTransactionExecutor;Nethereum.Util;ChainSafe.Gaming.Unity.ThirdParty;Nethereum.Web3;ChainSafe.Gaming.Unity;System.Buffers;ChainSafe.Gaming.WalletConnect;System.Memory;ChainSafe.Gaming;System.Numerics.Vectors;Microsoft.Bcl.AsyncInterfaces;System.Reactive;Microsoft.Extensions.DependencyInjection.Abstractions;System.Runtime.CompilerServices.Unsafe;Microsoft.Extensions.DependencyInjection;System.Runtime.InteropServices.WindowsRuntime;Microsoft.Extensions.Logging.Abstractions;System.Security.Cryptography.Cng;Microsoft.IdentityModel.Abstractions;System.Text.Encodings.Web;Microsoft.IdentityModel.Logging;System.Text.Json;Microsoft.IdentityModel.Tokens;System.Threading.Channels;NBitcoin;System.Threading.Tasks.Extensions;Nethereum.ABI;WalletConnectSharp.Auth;Nethereum.Accounts;WalletConnectSharp.Common;WalletConnectSharp.Events;Nethereum.BlockchainProcessing;WalletConnectSharp.Core;Nethereum.Contracts;WalletConnectSharp.Crypto;Nethereum.Hex;Nethereum.JsonRpc.Client;WalletConnectSharp.Network.Websocket;Nethereum.JsonRpc.IpcClient;WalletConnectSharp.Network;Nethereum.JsonRpc.RpcClient;WalletConnectSharp.Sign;Nethereum.KeyStore;WalletConnectSharp.Storage;Nethereum.Merkle.Patricia;WalletConnectSharp.Web3Wallet;Nethereum.Merkle;Websocket.Client;Nethereum.Metamask;Nethereum.Siwe.Core;Nethereum.Siwe;Nethereum.UI;Nethereum.Unity.Metamask;Nethereum.Unity;ChainSafe.Gaming.MetaMask;ChainSafe.Gaming.MetaMask.Unity;ChainSafe.Gaming.InProcessTransactionExecutor.Unity;ChainSafe.Gaming.Marketplace +Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/:Chainsafe.Gaming.Chainlink;ChainSafe.Gaming.Lootboxes.Chainlink \ No newline at end of file diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs index ae2f9f7f5..ca0adfa45 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs @@ -54,8 +54,6 @@ public async Task SendTransaction(TransactionRequest transa WCLogger.Log($"Transaction executed successfully. Hash: {hash}."); - await Task.Delay(TimeSpan.FromSeconds(1)); // hack: rpcProvider.GetTransaction can't find transaction by hash - return await rpcProvider.GetTransaction(hash); bool ValidateResponseHash(string hash) diff --git a/src/ChainSafe.Gaming/Web3/Core/DelayUtil.cs b/src/ChainSafe.Gaming/Web3/Core/DelayUtil.cs new file mode 100644 index 000000000..8b8da91ad --- /dev/null +++ b/src/ChainSafe.Gaming/Web3/Core/DelayUtil.cs @@ -0,0 +1,26 @@ +using System; +using System.Threading.Tasks; + +namespace ChainSafe.Gaming.Web3.Core +{ + /// + /// Utility class for delay operations. + /// + public static class DelayUtil + { + /// + /// Replicates Task.Delay behaviour. Works on a single-threaded platforms like Unity WebGL. + /// + /// The time to wait. + /// A representing the asynchronous operation. + public static async Task SafeDelay(TimeSpan delay) // TODO: use default method if platform supports multithreading + { + var start = DateTime.UtcNow; + + while (DateTime.UtcNow - start < delay) + { + await Task.Yield(); + } + } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs index 971c4963c..8af9faa80 100644 --- a/src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs @@ -1,10 +1,9 @@ using System; -using System.Collections.Generic; using System.Numerics; -using System.Runtime.CompilerServices; using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Transactions; using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Hex.HexTypes; using Nethereum.RPC.Eth.DTOs; @@ -289,38 +288,53 @@ public static async Task EstimateGas(this IRpcProvider provider, /// /// The RPC provider. /// The hash of the transaction to retrieve. + /// (Optional) The time after which the method will fail if we can't find the transaction by hash. 15 seconds by default. /// /// A representing the asynchronous operation. /// The task result contains the transaction details as a . /// - public static async Task GetTransaction(this IRpcProvider provider, string transactionHash) + public static async Task GetTransaction(this IRpcProvider provider, string transactionHash, TimeSpan? timeOut = null) { + timeOut ??= TimeSpan.FromSeconds(15); + + // Poll transaction till it's available on the given node + TransactionResponse transaction = null; var parameters = new object[] { transactionHash }; + var pollStartTime = DateTime.UtcNow; + while (DateTime.UtcNow - pollStartTime < timeOut) + { + transaction = await provider.Perform("eth_getTransactionByHash", parameters); - var result = await provider.Perform("eth_getTransactionByHash", parameters); + if (transaction != null) + { + break; + } - if (result == null) + await DelayUtil.SafeDelay(TimeSpan.FromSeconds(1)); + } + + if (transaction == null) { - throw new Web3Exception("transaction not found"); + throw new Web3Exception("Transaction not found."); } - if (result.BlockNumber == null) + if (transaction.BlockNumber == null) { - result.Confirmations = 0; + transaction.Confirmations = 0; } - else if (result.Confirmations == null) + else if (transaction.Confirmations == null) { var blockNumber = await provider.GetBlockNumber(); - var confirmations = (blockNumber.ToUlong() - result.BlockNumber.ToUlong()) + 1; + var confirmations = (blockNumber.ToUlong() - transaction.BlockNumber.ToUlong()) + 1; if (confirmations <= 0) { confirmations = 1; } - result.Confirmations = confirmations; + transaction.Confirmations = confirmations; } - return result; + return transaction; } /// From 665fd5d89d5e5a677dc763b4d4f1e0d2588545db Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe Date: Mon, 29 Apr 2024 16:12:08 +0000 Subject: [PATCH 31/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 32256 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 16384 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45568 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.Marketplace.dll.meta | 34 ++++++++++++++++++ .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 222208 -> 223232 bytes 16 files changed, 34 insertions(+) rename Packages/{io.chainsafe.web3-unity.lootboxes/Chainlink => io.chainsafe.web3-unity}/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll (98%) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 5313fa23402f085b778f7273a4579447d2ff94a0..67470df51b6424c0a3cded72aeb14827d1761fa4 100644 GIT binary patch delta 238 zcmZqp!`SeLaY6@+&g*&8HuhA+3ow1!7OFONmET0B#c$eo{N~*(lHkIlVU}WMX>Mkj znr32YY?NYQY+_=XVrZFYXl`U_W^R&bkZfR)Vwq-QvbiD0g^lI^Nv?I1PZR|R>^Hm8 zbk=gA_msnT%eCsdw@=n6UZ4OKd<_!>seX5Q^}4s27WpslKQZ3?qF8{<-;5!J!HmI@ z!5mDcGNdt>0C~m?MnG{3AZ-GKra-nKP&5%pngeAlfojcx;)x6f49P%j0hG4{>onQy IUbT}M03{|+VE_OC delta 238 zcmZqp!`SeLaY6@6y7z?58+$6^1@=}izFzm--C?cn-CNHRf7NdmNpRuONHsG^Gc!xH zOfpZhG&eLbH8Dv`G%~hKNj6C~N-{9AFf&NBOfgPM+}x1k!p7p1w|eX36GZ_6lRdId zZQ)+%+xL2lQP7#QOD1a+FHnFA+Ma_7f>bZr`FCqGt6t*1|M~kizbF=9^G{_kV=!Py z1CnM8i42wuNet#dYzZU{f#RkNCP0`5lrds328yOIBm?=$Kwc71)`-CZtQ({+1t_1y Lkhs~sY9})Q+yYSZ diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 09444896cb776ff09ca1f8676356ceb519685029..804587137eac5d6717577710e04445a878313bae 100644 GIT binary patch delta 235 zcmZqBY0#O_!E%0`^~a4p8k_?AJ(wm-{mXV)Sd}0%-(iyL<|CYvj2dPsW|rn=mZ@nb zmc~XY7RDwfrYVM&iH7DzmS*NAi3Z6A7Acl#CMJ_vxuaPo6rP+hIfXkwz_u>>i>=Z| zpLypGlwR-dx0rl{yGH>kIOiTz5U5(htmxx@rETd)!vo7~Hy7}zu=<-Zq%fEs8km}xq$L^|Tc#wNBpW3e7+IJZBwD5zCnZj1<&I`4$ZTqyoWdO-aQkhH)c31f zJr=H7lX8(S;P>Ps+&v0VK?y~uAV_u5CiTM1|1zJMJ*2j6F5ppN^-pCmV=!Py1CnM8 zi42wuNet#dYzZU{f#RkNCP0`5lrds328yOIBm?=$Kwc71)`-CZtQ({+1t_1ykhuA= Hpezdj+R;f6 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 687003bd7eff0ad6067216dd9ae394b51712e78e..82cc508b74f018d1231f74822d41eb738813ce51 100644 GIT binary patch delta 4452 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 delta 4427 zcma)A3vgA{6g)mmFA_1wEnRdjAmMI_^RHT(6wc1+6={`FbVVLPm-{h>b_uBic zv+p_gp8H-B36V&M4Ug)+`NdClu8oSDJ9pj^`eqW)2>Q$da`n#a!8*Po@BUZlES%Agc&?D;E%McjZX8NjhR!Pm4UFiDI|Hyhq&T?l7kb z%l+0YORBe)>VPhnMhM*-tOnt8AG3y+TKCQd7WC5vHGn^2EgD1Jl4M&B{&rcC8k4e2 z4U!Lr2qU)pnU#ATP*={SU^#UwsaXQJmijCzhdNL)lF7>Msj&-$2=>hJP1ZxBC|Ym} z=|7#9{`P>Lw~`)~HMx|U^ANCs`U09TXVT((+vd+*q*PuSNXtShIa4O#coYZ|mot7! z!#L_cCI7g)I-DU{?jhJcTxq!lBaZPon$?;>5JwM>bTzfg$ z`N6w2KaN<90TXjLr--M|G!K!)Jvij^W0h7&`Hew^&zs9hr=BxYd7AZ5lWnz>{{3t> z>$_|dhS(?kcu_P4LYRtp7hS;_tA^zE1|15tShq?O4{(h`Xfi*>`)`#Frq~6RgJu5X zJ_k#z0=mjwK_%S>g@~t4|Wl=$5M<=m4=oCxE2ZI`c_ z?0(Onby6N}B*hA7yQ<07i3#Ie;MG7qGh!UqJsvG z^efMYboM^*ybNd*t8ufFhs9^meD_gNgPCh*Z!ogiJ4|KXhg{^a_kH$;A&Z~KOO<8HSBSsO_nKy+TRThjYW7i>acuXU zpl}rqToE`-w&G1htv`{(KcIxFuz>I)-oGM~Bsix(|8mX;SLO7pot5pL&ZQ#aT!lB; zS*o#L;!^m^=*j;PeckM%BF@T>2>UPQ46dF=vp?}Jsb9Y-ixv~BG8*Hy+VN?ZT>En> zV8M6ZzsZY#=c(AwzVp5%?u%vJW< z;8@*{5uVo-G~h?orI;Kh1E}@9tuh=(01f?aMkB375EH-i#_K`MVz1BlrJau?+{xbK z_{O+dPr?Gv`)gpT9>UuGOwk-v&&URPH2{60fNr`lwtAk5MNm8Rax5M}ljo|SgUJP# zgAQ6fPsNf^Fzj+H8C9OAVk!9MidYJQ-|Np*u~anCJL6I@shH(?DwY;UdEwwfz%_(|&X7jij}pQ#su}AT8yF`tPG^iU zwh;=t(;Dqmyi7O{7oe8m0@Nl(go;*+A-;Sp-0gbkDvgfy4ahAAe6nG|NCd>}>n5spGV)KPw@qkLRV7jIZ!AST|l zY|$njmTBTAA}gs>?8FkYM&x3&9iJ+OBT3E?L3}ChBAdR>h}GhFV5R7!+QT&QI%^F@ zGlP#2s%t8zVN=Cu9+kqQM)Ro6BFQ=|#&Pr}j^5<)7tQmec{K1JAxIN4g*8)@W?ZDO z=rP=B4wI|Jczc*UhJ|Jr$MAJvq@0Xk()Dt)=n>Q8tt{Qj(yc6=EgrNJawmzdqEYMY zb%ayRjj~s)3jRv|UNnh)vYl6=omXfvFa8lRQwyV=S1Z04-R5IrH#99pJ1d^G25U#e zeZCP|J1?V<`(+I=d*w}9MAif+6K)bSD5_4&c0SzOc?(vHjHH!XiBPLpBGj6dh)lW< zO88;Uqi6J-Rz%0fJiUmX$$JS0VyRvfr`OaLa<0QR!ZQ4ga1;VY5ym2e@Q27FoW%T0 z!ZH#%YK=t;35}&AYMx%t(k;xiFw=s&@rX5>`4!BsV15PhyR4PWZ^IDWWo<)T)wP4E z{aA$QMlTOI$l-&`A7bod{xtKanfZuO6Y81_p>(puB5W~on8{MNyg?q> zr9Gg2p2w_m(r_cL{W{PgysJKU3l@`Suw?%N zFVxIT!|g4eD7xL`l036hH`NY}DVdekt)`4RiEesjQ6F_Ov;x@FLPh~COt-tQ+J%_Vr0(?1)JD_)6-HN(;eFJdolGsC+EI!ft#F$whJ>4czIy4O^A3!Ev@4_P zjt#dz=WeW6Tj-JLmq^l1Ub<&kIG zp{i9{<7`x-7;^|K5u-0Y%@|3ony`fU3VP|6Q#6KBdPh~Gm7a@oYNeD@OjyOE)wouQ WHzU?_dQ_g2P31k2G3P~RvGrf7Pc2LU diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index a497aa234119900fc0b434c0ff32ff65b9c99283..d75c841de573809baa8f3a1dc4be9f6d87ba1c2b 100644 GIT binary patch delta 242 zcmZp8!qo7DX+j5!X7s)F8+!yM3Vb|Ndyt_>%)QG;{KdgV%bssuGck-u!z{(j(%j54 zHO<7**eJ!q*u=y%#n3X*(A>z<%-kf=Albko#WKyrWOBg*&CS8{j&iZ+DVE88a9G#Vvre2@skB*@i&TL?CGnl(7V=H3y0(G8ix<1F;2A O-V&_SWb^Lzu1o+||4?=S delta 242 zcmZp8!qo7DX+j6fgqmkRHueZi6o_=1In`v!OWzgwKO$XI+OKb3Gck-uBh}0x&CD#( zGRZv2(%jI%)Wjq$(a6{`CD|m|D9OOc!ptDiGQ~J4adN=|&CS8{j&ia5G(ER@vdqc= zfsM6C6Uy)Wbl9PqCGyog+H!Ku$~Fb4-~yN+NcErF7aZAJ%g?<0!|l3RX_XhNe=36+ zg8@StkThdRWUypNVlW3{OCV_o6gOos0m3w(j1hw|P&9=h8OTot@{)kEMhq5U-5`A_ PK=~ww#Lc_cyD|X)c9&AW diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index ae05d428bb3173f9bf426123b567db44291885df..d236724aa33e7cbfa86557a54bede073e3da3d45 100644 GIT binary patch delta 235 zcmZp0XmFU&!Ln1a{LRLmGlBx_TP)N{4ddNcZMwZ!@m?3x<_sY{CJnO`GfQ(b%hWUz zOJk!H3u6-#(-cF?L_>2UOEYtmM1y1lixkT=6O+mNM3Pvv7tB93Sw%EJAbcgC+|zl> zoMu*k;O|*0TR*u)bcO;{aFZld5TyF>DgWZTK~L|0wp=%5vyIpkR(~^w6b3T}O9pc= znaYsHU;^YBGZ+EIEr7HM5SjwnhCtCoAZZSiu>`6$2Z|>$7%(IQu?0}x60Fl?v%Jhh FW&o4&M>hZf delta 235 zcmZp0XmFU&!LnIi{?o>uGlBxS{}-A56nN-1d-Cj_k5>}DZ_W_XW70@9Ge|QtOSDWf zPqH*OG%z(WNlP>`woFMjNj6F{FtRW+NVH5bPD-4-Pb7&&Mdsn`$tt1&0($GtDx|yf zxK7@(rE#-=_s7XCqB9hrf=gk7Ak}3O+Ba8J%?~kk4^-W3BQ}NAKb66Z!GIwRNSZMu zGFUPsF_;6fC6F`(ikmW+0AU(X#)!cfD4N2M4CE&Rc}YN7BL)kwZjindpnMWT;%0f7 Ghs*#(*GPB( diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 3ee940549fbbb161c73b8c2cf388cd5c7192a472..70ee8528ae5b4f11492d62f52987c015a9b0e26b 100644 GIT binary patch delta 235 zcmZoLX)u}4!SbcEe#OR~3Lb$ayQ6Hk=g7NHWswxhJ-KATW)a>FMh&wRGfQ(b%hWUz zOJk!H3u6-#(-cF?L_>2UOEYtmM1y1lixkT=6O+kD_+nV}PU+m7tim54a9YUWV~f*y zueSPN4$tYgrc7?(-=_c-w1NqOR9AmpQSs>PKQHMlHSf(y0!nQDW(+9|W(<}L=3p|F zA&tQV$TMaz0*YGzX%iqc1+oo+qKQD#94KQ6RBH|tPh>D)NCsjHpu8nmr^)8aV!F%# D?j}Wa delta 235 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 diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll similarity index 98% rename from Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll rename to Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 1b7e4136d20f605c6c9f9ad1bc6f896760289def..74db262729ce8aaddff15cb63229072df49d27e5 100644 GIT binary patch delta 254 zcmZoT!_;twX+j6ffkzYGZtU^V7udJ#`4q-G2_6j!U;pfyT>5qM3wyaa&<6H#_OfOy0>Bb0#Q21;t>3K-Cp1HnA~ISO26x zeRj9a<`;7gu=txXq%fEmujXgg40_j5hN_~eX`1E$9ywt2T{j~Xoz7eZQs+mEWnOUM` zl6jJ)xuJoniAh?bk+Ee;vPrU0l7W$hnL(muig8jR0|P4~0}}&-6C;D|_XBr;esBr%u+u_cf+1d5w7m;hlKP{xSC7$};;kPPG} b19?e6StAAuux^mP6rg+(L*nM|3prT;Yx7EX diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta new file mode 100644 index 000000000..52eb8f180 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta @@ -0,0 +1,34 @@ +fileFormatVersion: 2 +guid: d986f345a75c4744b507014b8b71bed9 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: + diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index cf0d659f58889271e45735513fa5ffb222f43730..579f0cea519d4ad2f7a859e713cd05db26c622be 100644 GIT binary patch delta 235 zcmZoDX(*Y{!IHMyYsSW&5KVzQd}rjG<`0_gEE;AhW|rn=mZ@nb zmc~XY7RDwfrYVM&iH7DzmS*NAi3Z6A7Acl#CMJ{P^=`8KDs%lj*+xG=VB&-@kxlof z`u8RN?b1H#IA!u2{b>qN!FWEXAV{^*T;BR9r|l;n2{0FI4l>AM^*3WkVK8H`WH1Ml zsSIfhCP1DsgAq{N0!W(xp(&7U2oy~OlIB1eOQ2eFpm-vK0YfqnTL9%P!8%PgbDMo- F1^|g>NhtsT delta 235 zcmZoDX(*Y{!SXKn!|{zhA({ev&n?i^?_uzszS{cS-QTZYZ2q9>&Z3cOW{_rPmS~w| zo@8lmXkcn$l9p&>Y?+d5l5CV@U}RxtkZ74=oRl~@UhgJL%}l?4lWp_^1nxf7;{MD1 z)^GiT__~#`T#qNu(VwOO6|~cb3W8MgC$+`#2~YKKWJ_JKImjT3)jyTNjKP2*4M>_X zBr;esBr%u+u_cf+1d5w7m;hlKP{xSC7$};;kPPG}19?e6StAAuux^mP6rg+(L*iy` Hv#-nmZzM~J diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 7209015ab7b4f049cb9364eaaf5d7598ed8b2eb2..7fa41354098a9f3958d0f59c70821eea60d2341a 100644 GIT binary patch delta 249 zcmZpOXo#55!J=+`VfV(K9vOjrMr)O`CwBNP|90a^f8&f3n>A#!nDxw3%q-2#EK}1= zERBs)ER0P|Oj8Uk6AjIcEX~YK5)G0KEK)4fOiUOUoERBwCofcznk=g*F!`0jJC=i| zAHAM@M=?O4&M@=ofiDXj=Kk^Ync#o2bh3?7mjYC<;4V}Uq<%zCM225DwyiIz#` zNtWh@2Bsz^X^BS0mMO_5$wo;AMiyoUiIyqGNr?;$PK*q;lNTyUO_o&@nEXoN9m^Uv z+v}6>CeaYq!~jZgC#=}gEpb`k8f%6BMAL%krV3K=q2}HhTShz5NiY>9ZOA+iTV{ z>ah5mF{Chl= U8Hg=_@|IwoCfmPnX5?f601)0%8~^|S delta 247 zcmZqpz}E1AZ9)f&u}|#s#-6P`j33wqjP{gnci`XXwsF6(Zi&~k%iDW67-!7YNHsG^ zGc!xHOfpZhG&eLbH8Dv`G%~hKNj6C~N-{9AFf&NBOfgPM-0riCQHF!1JcMoe^qh5! z0RnTT|M#AEi^+G^Z@m?N`B%=Ier6rx1O=!l?=7e(NPV4cp7rexhA@$yM=aZG)-&p` z_@^?MF&HqU0ZB84L;M1& diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 1871851f39dba31a30732274dc7f09b3f2dd08c4..e4b3e595c41320aef4c07af026fe54380ce316fa 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6@6K=kt08+&fJ3)HW3TDyxW(P?JFT}QEkRkJpic!+Rln5CFmnwwds zrkPk88>Ltno0yoU7+NM8nj2Y~nVTdUBpXuIw;ZS1+>F2K?{`FG5NPtFq}7P?$qny2;y z$I8>w=kOn@*AC}YH63=~aaNCxtgfxIN3tPz6+ST{&t3Q#_Y LA#t;O)I(+f(PvEl diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index a0478fe9c89fb83cb290875b12d57b372b2541d8..f93004ced84fd885c5b43fc9800a260274162db3 100644 GIT binary patch delta 236 zcmZpuXsDRb!SelG=*o>f8cG6(cRyCqjqi8fGjWR7zGXjhHXl*?%%WkIVrFS>W|^91 zVrguYVqt7zVwz%TnP_NkWNBt@l4y`@V3A^(W@57WzWPlrmh6b!ab Gu1o-QI!n3$ delta 236 zcmZpuXsDRb!E$?A--V4m8cG6NHWe0J?|$LB`*G0LY2CszHXl*?%%YKMW{_rPmS~w| zo@8lmXkcn$l9p&>Y?+d5l5CV@U}RxtkZ74=oRqlvzWPlrmbt$SzE9p`6d;g&UF6O4 z+MAv`jUO8O=xvajEMwfF02P$1gbD&xmq%Xyd2_A({k8ihtxMf}z<3R-e=36+g8@St zkThdRWUypNVlW3{OCV_o6gOos0m3w(j1hw|P&9=h8OTot@{)kEMhq5U-5`A_K=~ww K#Lc@cU6}x;Sx{&I diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index c958eb571838e65c68b56033859e39b88bf1fb0d..043a7d686d87a037b96195d9a9017fd8a6abe1a6 100644 GIT binary patch delta 14957 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 QNEfeZcf9eLXc}Vt-#>kV1^@s6 delta 15071 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 4cf903276800abf15fb3c007a1321a0d991bb3dd..7fefda4573d2741fb5e9e6af5a3043d5785a2f11 100644 GIT binary patch literal 223232 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 z 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

oKl5JsbVhgE64WqrasJd0VQJ6-~eq<8FW% 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 Ze@p)@bY+{=)$$+wmil|YoA(q4{y)*i8Fc^v From a131101079c86764dc87fda4b293616f8daead3f Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Tue, 30 Apr 2024 21:36:46 +0800 Subject: [PATCH 32/97] Fixing sample script comments (#930) * Fixes to stabilize the head (#927) * contribution edits * condition to run tests fixed * typo fix * use deploy key for push * bot makes push instead of actor * fixed syntax * setup ssh keys added * different way for setting up ssh * only play mode tests * reverted ssh setup method * run workflow on dev not main! * revert pre commit check branch and change post push action branch to dev * added ssh key for checkout * removed tests for faster iteration * put back publish dlls * check if latest commit isn't from github actions to avoid recursive actions * small syntax fix * small syntax fix 2 * replace conditional fix for loop issue with commit skip ci keyword in message * put tests back in * on push workflow call now back to from main * test again * reverted actor from bot to user and removed ssh setup * revert post push workflow file target back to main * chore: fix typos (#918) Co-authored-by: Robel Getnet Geremew * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies * Metamask SDK fixes (#922) * Revert "automated duplicating imported samples modifications (#595)" This reverts commit a5558941827a91df51e2dd200648dcd13a1231c8. * made main package testable, revert due to a mistake * Sign verify and WebGL login logout issue fixed for metamask --------- Co-authored-by: robGG1997 * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies * Package built-in dependencies fix (#925) * Package built-in dependencies fix * Added polling and timeout to GetTransaction method Introduced DelayUtil --------- Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: Robel Getnet Geremew * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --------- Co-authored-by: robGG1997 Co-authored-by: Snoppy Co-authored-by: Robel Getnet Geremew Co-authored-by: rob1997 Co-authored-by: kantagara Co-authored-by: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: oleksandrchainsafe * Fixing sample script comments Fixing sample script comments as they were set to 1155 instead of 721 --------- Co-authored-by: robGG1997 Co-authored-by: Snoppy Co-authored-by: Robel Getnet Geremew Co-authored-by: rob1997 Co-authored-by: kantagara Co-authored-by: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: oleksandrchainsafe --- .../Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 2 +- .../Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 681786c7b..96671df2b 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -316,7 +316,7 @@ public void EcdsaSignMessage() } ///

- /// Gets an addres via ECDSA key + /// Gets an address via ECDSA key /// public void EcdsaGetAddress() { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs index 584ef849b..024660a4f 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs @@ -105,7 +105,7 @@ public async void Uri() } /// - /// Mint ERC1155 tokens + /// Mint ERC721 tokens /// public async void MintErc721() { @@ -115,7 +115,7 @@ public async void MintErc721() } /// - /// Transfer ERC1155 tokens + /// Transfer ERC721 tokens /// public async void TransferErc721() { From 60536e5e92194318e6741e6c56d19238a4e297c8 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Tue, 30 Apr 2024 21:37:09 +0800 Subject: [PATCH 33/97] Ramp fix (#931) * Fixes to stabilize the head (#927) * contribution edits * condition to run tests fixed * typo fix * use deploy key for push * bot makes push instead of actor * fixed syntax * setup ssh keys added * different way for setting up ssh * only play mode tests * reverted ssh setup method * run workflow on dev not main! * revert pre commit check branch and change post push action branch to dev * added ssh key for checkout * removed tests for faster iteration * put back publish dlls * check if latest commit isn't from github actions to avoid recursive actions * small syntax fix * small syntax fix 2 * replace conditional fix for loop issue with commit skip ci keyword in message * put tests back in * on push workflow call now back to from main * test again * reverted actor from bot to user and removed ssh setup * revert post push workflow file target back to main * chore: fix typos (#918) Co-authored-by: Robel Getnet Geremew * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies * Metamask SDK fixes (#922) * Revert "automated duplicating imported samples modifications (#595)" This reverts commit a5558941827a91df51e2dd200648dcd13a1231c8. * made main package testable, revert due to a mistake * Sign verify and WebGL login logout issue fixed for metamask --------- Co-authored-by: robGG1997 * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies * Package built-in dependencies fix (#925) * Package built-in dependencies fix * Added polling and timeout to GetTransaction method Introduced DelayUtil --------- Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: Robel Getnet Geremew * Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --------- Co-authored-by: robGG1997 Co-authored-by: Snoppy Co-authored-by: Robel Getnet Geremew Co-authored-by: rob1997 Co-authored-by: kantagara Co-authored-by: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: oleksandrchainsafe * Ramp fix Fixed ramp via conditional compilation to avoid changing the folder structure of samples. * Amending Cleaner implementation of compilation directives * Amend Amend --------- Co-authored-by: robGG1997 Co-authored-by: Snoppy Co-authored-by: Robel Getnet Geremew Co-authored-by: rob1997 Co-authored-by: kantagara Co-authored-by: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: oleksandrchainsafe --- .../Samples~/Web3.Unity Ramp Samples/RampSample.cs | 1 + .../Utilities/DisableGameObjectIfServiceNotActive.cs | 12 +++++++----- .../1.0.0/Web3.Unity Ramp Samples/RampSample.cs | 1 + .../Utilities/DisableGameObjectIfServiceNotActive.cs | 7 +++++-- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs b/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs index 000f2703e..77dae4f12 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs @@ -1,3 +1,4 @@ +#define RAMP_AVAILABLE using ChainSafe.Gaming.Evm.JsonRpc; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.Wallets; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index 0024a9fda..f556db5d1 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using ChainSafe.Gaming.Exchangers.Ramp; using ChainSafe.Gaming.MultiCall; using ChainSafe.Gaming.UnityPackage; using ChainSafe.GamingSdk.Gelato.Types; @@ -8,7 +7,9 @@ public enum ServiceType { + #if RAMP_AVAILABLE Ramp, + #endif Gelato, Multicall } @@ -18,7 +19,9 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour [SerializeField] private ServiceType serviceType; private readonly Dictionary _typesDictionary = new() { - {ServiceType.Ramp, typeof(IRampExchanger)}, + #if RAMP_AVAILABLE + {ServiceType.Ramp, typeof(ChainSafe.Gaming.Exchangers.Ramp.IRampExchanger)}, + #endif {ServiceType.Gelato, typeof(IGelato)}, {ServiceType.Multicall, typeof(IMultiCall)} }; @@ -27,6 +30,5 @@ private void Awake() { gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(_typesDictionary[serviceType]) != null); } - - -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs index 8f69670fc..d8e1de83b 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs @@ -1,3 +1,4 @@ +#define RAMP_AVAILABLE using ChainSafe.Gaming.Evm.JsonRpc; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.Wallets; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index 0024a9fda..b2cd3f817 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using ChainSafe.Gaming.Exchangers.Ramp; using ChainSafe.Gaming.MultiCall; using ChainSafe.Gaming.UnityPackage; using ChainSafe.GamingSdk.Gelato.Types; @@ -8,7 +7,9 @@ public enum ServiceType { + #if RAMP_AVAILABLE Ramp, + #endif Gelato, Multicall } @@ -18,7 +19,9 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour [SerializeField] private ServiceType serviceType; private readonly Dictionary _typesDictionary = new() { - {ServiceType.Ramp, typeof(IRampExchanger)}, + #if RAMP_AVAILABLE + {ServiceType.Ramp, typeof(ChainSafe.Gaming.Exchangers.Ramp.IRampExchanger)}, + #endif {ServiceType.Gelato, typeof(IGelato)}, {ServiceType.Multicall, typeof(IMultiCall)} }; From 6bd4e24565d0aa75973cf67db55eb6647528db48 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Tue, 30 Apr 2024 21:45:27 +0800 Subject: [PATCH 34/97] Sneakz/typo fix (#933) Update DisableGameObjectIfServiceNotActive.cs --- .../Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index f556db5d1..4b8a6bd77 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -30,5 +30,4 @@ private void Awake() { gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(_typesDictionary[serviceType]) != null); } -} -#endif \ No newline at end of file +} \ No newline at end of file From f72cd5db73994af2b7aa41232f29cc9e7307f7c5 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Tue, 30 Apr 2024 15:51:14 +0200 Subject: [PATCH 35/97] Removing Sygma from ILoginProvider --- .../Runtime/Common/Scripts/ILoginProvider.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs b/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs index 639e38fd4..742deee06 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs @@ -86,7 +86,6 @@ private void ConfigureCommonServices(IWeb3ServiceCollection services) .UseUnityEnvironment() .UseGelato(GelatoApiKey) .UseMultiCall() - .UseSygmaClient() .UseRpcProvider() .UseMarketplace(); From 72b2ff16dd3864c051e4637820b44d8a7ef2f406 Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Tue, 30 Apr 2024 13:52:24 +0000 Subject: [PATCH 36/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 32256 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 16384 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45568 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 223232 -> 223232 bytes .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 2 +- .../Scenes/SampleMain/Erc721/Erc721Calls.cs | 4 ++-- .../DisableGameObjectIfServiceNotActive.cs | 2 ++ 18 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 67470df51b6424c0a3cded72aeb14827d1761fa4..f08cf8163af5231cf311180f46ac6bb3e3f0ae89 100644 GIT binary patch delta 235 zcmZqp!`SeLaY6@+VukC?jXf3d0x|QRrg@hCa+*6Bz}ZjpC!Z(^5LkMo^XTP` z5B>Kzn6EW^arX3Njp79gP{H#xP(hGtUD3O2GyNw{pTZ~oZS#v_0XE+h24e;j1_OpP z21^Drh9rhW26G^t%3#4@3KUNSvQmL^7C=@akZ;0Z1XORzkPKv5096}Mkj znr32YY?NYQY+_=XVrZFYXl`U_W^R&bkZfR)Vwq;Lxjx60jphGIu62`76a@(EH@nhw z)^eful*4z+wd%UJPu3`2pa2zo4HE>Zes_BHy0@7Y`7iH3G2Z;5Sb)vfj3I@=jKPw@ z989J%q%oKPdBzMzKyeEoZ32X*K(--JG!aOe17$3MYR!S-i3|n|$v|uYl(z)w-0WJl Gn;8H~V^8(~ diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 804587137eac5d6717577710e04445a878313bae..d37d36d8684414f392afd3e97c5c69b864a8d1cf 100644 GIT binary patch delta 232 zcmZqBY0#O_!4h13?cc^84NidrX^dv?r@wRD)vLg{kqAk8t-WKn2@ifo}4i`g*!mNwl4aMtrfFT)(Er9ZtAf1~Z3d*wp E0BW5@wEzGB diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 82cc508b74f018d1231f74822d41eb738813ce51..09a643796cc91fa0b98ae5e27e73aeee061e923c 100644 GIT binary patch delta 246 zcmZo@U~Fh$oY29tWvR=AjXiU81VrrSS(W7dckg}hJZ|^8bo0#?x*n{0DaIxSX_jV5 ziRNah7N#bNsi|oeiHRmAM#iSeCKgG?iK%IZKxo3i;K0aWJ^8(n#^!5AQA{k)`%}M7 zHZctl@U)7yxEp5eyK|>lU+VwlH|}HFJ-<}xx7d6X!f7Y4rU>& zz9|gG3?>W)3~3CO3}y^T42cZpKsuGdg25Cho(N>60_7}#tVAH+guw`?-jpF3$g%*c THU_ImV=x4&0piUMt>sw&>^e@| delta 246 zcmZo@U~Fh$oY2AYV8W4;8++#H2pr*Ha_O3I)n~ms`<2@v21=VPbUj%0%u>uO&CM)R z(@ZRljZ!R(O-xKv3@sB4&5bP0%uNyvk_{|UEYnO(7#JKF8LTJ2H`3UA%_xeACBZeY zf3k^bfWSSD7d5g^OMItvxYWE88a9G#Vvre2@skB*@i&TL?CGnl(7V=H3y0(G8ix< R1F;2A-V&s9^FwQS763zYMw$Qs diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index d75c841de573809baa8f3a1dc4be9f6d87ba1c2b..65360513eab9aef27a01a7f62b863a521a6c19a5 100644 GIT binary patch delta 240 zcmZp8!qo7DX+j6fva6x*H}(ij6nOV?ee1U;Lf*4Nmz#-+nf=|oW?~qRMvAeCL7Jsm zQlhz8s)eaZVrpudMPj0fiIK5svWZ2KabjwkArP8OE?A(sIe6YtE|!{&kLOI5Ss5VU zCt%Ikw5!u;{fwDL`}nhJC)ccOQ-BH<=|cs9s%0|T;~uS9yFW@!=gHm8N~^qBeNz~W z8B7=q7}6Ll8O#`x7!n!GfpjW^1%oM2JQ2uB1Z46eC Q#$X6k1H_wmu6Jhw05srFEdT%j delta 240 zcmZp8!qo7DX+j5!X7s)F8+!yM3Vb|Ndyt_>%)QG;{KdgV%bssuGck-u!z{(j(%j54 zHO<7**eJ!q*u=y%#n3X*(A>z<%-kf=Albko#WKyrWOBg*&CS8{j&iZ+DVE88a9G#Vvre2@skB*@i&TL?CGnl(7V=H3y0(G8ix<1F;2A N-V&s9^Un3|OaQu4P(T0x diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index d236724aa33e7cbfa86557a54bede073e3da3d45..4a7be349d8fb6af0b70e247391305e3e86d44ffd 100644 GIT binary patch delta 232 zcmZp0XmFU&!6IgU=g-ETGlBwo?VoqpU6Xd4z4MFNj_u#VH)jaxF{!5*n;4{7nk6Ng zo26Qqnk1&CrdcE=nwS_Fn%vEYCkR9-gcs8X#b0(eq}@vo&th zHU%B(bK1=`xkYq_0#tBW7*r6X`qnZoXZNSiOxm|;zT0dgHigwUg~6D?gu#Fzjlq(^ zj3J33k-;2Dr!rVDm;%KUfvi-ZoCT1T2;`eE7y;FrG9&|87C_a;U=?W$hCnqyyjfP} GF*5)aZB8=) delta 232 zcmZp0XmFU&!Ln1a{LRLmGlBx_TP)N{4ddNcZMwZ!@m?3x<_sY{CUvtEGfQ(b%hWUz zOJk!H3u6-#(-cF?L_>2UOEYtmM1y1lixkT=lgWEUl3BDD%s(|*MKnMld?laU(|OCB zW>$aT?^!EbKeZ%wuK% D&FMzW diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 70ee8528ae5b4f11492d62f52987c015a9b0e26b..58ddbc0254eae3b9cfbd0b9bd27ba2b6f0ecd33c 100644 GIT binary patch delta 232 zcmZoLX)u}4!4msjapuOJ3LXK$B|ATD*rVycZT+kphBq9WH;eFgFsi2*n;4{7nk6Ng zo26Qqnk1&CrdcE=nwS_FnmArEGki`@ZsFgj02Ms?A1Vk^%_Fq;;j@3NBEI*Fc5Y4*P-62FMs>3kGfQ(b%hWUz zOJk!H3u6-#(-cF?L_>2UOEYtmM1y1lixkT=lgWqqVp;S~>D-*G!XF@TTFBvJi_>|p zw)$WW&*`_OOm5-drvMeSf(e3DSAShm@#yS7FX=2b@6Aa9N^HJn3@Hp|43-S$U^0~< zjll%SGiERXidz6_6CgANvJHWvi9pgEC}Rm!YYr4oWH4Yz24V}Kyd_BI=8Izb%m6FB BMF{`^ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 1ace08f63c91ec8fec897387921b8891e16e5c01..54a0199f8aa2e9384e8073103387d5c3dcb0f0f6 100644 GIT binary patch delta 232 zcmZpOXo#55!Ln!~_w9{6N2CS*Zjx|+^!bCweg~(U!STynHz&v}WmZoyHZe%EG)qb} zH%qlJHAzfOO|wW$G%+zUHcd9MNHR`LO)~_-$vO%rSkxapoHqG~LV&>c`PwPM0Svp-TIaQW(bArrLW_7a^GfQ(b%hWUz zOJk!H3u6-#(-cF?L_>2UOEYtmM1y1lixkT=lgT;?Cs?)xbg!TMLm@zb^L*{>b-HsM z7TlSUZ!;rg^W+G{O$t!Kga=STplbavNnWPsf~pxwE&t*+YbnXG`I<4LFqkn|GMIzO zRE9JL6Clr+!3ZdB0i;cU&=klv1d1jCNpql#B~Yz7P&|>rfFT)(Er9ZtAf211YGgA5 E0Q|8fWXb44`XLu z+U-Bn@Ot-k!FN`ZE#^#6fC}p0gbIRG^XZ6{Fg;w6$o_!AeDjMr2UvVl7>pTA7z`NF z7%Umg7?Kzg8O(unDuV@sDNsBS$VvsuSpZpyK)wls5m3D;Lo$$M0aR@aR*}YF2vh^a Ko4+pPW&r@MMNupO delta 235 zcmZoT!_;twX+j6ffkzYGZtU^V7udJ#`4q-G2_6j!U;pfyT>5qM3wWUSc*chj)f6|{myW3{-i#Z2ae9ahA7|a+f z8O*_CDnlBB36N*ZU<4Gm0MaHvXbNN-0!0&nq&ZN=5~$W3D4xh*z>o~Y7C?DRkj~9t I7jm-z0MaQ<1ONa4 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 579f0cea519d4ad2f7a859e713cd05db26c622be..c6020cff58a5d9600347572a11a596bf0ad50050 100644 GIT binary patch delta 231 zcmZoDX(*Y{!QA4^u(3N-Q{ZLCoGJEvl1{VTu5YR}QTV(0gQh!+dWx}$L7JsmQlhz8 zs)eaZVrpudMPj0fiIK5svWZ2KabjwkArMZE)4Rn|zR2g+WE=ee0Rut#>b^I9E=wm^ zY|*)R^xWh*`qLC(f={7>Al1(gdPpvRa9!K5VdtLBK?Yf@z9|gG3?>W)3~3CO3}y^T z42cZpKsuGdg25Cho(N>60_7}#tVAH+guw`?-jpF3$g%*cHU_ImV=x4&0piV^X5X0s DN{LEn delta 231 zcmZoDX(*Y{!JM|+Yh!n)robIOwTyN7&Hg*C*Z1nboVarH2TgYtb+Z&ROLH^J)HD-I zW1|!cV-pk86hq5ILvtfbGjo$fgJc7X6w5S|$#HtOSbmkcex7WjA0RMsLYT;=`&0e< z690B-A9b8Ed5-=x1*l*=A5;*e+Gs9seU#JolaB01F{Chl=8Hg=_@|GZ-n>o$CGXnrL Cc}OJy diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 7fa41354098a9f3958d0f59c70821eea60d2341a..2ab7943048e63e782b67d4f46a7ae1e5a663ee5e 100644 GIT binary patch delta 247 zcmZpOXo#55!J@L%dD_OF9vK1sh`1Ntp=o~0Hiwp2p5L={vxaOIvtEj^i9wpBSyH08 zS*nGpNn&bhnnhxwiHVW1X|jn$l5t{cnjsLHFfceVGT2UDs3bL6R#9N`D}{F~XKYkk zC*M&F5ZGk=sg^m_%wA#!nDxw3%q-2#EK}1= zERBs)ER0P|Oj8Uk6AjIcEX~YK5)G0KEK)4fOiUOUoERBwCofcznk=g*F!`0jJC=i| zAHAM@M=?O4&M@=ofiDXj=Kk^Ync#o2bh3?7mjYC<;4V}Uq;c{(Hko22UNdMyIR~?@o|;B=D$_jYt}RBu=u7h z7&DkK7%-$USTdL~Brzm1m;>ol1`7sLpm-vXl?s%z0J0K+d=myEpn6k=WFX4|sM;8; SB8|Zis0N6)f8ET;%>n?O5KF}X delta 243 zcmZqpz}E1AZ9)f2Hv7kAjXhg?7(cKJ9MXDtO5g5_{|+;@FZ*n69ogQ)!8l{Cx><^u zrMa19YMP0qu~CYJv5ARkilJqqp}CQznYl@#L9&5Gie;L~cJF13avaQSlNL_TS;rV4 zu&ZcK*n_4&ZtE92bm}dd{9yW-b&L}fprXt2p`w0klN8Tw^!oXF`yp1-XEXY@*Q{sM zVevI%NMSHzuw*a?lc@}83?@LHF@q6M+yY3O0HG<6Z3q-i1d`@J8B3sAbD(%4g8@S_ S5L*D{EkQcBf8ET;%>n@5xlv;P diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index e4b3e595c41320aef4c07af026fe54380ce316fa..28b0c834867a89b2d39c3411bf2cb9bed422faa4 100644 GIT binary patch delta 235 zcmZqJ!`QHgaY6@6^`VLDHul_b7sx8>v7T)>#jiZ zV98*{ki?M4U=E~H87vq~f#QikRw_`=0?0}P@=X|wfa*;dl7TD>plV~ViZlj8pc)|F JEF1Nh82}DbPGJB5 delta 235 zcmZqJ!`QHgaY6@6K=kt08+&fJ3)HW3TDyxW(P?JFT}QEkRkJpic!+SQo28gpnwwds zrkPk88>Ltno0yoU7+NM8nj2Y~nVTdUBpXIm{?D!Z6BspJv#T}>h3;eVHDgF&Fk`S} zFb9*V3~3A|K%Oy!5m4L$NSgqmDUfXl6ioz@=0F)spjvaFcp`%VLoyIs0Oc(~IycKk HJ!S>~o61Hv diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index f93004ced84fd885c5b43fc9800a260274162db3..132662e8cb46c9c9814ef0614ece62b5e04765a5 100644 GIT binary patch delta 233 zcmZpuXsDRb!P387^47*44JCp4xu5JGn=SC@Sd+1Ml60~0<|9gzbqQ z29s>fr&dqRC(9VOC_n{eVS+%_sn=ak7^&@7@D<*CFlX}t<29_lDGbI8CJY7)X$+PO zW(-LTi45jII+ekK!4xQ-2xO%K|lP G-I)OVElX4Y delta 233 zcmZpuXsDRb!SelG=*o>f8cG6(cRyCqjqi8fGjWR7zGXjhHXl*?%%X0VVrFS>W|^91 zVrguYVqt7zVwz%TnP_NkWNBt@l4y`@V3A^(X0rL7`YkS&?1<;BllK?}2xMHn<=DRW zkn2JxTa$?veX}Ra7`G@u1w&ziK-H|i#vR-@LtmsHJ|=Z}^8w>EtiEOpDGX)|mJH@# zGL<2X!34-NW-tPZTL5VjAT$NC4S}MGK++s2V+mAi4iryhFknaqVhfeSjZ|vEyR6yWjnDtdgGmjqi6~=NxMyZ>9mTl)(Pcb$zNV7Cc zN;Ef1wJZ zV98*{ki?M4U=E~H87vq~f#QikRw_`=0?0}P@=X|wfa*;dl7TD>plV~ViZlj8pc)|F J%z5lPGXNG`P0;`V delta 235 zcmZpe!rU;0c|r%vTk~fRH}-5;D)1;|)$h#fJKT1PPh2`>iHGlmofGX_fr zb1<38kj7vF(cCQ6!qg-&H8ss5G10`t$k;U5#3IQ!F*VH)2u-FZS}}`HGiB!9-eJP5 zqs>z5C%AU{j(Fw(f!gBC?jIL4ou^!HHrrzt%`;shfw@8fDtcH1DhgDuTgt1GO&OAbEDNA&W3Y-e21B44Al_b^%G}HZ00j6@p8x;= delta 257 zcmZp;z}s+vcR~k?)QLw=8hcuM7`OH?{izg~R(`N$nqInZzbGG*l??mF?K7&FmhIFq zOEI%FH?vGlGqE%_O0h6DF)>Xsv`jQKH?lM{H%T-|Hn2#sOfxZ=o@m7^KFySwdwYio zvyL{)RM{gBr|*bo4iH!^8rraXj;`O7bgNwNgs)1|B@&n`6riGfB2ZC~`k#v<><)hB zvD=(+>BaU93Cs;FzGe(53}y_L4CY`ml_8D61jsXHFanBO0BI8-GzGE^fue~((i|vb c2~=wi6i;L@U`PgH3!uCuNayz2ROV(T0J&66N&o-= diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 96671df2b..681786c7b 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -316,7 +316,7 @@ public void EcdsaSignMessage() } /// - /// Gets an address via ECDSA key + /// Gets an addres via ECDSA key /// public void EcdsaGetAddress() { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs index 024660a4f..584ef849b 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs @@ -105,7 +105,7 @@ public async void Uri() } /// - /// Mint ERC721 tokens + /// Mint ERC1155 tokens /// public async void MintErc721() { @@ -115,7 +115,7 @@ public async void MintErc721() } /// - /// Transfer ERC721 tokens + /// Transfer ERC1155 tokens /// public async void TransferErc721() { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index 4b8a6bd77..b2cd3f817 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -30,4 +30,6 @@ private void Awake() { gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(_typesDictionary[serviceType]) != null); } + + } \ No newline at end of file From 9730ae06c1e6ce01b7be24c61ab4143bec79a2ab Mon Sep 17 00:00:00 2001 From: kantagara Date: Tue, 30 Apr 2024 14:09:44 +0000 Subject: [PATCH 37/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 32256 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 16384 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45568 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 223232 -> 223232 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index f08cf8163af5231cf311180f46ac6bb3e3f0ae89..dfc24b78f0db543a6e05f96a33460c7958b8af3f 100644 GIT binary patch delta 238 zcmZqp!`SeLaY6@+UFEl<8+$6^1rGnOypq%z={mVOmi7FSWm20(5?pvRj7=<34ARUD z6O%1X(~>PrEiBSZ4O5KFlhaI1lTwq+QjF445-roxHaFzBu(8y>lKM6IL{Wf%`QIhX zVSoR+HvL%>y@t8=`DBga1qx6>(L+!{pz5kmw{^aLT_h7XO<{xG<`=~RZ2ra!CJYt~ zDGUY-X$)ozh75@e$qbeZra)dYP}~%VEr4uOpiByb5ra8U6vQ)SNMc9@Vl%L48jwr` O>Plls+w5MolNkW@$5H(N delta 238 zcmZqp!`SeLaY6@+VukC?jXf3d0x|QRrg@hCa+*XN_{PQ_4Nif!gkud?mmToh_t5V2lf&Uzn~!ixGHMu`Sfm)FnHeS~ zTbiaNTbNo{q?sC~7?~%hnVKf0CYhxerKKcVrln10<&I`K?7nyRD1&S+&v0V!SC;&f*{qGcPxDC)t%m#x^VNg%>_Ivtp3IfCJYt~DGUY- zX$)ozh75@e$qbeZra)dYP}~%VEr4uOpiByb5ra8U6vQ)SNMc9@Vl%L48jwr`>Plls K+x%EimIVN-WKPlm delta 235 zcmZqBY0#O_!4h13?cc^84NidrX^dv?r@wRD)vbw$I7M$+Z zyO`tk_l2qPlaFxsC_n|%ppLY+{jOkY;9> zm~3g9mTX~aVUcEPm||p}oMvj8l$vCgVw9GWXqlGAz~I2hU_JT0k;dk0Mo~;GS3ZiK zpKM|pAkhEq`<9z*w|wT@N;=c~zxl-EDW*LNP{A{Ipn@RPCwhfD`b+vOx=$b6vDv{a zgw@}e!GytrA%($!A&tR|!H^-5A(_FF!4$|#28x>ku?3KA3Y1AB XKx_sUO#_mNKwW7JX`3Hg%d!9fbOKXw delta 248 zcmZo@U~Fh$oY29tWvR=AjXiU81VrrSS(W7dckg}hJZ|^8bo0#?x*n{0DaIxSX_jV5 ziRNah7N#bNsi|oeiHRmAM#iSeCKgG?iK%IZKxo3i;K0aWJ^8(n#^!5AQA{k)`%}M7 zHZctl@U)7yxEp5eyK|>lU+VwlH|}HFJ-<}xx7d6X!f7Y4rU>& z{wWN`3?>W)3~3CO3}y^T42cZpKsuGdg25Cho(N>60_7}#tVAH+guw`?-jpF3$g%*c UHU_ImV=x4&0b!HPkF8}{0Eh!m5&!@I diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index 65360513eab9aef27a01a7f62b863a521a6c19a5..b302addd54599955c208f44006ef26505ffb4bc5 100644 GIT binary patch delta 242 zcmZp8!qo7DX+j6f-|h*AH}(ij6j+(CW20^0JMV6tZ?P8w`jj@WnHa{SVQgZNVvuHL zn3!y7nwD%~YGILPYM5eVo}6ZCnv|MkmSU8al4zNhHo0Jd=H}peN4Z$6t(_-LmRT7f zuw$yykz$=kzH9GrT;sETTs^sFWt#$2uvZr<2vjZP8uTag-zlx>*A%q7HY=_2V)Zv> zFk!G@NMSHwNMkT#Fl0z%NM^8PFa`3Gf#Rk>Yyo7O0%cMdj2O&;q9C3rLlQ$O5SxKT S(|}|mP*)m5+UDKsU6}ybWKYik delta 242 zcmZp8!qo7DX+j6fva6x*H}(ij6nOV?ee1U;Lf*4Nmz#-+nf=|oW?~qRMvAeCL7Jsm zQlhz8s)eaZVrpudMPj0fiIK5svWZ2KabjwkArP8OE?A(sIe6YtE|!{&kLOI5Ss5VU zCt%Ikw5!u;{fwDL`}nhJC)ccOQ-BH<=|cs9s%0|T;~uS9yFW@!=gHm8N~^qB{Zkl> z8B7=q7}6Ll8O#`x7!n!GfpjW^1%oM2JQ2uB1Z46eC R#$X6k1HvYocdvJ40szohPh$W8 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 4a7be349d8fb6af0b70e247391305e3e86d44ffd..379f9c2f82dff4f35c1ba9c49b0fd9d4f0782b4f 100644 GIT binary patch delta 235 zcmZp0XmFU&!E)k&*s_g1X9NXm{rB{6SG@6CzL(8pYV|_t%^5;^Od7@}7AXd4W`>E$ zmZoXR7N!;!X{LrLM&`+Brlv`$NoFZVX(@@8X=#)9i6pV?Pb)n$Sw%EJVAF!{kp)g0 z{JWi0n{C9Vu=*P_m@rr{q%asT zq%oK=7&0U>Br{ktm;!mpKygzbwg9qCfifu!MhxaaQ4r6RA&DUsh|R#FX+Sa&s4I;j KZL_@0LuLSfwn)MN delta 235 zcmZp0XmFU&!6IgU=g-ETGlBwo?VoqpU6Xd4z4MFNj_u#VH)jaxF=?b2n;4{7nk6Ng zo26Qqnk1&CrdcE=nwS_Fne<^Ni5GlH6EU4Vi>T}x7G`U4|h5}S@Sr}9hr25t}E@$_r&rI64X};TRBQ}NAKZU`V!GytpA&tS3 z!Hgk^A(6oxNT)JbFqi_x6M?K$pqvGel?ddUFc<;Vn=&K=Sr$Om#$Xj`42D28AZ)T( IUgjY)0PVm|o&W#< diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 58ddbc0254eae3b9cfbd0b9bd27ba2b6f0ecd33c..e9b5117b9e2b16cc6e6a68078f6d28b8a76352e8 100644 GIT binary patch delta 235 zcmZoLX)u}4!LoY#iXR($DtH8XbQhJxd@u0dni14@o@3Lx%_6)Vj2gx!7AXd4W`>E$ zmZoXR7N!;!X{LrLM&`+Brlv`$NoFZVX(@@8X=#&>@Wrr5y#9M)vI>8Iz|?hu7bmx* zIV@S9vTd!A>(a?B{QDH3f)`YvfUgzSI$c;SB!Ax-JB$##O80zV8UR*kiuZV zkj7xfV91cjkj!AoU<%|V1I0~&*aFBl1bw^F)Wu$7R;Wk!XF?I`ZVo><|Pl; z{p%grEHivgPj2DgrvMc^`X4F?Qq3c@_u;dDtRlYmi*{~K5>R6EPhl`-FkvuYNMo>M zFk?t!NMtYv(y0s<45mQwL?9~_C}#m=B?9>-3`RiprVPnImIY9?F<3Cfy{&YLf!yje?0j?Leg!GytrA%($! zA&tR|!H^-5A(_FF!4$|#28x>ku?3KA3Y1ABKx_sUO#_mNKwW7J LX`82OWHJK)jy_Cd delta 235 zcmZpOXo#55!Ln!~_w9{6N2CS*Zjx|+^!bCweg~(U!STynHz&v}W!6YBHZe%EG)qb} zH%qlJHAzfOO|wW$G%+zUHcd9MNHR`LO)~^SlgYXY$63@LJe)T9heCkB_xai>!T}C` zJD1!&?z2B&;^YX$O$t!Kd6iH>kZSYKTpV+2^c6PPnQ?E{Qj%lyPhl`-FkvuYNMo>M zFk?t!NMtYv(y0s<45mQwL?9~_C}#m=B?9>-3`RiprVPnImIY9?F<3|ej7=<34ARUD z6O%1X(~>PrEiBSZ4O5KFlhaI1lTwq+QjF445-rox7#LU?8JHLtoERBwCr>mr*j#5C zmd0Z7^T^D}H)aP2G`oafx$7S3)amx-Ti`2Q%gGjVCMZA!m0*HE)sj!0&X|5|I9sz- zxLJGii#Z2a{EZn*7%Ui47z`NF7|a+984?+i87vu0fxKj(xG4}@0NJKMnG^;i26Lb& dh-b=>#E=TaW?<1YAeji%mBx^^`TIgn766fmQYioc delta 254 zcmZoT!_;twX+j4J+ktr(Hum`F3miz8FAyd$!+G7$MFPG3vR5|0&^KZ=NijAtNV7Cc zN;Ef1wJ;QqAKOe@w@pBCR@yzpa2!rzX=rtspiuWD`9%LB9Z+8 zgZbtca}Kchr!W{Zm@pVHq%l}Bm@y}@B<`0_gEE>ip7AXd4W`>E$ zmZoXR7N!;!X{LrLM&`+Brlv`$NoFZVX(@@8X=#(=^=`5Rqgv`k{K)+Oo6;)ptvazTL9UnK$#Q)Ro4N Kwwc@PD>DEi>re6k delta 235 zcmZoDX(*Y{!P4T)Fk@p+h^D~HjyY58`6QiYyItQ@YohRX^9N0L7L62R6N5BMv!q0G zvs4RHlf=~2G>gPU6B8q2(_|BiB;&-?G(#XXnH;Zolcju-&#lQe`T+t4g7VdUZ~9!8 zPO#XbbMff8$#e9lDZm7uLIpvppC9y)T>jv?wqe80J)46JvRM677>pTA7z`NF7%Umg z7?Kzg8O(unDuV@sDNsBS$VvsuSpZpyK)wls5m3D;Lo$$M0aR@aR*}YF2vh^YCY!m< HzA^&A#!nDvZJEK&^8%nTEg zEltysEle#e(o79gjLehMOihzglgv_#(ozyF)6y6ioERBwCofcznk=g*F!`0jJC=e? zH4T&RC+sgvW-%g0#tApOc1D=!C0dCTG11k1DR>1Q#LvmZ#$d>h$dJrn$zTfPB?HAxf!G4bHU-M0Fc>kI14ThRQ-&ml XR3J73i>3j|M4+xThP2J+)eTtywRcNo delta 249 zcmZpOXo#55!J@L%dD_OF9vK1sh`1Ntp=o~0Hiwp2p5L={vxaOIvtEj^i9wpBSyH08 zS*nGpNn&bhnnhxwiHVW1X|jn$l5t{cnjsLHFfceVGT2UDs3bL6R#9N`D}{F~XKYkk zC*M&F5ZGk=sg^m_%w#IwhAaTSMn_-( diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index fd81f532fd40e76c591124c3eb5ceec589ac7a8d..c6bae6cc62cd049304cc6487ff5df6c0a24056cb 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f2^1JmD8+*3)Fn(Ycn6~TU{y?_*ZgW-lsoBlYuH4?k!8l{ChOvo7 zib0y0VPdkSX7-@4?@V;P6GO$`xWa}q13pIOH^K>;dyfek7OQXi_S7O^p(`_&(1NzUyx>lt-e z{EZn*7%Ui47z`NF7|a+984?+i87vu0fxKj(xG4}@0NJKMnG^;i26Lb&h-b=>#E=Ta WW?<1YAeji%mBx^^{rhG{P8I-{yHCsj delta 247 zcmZqpz}E1AZ9)f2r)ybbW6#ze#t-ZQT<;Q(?9DjswY}Vd@%Ktah3!2Yj5FqHq!^nR zq*ah5y zFc>qKFc>hTF<3H~F(ff0GMEGDR0azMQ=oVvkd+FQvjDOZfqWANBcOUyhGZbi0;t*; UtRjuU5U2)(O}2mE%*e?C0K)K0egFUf diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 28b0c834867a89b2d39c3411bf2cb9bed422faa4..dbdafcae9c534863ee7fe1004cd520ac4a93a4be 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6@+3c7qCng(%))!*K_7YP4BA)r4^e?JVZD&j7=<34ARUD z6O%1X(~>PrEiBSZ4O5KFlhaI1lTwq+QjF445-roxHg5=UVP^TaIbrwYAHe|v^WFI_ zuFdOr>1ud-uDgCJ|Kx~}Sqf0W7MLJVwe^RJf{Lqa&x>nXvGHsc3f;%zZ_HrAV8M{W zV8D>ZV8&p`kjRkCV98(#v7T)>#ji&8JpR%_qwkwW)3~3CO z3}y^T42cZpKsuGdg25Cho(N>60_7}#tVAH+guw`?-jpF3$g%*cHU_ImV=x4&0b!HP IyDeRr0M5uuzW@LL diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 27f8bc4eebb49e6d0dabfc704ddc528f573430c7..412b1e1bec1a62fe6c4d8f8b1d11a80be27d88d1 100644 GIT binary patch delta 238 zcmZpe!rU;0c|r$E{>PvHH}-5;D)7`eRz1)v$-5zYcYx&1DAmnA%eM1t7@Jt67^ImQ zCMH{&rX^dLT3Do+8m1VTC#RX3CZ#5sr5L59BwD7WZPwlv$;q<**QC3XJN5?%@Saw_ zEgNp)HhuEr>P8pqjgw#OpP~R2e0Ciw2vi;WQkUzw>wLEC9bZy7H_ths!0KeSjZ|vEyR6yWjnDtdgGmjqi6~=NxMyZ>9mTl+PNHI1sNV7Cc zN;Ef1wJe<)d|Nl=Q;nf;Z1Opup;%!eGo`!eGFV z#$d@{#*oC2$Y2hnQyDB6Oo8HwKvpVH&H~6v1oBN7jDYG*8Ipl43!rLau!=MWL!cTE LHrdR5>?<<>>~c;# diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 5f58a6c459d36a91148f4a23964a1bc42ab69656..28f296a6c7d0eec88a9fe93717b3298a2c907b49 100644 GIT binary patch delta 259 zcmZp;z}s+vcR~lt+_w^U8+%%N7`OH?{izf(7GAfdP{i*v4r%NO-S17X$N##Xf$; z|7Yq;-U-_`BrrFy_!~2rFjz38Fc>hTF_(cCQ6!qg-&H8ss5G10`t$k;U5#3IQ!F*VH)2u-FZS}}`HGiB!9-eJP5 zqs>z5C%AU{j(Fw(f!gBC?jIL4ou^!HHrrzt%`;shfw@8fDtcH1DhgDuTgt1GO&OAbEDNA&W3Y-e21B445H{IfpUT|G1OTKGP}Kkc From 79c0d50949ee43aa04d094ec5f09152840bd5ed3 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Date: Thu, 2 May 2024 14:45:02 +0100 Subject: [PATCH 38/97] async ISigner.GetAddress() method -> sync ISigner.PublicAddress property (#915) * Refactored async Signer.GetAddress() into a sync PublicAddress property * Updated Scripts, Tests & Samples to reflect changes for "Refactored async Signer.GetAddress() into a sync PublicAddress property" * Auto-duplicate Packages Samples * Published Solution Dependencies to Package Libraries as DLLs * Comments update & linter * Published Solution Dependencies to Package Libraries as DLLs * RampExchangeriOS compile error fix * Published Solution Dependencies to Package Libraries as DLLs --------- Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: oleksandrchainsafe --- .../Runtime/Scripts/RampExchangerWebGL.cs | 6 ++-- .../Runtime/Scripts/RampExchangeriOS.cs | 6 ++-- .../Runtime/Web3AuthWallet.cs | 12 +++---- .../Runtime/Scripts/EVM/Remote/CSServer.cs | 2 -- .../Runtime/Scripts/EVM/Token/Erc1155.cs | 4 +-- .../Runtime/Scripts/EVM/Token/Erc20.cs | 2 +- .../Runtime/Scripts/EVM/Token/Erc721.cs | 4 +-- .../Runtime/Scripts/EVM/Token/Evm.cs | 8 ++--- .../Runtime/Scripts/Samples/GelatoSample.cs | 2 +- .../Scripts/WebGLWallet/WebGLWallet.cs | 19 ++++-------- .../Scripts/Prefabs/Minter/CreateApproval.cs | 2 +- .../Prefabs/Minter/GetListedCollections.cs | 2 +- .../Scripts/Prefabs/Minter/GetListedNFT.cs | 2 +- .../Scripts/Prefabs/Minter/ListCollections.cs | 2 +- .../Scripts/Prefabs/Minter/ListNft.cs | 4 +-- .../Scripts/Scenes/SampleMain/AccountLabel.cs | 4 +-- .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 2 +- .../Tests/Runtime/EvmTests.cs | 2 +- .../JsonRpcWallet.cs | 31 +++++++++---------- src/ChainSafe.Gaming.Gelato/Gelato.cs | 2 +- .../InProcessSigner.cs | 8 ++--- .../LootboxService.cs | 14 ++++----- .../MetaMaskSigner.cs | 31 +++++++------------ .../MetaMaskTransactionExecutor.cs | 2 +- .../ChainsafeRPCTests.cs | 11 ++----- .../ProvidersSendTests.cs | 4 +-- .../WalletConnectSigner.cs | 12 +++---- .../WalletConnectTransactionExecutor.cs | 2 +- .../RPC/Contracts/Contract.cs | 2 +- src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs | 11 +++---- .../Scripts/Prefabs/Minter/CreateApproval.cs | 2 +- .../Prefabs/Minter/GetListedCollections.cs | 2 +- .../Scripts/Prefabs/Minter/GetListedNFT.cs | 2 +- .../Scripts/Prefabs/Minter/ListCollections.cs | 2 +- .../Scripts/Prefabs/Minter/ListNft.cs | 4 +-- .../Scripts/Scenes/SampleMain/AccountLabel.cs | 4 +-- .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 2 +- 37 files changed, 101 insertions(+), 132 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerWebGL.cs b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerWebGL.cs index ab6950c67..41087ed9b 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerWebGL.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerWebGL.cs @@ -49,7 +49,7 @@ public RampExchangerWebGL(IRampExchangerConfig config, ISigner signer) public async Task BuyCrypto(RampBuyWidgetSettings settings) { - var userAddress = settings.OverrideUserAddress ?? await signer.GetAddress(); + var userAddress = settings.OverrideUserAddress ?? signer.PublicAddress; var hostLogoUrl = settings.OverrideHostLogoUrl ?? config.HostLogoUrl; var hostAppName = settings.OverrideHostAppName ?? config.HostAppName; var webhookStatusUrl = config.WebhookStatusUrl ?? settings.OverrideWebhookStatusUrl; @@ -71,7 +71,7 @@ public async Task BuyCrypto(RampBuyWidgetSettings settings) public async Task SellCrypto(RampSellWidgetSettings settings) { - var userAddress = settings.OverrideUserAddress ?? await signer.GetAddress(); + var userAddress = settings.OverrideUserAddress ?? signer.PublicAddress; var hostLogoUrl = settings.OverrideHostLogoUrl ?? config.HostLogoUrl; var hostAppName = settings.OverrideHostAppName ?? config.HostAppName; var offrampWebhookV3Url = config.OfframpWebHookV3Url ?? settings.OverrideOfframpWebHookV3Url; @@ -93,7 +93,7 @@ public async Task SellCrypto(RampSellWidgetSettings settings) public async Task BuyOrSellCrypto(RampBuyOrSellWidgetSettings settings) { - var userAddress = settings.OverrideUserAddress ?? await signer.GetAddress(); + var userAddress = settings.OverrideUserAddress ?? signer.PublicAddress; var hostLogoUrl = settings.OverrideHostLogoUrl ?? config.HostLogoUrl; var hostAppName = settings.OverrideHostAppName ?? config.HostAppName; var webhookStatusUrl = config.WebhookStatusUrl ?? settings.OverrideWebhookStatusUrl; diff --git a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangeriOS.cs b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangeriOS.cs index 9dc7f8f32..8e0b619c9 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangeriOS.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangeriOS.cs @@ -35,7 +35,7 @@ public RampExchangeriOS(IRampExchangerConfig config, ISigner signer) public async Task BuyCrypto(RampBuyWidgetSettings settings) { - var userAddress = settings.OverrideUserAddress ?? await signer.GetAddress(); + var userAddress = settings.OverrideUserAddress ?? signer.PublicAddress; var hostLogoUrl = settings.OverrideHostLogoUrl ?? config.HostLogoUrl; var hostAppName = settings.OverrideHostAppName ?? config.HostAppName; var webhookStatusUrl = config.WebhookStatusUrl ?? settings.OverrideWebhookStatusUrl; @@ -57,7 +57,7 @@ public async Task BuyCrypto(RampBuyWidgetSettings settings) public async Task SellCrypto(RampSellWidgetSettings settings) { - var userAddress = settings.OverrideUserAddress ?? await signer.GetAddress(); + var userAddress = settings.OverrideUserAddress ?? signer.PublicAddress; var hostLogoUrl = settings.OverrideHostLogoUrl ?? config.HostLogoUrl; var hostAppName = settings.OverrideHostAppName ?? config.HostAppName; var offrampWebhookV3Url = config.OfframpWebHookV3Url ?? settings.OverrideOfframpWebHookV3Url; @@ -78,7 +78,7 @@ public async Task SellCrypto(RampSellWidgetSettings settings) public async Task BuyOrSellCrypto(RampBuyOrSellWidgetSettings settings) { - var userAddress = settings.OverrideUserAddress ?? await signer.GetAddress(); + var userAddress = settings.OverrideUserAddress ?? signer.PublicAddress; var hostLogoUrl = settings.OverrideHostLogoUrl ?? config.HostLogoUrl; var hostAppName = settings.OverrideHostAppName ?? config.HostAppName; var webhookStatusUrl = config.WebhookStatusUrl ?? settings.OverrideWebhookStatusUrl; diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs index 9464df72b..84075a41a 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs @@ -5,7 +5,6 @@ using ChainSafe.Gaming.InProcessSigner; using ChainSafe.Gaming.InProcessTransactionExecutor; using ChainSafe.Gaming.InProcessTransactionExecutor.Unity; -using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Analytics; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; @@ -41,6 +40,11 @@ public Web3AuthWallet(Web3AuthWalletConfig config, IRpcProvider rpcProvider, IAn this.analyticsClient = analyticsClient; } + /// + /// Gets the blockchain address associated with this wallet. + /// + public string PublicAddress => signer.PublicAddress; + /// /// Asynchronously prepares the Web3Auth wallet for operation, triggered when initializing the module in the dependency injection work flow. /// @@ -98,12 +102,6 @@ void Web3Auth_OnLogout() } } - /// - /// Gets the blockchain address associated with this wallet. - /// - /// A that represents the asynchronous operation and returns the blockchain address as a string. - public Task GetAddress() => signer.GetAddress(); - /// /// Signs a message using the private key associated with this wallet. /// diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs index 78e54b82b..733344274 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs @@ -3,10 +3,8 @@ using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage.Model; using ChainSafe.Gaming.Web3; -using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; -using Scripts.EVM.Token; namespace Scripts.EVM.Remote { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs index bde92e885..c54756617 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs @@ -107,7 +107,7 @@ public static async Task MintErc1155(Web3 web3, string abi, string con { byte[] dataObject = { }; const string method = EthMethod.Mint; - var destination = await web3.Signer.GetAddress(); + var destination = web3.Signer.PublicAddress; var contract = web3.ContractBuilder.Build(abi, contractAddress); var response = await contract.Send(method, new object[] { @@ -130,7 +130,7 @@ public static async Task MintErc1155(Web3 web3, string abi, string con /// public static async Task TransferErc1155(Web3 web3, string contractAddress, BigInteger tokenId, BigInteger amount, string toAccount) { - var account = await web3.Signer.GetAddress(); + var account = web3.Signer.PublicAddress; var abi = ABI.Erc1155; var method = EthMethod.SafeTransferFrom; byte[] dataObject = { }; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs index 9aa7ffcaa..08d8b68a1 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs @@ -34,7 +34,7 @@ public static async Task BalanceOf(Web3 web3, string contractAddress public static async Task CustomTokenBalance(Web3 web3, string contractAbi, string contractAddress) { var contract = web3.ContractBuilder.Build(contractAbi, contractAddress); - string address = await web3.Signer.GetAddress(); + string address = web3.Signer.PublicAddress; var contractData = await contract.Call(EthMethod.BalanceOf, new object[] { address }); return BigInteger.Parse(contractData[0].ToString()); } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs index fb612370a..73763d6ed 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs @@ -132,7 +132,7 @@ public static async Task Uri(Web3 web3, string contractAddress, string t public static async Task MintErc721(Web3 web3, string abi, string contractAddress, string uri) { const string method = EthMethod.SafeMint; - var destination = await web3.Signer.GetAddress(); + var destination = web3.Signer.PublicAddress; var contract = web3.ContractBuilder.Build(abi, contractAddress); var response = await contract.Send(method, new object[] { @@ -154,7 +154,7 @@ public static async Task TransferErc721(Web3 web3, string contractAddr { var abi = ABI.Erc721; var method = EthMethod.SafeTransferFrom; - var account = await web3.Signer.GetAddress(); + var account = web3.Signer.PublicAddress; var contract = web3.ContractBuilder.Build(abi, contractAddress); var response = await contract.Send(method, new object[] diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs index 76ea40144..36985b9e9 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs @@ -60,7 +60,7 @@ public static async Task GetNonce(Web3 web3) { var transactionRequest = new TransactionRequest { - To = await web3.Signer.GetAddress(), + To = web3.Signer.PublicAddress, Value = new HexBigInteger(100000) }; var transactionResponse = await web3.TransactionExecutor.SendTransaction(transactionRequest); @@ -71,7 +71,7 @@ public static async Task GetTransactionStatus(Web3 web3) { var transactionRequest = new TransactionRequest { - To = await web3.Signer.GetAddress(), + To = web3.Signer.PublicAddress, Value = new HexBigInteger(10000000) }; var transactionResponse = await web3.TransactionExecutor.SendTransaction(transactionRequest); @@ -82,7 +82,7 @@ public static async Task GetTransactionStatus(Web3 web3) public static async Task UseRegisteredContract(Web3 web3, string contractName, string method) { - var account = await web3.Signer.GetAddress(); + var account = web3.Signer.PublicAddress; var contract = web3.ContractBuilder.Build(contractName); var response = await contract.Call(method, new[] { account }); var balance = BigInteger.Parse(response[0].ToString()); @@ -125,7 +125,7 @@ public static async Task SignMessage(Web3 web3, string message) // todo extract in a separate service public static async Task SignVerify(Web3 web3, string message) { - var playerAccount = await web3.Signer.GetAddress(); + var playerAccount = web3.Signer.PublicAddress; var signatureString = await web3.Signer.SignMessage(message); var msg = "\x19" + "Ethereum Signed Message:\n" + message.Length + message; var msgHash = new Sha3Keccack().CalculateHash(Encoding.UTF8.GetBytes(msg)); diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs index bfda4c681..0e91125ff 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs @@ -171,7 +171,7 @@ public async Task SponsorCallErc2771() { Target = target, Data = data, - User = await _web3.Signer.GetAddress(), + User = _web3.Signer.PublicAddress, }); while (true) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs index 164984690..2532b81c9 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs @@ -20,19 +20,21 @@ namespace ChainSafe.Gaming.Wallets public class WebGLWallet : ISigner, ITransactionExecutor, ILifecycleParticipant { private readonly IRpcProvider provider; - [CanBeNull] private string address; public WebGLWallet(IRpcProvider provider) { this.provider = provider; } + [CanBeNull] + public string PublicAddress { get; private set; } + public async ValueTask WillStartAsync() { // Get user address JS_resetConnectAccount(); JS_web3Connect(); - address = await PollJsSide(JS_getConnectAccount); + PublicAddress = await PollJsSide(JS_getConnectAccount); } public ValueTask WillStopAsync() @@ -40,12 +42,6 @@ public ValueTask WillStopAsync() return new ValueTask(Task.CompletedTask); } - public Task GetAddress() - { - address.AssertNotNull(nameof(address)); - return Task.FromResult(address); - } - public async Task SignMessage(string message) { JS_resetSignMessageResponse(); @@ -189,6 +185,8 @@ private static extern void JS_sendTransactionData(string to, string value, strin // Stub implementation for other platforms public class WebGLWallet : ISigner, ITransactionExecutor, ILifecycleParticipant { + public string PublicAddress => throw new NotImplementedException(); + public ValueTask WillStartAsync() { throw new Web3Exception( @@ -200,11 +198,6 @@ public ValueTask WillStopAsync() throw new NotImplementedException(); } - public Task GetAddress() - { - throw new NotImplementedException(); - } - public Task SendTransaction(TransactionRequest transaction) { throw new NotImplementedException(); diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs index b4998afad..84dfe725e 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs @@ -13,7 +13,7 @@ public class CreateApproval : MonoBehaviour public async void ApproveTransaction() { var chainConfig = Web3Accessor.Web3.ChainConfig; - var response = await CSServer.CreateApproveTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, await Web3Accessor.Web3.Signer.GetAddress(), tokenType); + var response = await CSServer.CreateApproveTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, Web3Accessor.Web3.Signer.PublicAddress, tokenType); Debug.Log("Response: " + response.connection.chain); try diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs index d7ff43f5a..377c9ff51 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs @@ -36,7 +36,7 @@ void Start() } async void LoadNftDataBuyPage() { - account = await Web3Accessor.Web3.Signer.GetAddress(); + account = Web3Accessor.Web3.Signer.PublicAddress; var chainConfig = Web3Accessor.Web3.ChainConfig; // create a reference to a list and iterate through it to gain token id List tokenIdList = new(); diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs index 5fff50f99..9c22c338b 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs @@ -128,7 +128,7 @@ public async void PurchaseItem() { var chainConfig = Web3Accessor.Web3.ChainConfig; BuyNFT.Response response = await CSServer.CreatePurchaseNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, - await Web3Accessor.Web3.Signer.GetAddress(), _itemID, _itemPrice, _tokenType); + Web3Accessor.Web3.Signer.PublicAddress, _itemID, _itemPrice, _tokenType); Debug.Log("Account: " + response.tx.account); Debug.Log("To : " + response.tx.to); Debug.Log("Value : " + response.tx.value); diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs index 72acdeafd..5f1ddf1a0 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs @@ -39,7 +39,7 @@ void Start() async void LoadNftDataSellPage() { var chainConfig = Web3Accessor.Web3.ChainConfig; - account = await Web3Accessor.Web3.Signer.GetAddress(); + account = Web3Accessor.Web3.Signer.PublicAddress; // create a reference to a list and iterate through it to gain token id List tokenIdList = new List(); // checks if filter should be applied diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs index 9db009603..94b3d949c 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs @@ -30,13 +30,13 @@ public class ListNft : MonoBehaviour public Text noListedItems; public Text playerAccount; - public async void Awake() + public void Awake() { description.text = ""; tokenURI.text = ""; isApproved.text = ""; contractAddr.text = ""; - account = await Web3Accessor.Web3.Signer.GetAddress(); + account = Web3Accessor.Web3.Signer.PublicAddress; } // Start is called before the first frame update diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs index 3ee3028e3..ff303ca83 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs @@ -7,9 +7,9 @@ public class AccountLabel : MonoBehaviour { private TMP_Text label; - private async void Awake() + private void Awake() { label = GetComponent(); - label.text = await Web3Accessor.Web3.Signer.GetAddress(); + label.text = Web3Accessor.Web3.Signer.PublicAddress; } } diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 681786c7b..a680fb5b4 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -118,7 +118,7 @@ public async void ContractCall() { object[] args = { - await Web3Accessor.Web3.Signer.GetAddress() + Web3Accessor.Web3.Signer.PublicAddress }; var response = await Evm.ContractCall(Web3Accessor.Web3, methodCall, ABI.ArrayTotal, Contracts.ArrayTotal, args); Debug.Log(response); diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs index cf7c3bbec..cb1fdcb75 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs @@ -48,7 +48,7 @@ public class EvmTests : SampleTestsBase [UnityTest] public IEnumerator TestContractCall() { - var address = web3.Signer.GetAddress().Result; + var address = web3.Signer.PublicAddress; object[] args = { address }; var callContract = Evm.ContractCall(web3, ContractCallMethod, ABI.ArrayTotal, Contracts.ArrayTotal, args); yield return new WaitUntil(() => callContract.IsCompleted); diff --git a/src/ChainSafe.Gaming.Debugging/JsonRpcWallet.cs b/src/ChainSafe.Gaming.Debugging/JsonRpcWallet.cs index 02d7f614c..fd47c8812 100644 --- a/src/ChainSafe.Gaming.Debugging/JsonRpcWallet.cs +++ b/src/ChainSafe.Gaming.Debugging/JsonRpcWallet.cs @@ -17,27 +17,26 @@ public class JsonRpcWallet : ISigner, ITransactionExecutor, ILifecycleParticipan { private readonly JsonRpcWalletConfig config; private readonly IRpcProvider provider; - private string address; public JsonRpcWallet(JsonRpcWalletConfig config, IRpcProvider provider) { this.config = config; this.provider = provider; - address = this.config.AddressOverride; + PublicAddress = this.config.AddressOverride; } + public string PublicAddress { get; private set; } + public async ValueTask WillStartAsync() { - if (string.IsNullOrEmpty(address)) + if (string.IsNullOrEmpty(PublicAddress)) { - address = await QueryAddress(); + PublicAddress = await QueryAddress(); } } public ValueTask WillStopAsync() => new ValueTask(Task.CompletedTask); - public Task GetAddress() => Task.FromResult(address); - private async Task QueryAddress() { var accounts = await provider.Perform("eth_accounts"); @@ -49,14 +48,14 @@ private async Task QueryAddress() return accounts[config.AccountIndex]; } - public async Task SignMessage(byte[] message) + public Task SignMessage(byte[] message) { - return await SignMessageImpl(message.ToHex()); + return SignMessageImpl(message.ToHex()); } - public async Task SignMessage(string message) + public Task SignMessage(string message) { - return await SignMessageImpl(message.ToHexUTF8()); + return SignMessageImpl(message.ToHexUTF8()); } public async Task SendTransaction(TransactionRequest transaction) @@ -78,7 +77,7 @@ private async Task SendUncheckedTransaction(TransactionRequest transacti { if (transaction.From == null) { - var fromAddress = (await GetAddress()).ToLower(); + var fromAddress = PublicAddress.ToLower(); transaction.From = fromAddress; } @@ -92,13 +91,12 @@ private async Task SendUncheckedTransaction(TransactionRequest transacti return await provider.Perform("eth_sendTransaction", rpcTxParams); } - private async Task SignMessageImpl(string hexMessage) + private Task SignMessageImpl(string hexMessage) { - var adr = await GetAddress(); - return await provider.Perform("personal_sign", hexMessage, adr.ToLower()); + return provider.Perform("personal_sign", hexMessage, PublicAddress.ToLower()); } - public async Task SignTypedData(SerializableDomain domain, TStructType message) + public Task SignTypedData(SerializableDomain domain, TStructType message) { var typedData = new TypedData { @@ -110,8 +108,7 @@ public async Task SignTypedData(SerializableDomain domain, var data = Eip712TypedDataSigner.Current.EncodeTypedData(typedData); - var adr = await GetAddress(); - return await provider.Perform("eth_signTypedData_v4", adr.ToLower(), data); + return provider.Perform("eth_signTypedData_v4", PublicAddress.ToLower(), data); } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.Gelato/Gelato.cs b/src/ChainSafe.Gaming.Gelato/Gelato.cs index 741348a94..1aaf60bb3 100644 --- a/src/ChainSafe.Gaming.Gelato/Gelato.cs +++ b/src/ChainSafe.Gaming.Gelato/Gelato.cs @@ -102,7 +102,7 @@ public async Task CallWithSyncFeeErc2771(CallWithSyncFeeErc2771Re ChainId = int.Parse(chainConfig.ChainId), Target = request.Target, Data = request.Data, - User = await signer.GetAddress(), + User = signer.PublicAddress, UserDeadline = request.UserDeadline, UserNonce = request.UserNonce, FeeToken = request.FeeToken, diff --git a/src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs b/src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs index f3148e18e..51d6d045c 100644 --- a/src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs +++ b/src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs @@ -15,8 +15,8 @@ namespace ChainSafe.Gaming.InProcessSigner ///
public class InProcessSigner : ISigner { - private EthECKey privateKey; - private EthereumMessageSigner messageSigner; + private readonly EthECKey privateKey; + private readonly EthereumMessageSigner messageSigner; /// /// Initializes a new instance of the class. @@ -33,8 +33,8 @@ public InProcessSigner(InProcessSignerConfig config) /// /// Implementation of using In Process. /// - /// Public address of signer. - public Task GetAddress() => Task.FromResult(privateKey.GetPublicAddress()); + /// Public address of signer. + public string PublicAddress => privateKey.GetPublicAddress(); /// /// Implementation of using In Process. diff --git a/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs b/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs index f4af46520..0c39f2bf5 100644 --- a/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs +++ b/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs @@ -126,7 +126,7 @@ public async Task> GetLootboxTypes() public async Task BalanceOf(uint lootboxType) { - var playerAddress = await this.GetCurrentPlayerAddress(); + var playerAddress = this.GetCurrentPlayerAddress(); return await this.BalanceOf(playerAddress, lootboxType); } @@ -165,7 +165,7 @@ public async Task CalculateOpenPrice(uint lootboxType, uint lootboxC public async Task IsOpeningLootbox() { - var playerAddress = await this.GetCurrentPlayerAddress(); + var playerAddress = this.GetCurrentPlayerAddress(); var response = await this.contract.Call("openerRequests", new object[] { playerAddress }); var requests = (BigInteger)response[0]; return requests > 0; @@ -173,7 +173,7 @@ public async Task IsOpeningLootbox() public async Task OpeningLootboxType() { - var playerAddress = await this.GetCurrentPlayerAddress(); + var playerAddress = this.GetCurrentPlayerAddress(); // This response is actually very different from all the others since it returns several components var response = (List)(await this.contract.Call("getOpenerRequestDetails", new object[] { playerAddress }))[0]; @@ -210,7 +210,7 @@ await this.contract.Send( public async Task CanClaimRewards() { - var playerAddress = await this.GetCurrentPlayerAddress(); + var playerAddress = this.GetCurrentPlayerAddress(); return await this.CanClaimRewards(playerAddress); } @@ -227,7 +227,7 @@ public async Task CanClaimRewards(string account) public async Task ClaimRewards() { - var playerAddress = await this.GetCurrentPlayerAddress(); + var playerAddress = this.GetCurrentPlayerAddress(); return await this.ClaimRewards(playerAddress); } @@ -298,14 +298,14 @@ LootboxRewards ExtractRewards(IEnumerable> eventLo } } - private async Task GetCurrentPlayerAddress() + private string GetCurrentPlayerAddress() { if (this.signer is null) { throw new Web3Exception($"No {nameof(ISigner)} was registered. Can't get current user's address."); } - return await this.signer.GetAddress(); + return signer.PublicAddress; } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs b/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs index d7083fa31..da5726cc3 100644 --- a/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs +++ b/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs @@ -17,16 +17,17 @@ public class MetaMaskSigner : ISigner, ILifecycleParticipant /// Initializes a new instance of the class. /// /// Metamask provider that connects to Metamask and makes JsonRPC requests. - /// Log Writer used for logging messages and errors. - public MetaMaskSigner(IMetaMaskProvider metaMaskProvider, ILogWriter logWriter) + public MetaMaskSigner(IMetaMaskProvider metaMaskProvider) { this.metaMaskProvider = metaMaskProvider; } /// - /// Signer's public key/address. + /// Implementation of . + /// Get public address of connected client. /// - private string Address { get; set; } + /// Wallet address of connected client. + public string PublicAddress { get; private set; } /// /// Implementation of . @@ -35,17 +36,7 @@ public MetaMaskSigner(IMetaMaskProvider metaMaskProvider, ILogWriter logWriter) /// async awaitable task. public async ValueTask WillStartAsync() { - Address = await metaMaskProvider.Connect(); - } - - /// - /// Implementation of . - /// Get public address of connected client. - /// - /// Wallet address of connected client. - public Task GetAddress() - { - return Task.FromResult(Address); + PublicAddress = await metaMaskProvider.Connect(); } /// @@ -55,9 +46,9 @@ public Task GetAddress() /// /// Message to sign. /// Hash response of a successfully signed message. - public async Task SignMessage(string message) + public Task SignMessage(string message) { - return await metaMaskProvider.Request("personal_sign", message, Address); + return metaMaskProvider.Request("personal_sign", message, PublicAddress); } /// @@ -68,12 +59,12 @@ public async Task SignMessage(string message) /// Data to be signed. /// Data type of data to be signed. /// Hash response of a successfully signed typed data. - public async Task SignTypedData(SerializableDomain domain, TStructType message) + public Task SignTypedData(SerializableDomain domain, TStructType message) { SerializableTypedData typedData = new SerializableTypedData(domain, message); // MetaMask doesn't work with regular eth_signTypedData method, has to be eth_signTypedData_v4. - return await metaMaskProvider.Request("eth_signTypedData_v4", typedData, Address); + return metaMaskProvider.Request("eth_signTypedData_v4", typedData, PublicAddress); } /// @@ -81,6 +72,6 @@ public async Task SignTypedData(SerializableDomain domain, /// Lifetime event method, called during "Web3.TerminateAsync". /// /// async awaitable task. - public ValueTask WillStopAsync() => new ValueTask(Task.CompletedTask); + public ValueTask WillStopAsync() => new(Task.CompletedTask); } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs b/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs index fc4172f00..3caff178c 100644 --- a/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs @@ -47,7 +47,7 @@ public async Task SendTransaction(TransactionRequest transa { if (string.IsNullOrEmpty(transaction.From)) { - transaction.From = await signer.GetAddress(); + transaction.From = signer.PublicAddress; } TransactionInput transactionInput = new TransactionInput diff --git a/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs b/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs index bd2006a8e..f910be67f 100644 --- a/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs +++ b/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs @@ -47,13 +47,8 @@ public void SetUp() var secondAccountTask = Web3Util.CreateWeb3(1).AsTask(); secondAccountTask.Wait(); - var firstWalletAddressTask = firstAccount.Signer.GetAddress(); - firstWalletAddressTask.Wait(); - - firstWalletAddress = firstWalletAddressTask.Result; - var secondaryWalletAddressTask = secondAccountTask.Result.Signer.GetAddress(); - secondaryWalletAddressTask.Wait(); - secondaryWalletAddress = secondaryWalletAddressTask.Result; + firstWalletAddress = firstAccount.Signer.PublicAddress; + secondaryWalletAddress = secondAccountTask.Result.Signer.PublicAddress; var amount = new HexBigInteger(1000000); var txTask = firstAccount.TransactionExecutor.SendTransaction(new TransactionRequest @@ -234,7 +229,7 @@ public void GetTransactionReceiptTest() [Test] public void CallContractMethodTest() { - var address = firstAccount.Signer.GetAddress().Result; + var address = firstAccount.Signer.PublicAddress; var contract = firstAccount.ContractBuilder.Build(nft721ABI, nft721Address); var ret = contract.Send("safeMint", new object[] { address }).Result; diff --git a/src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs b/src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs index 7cf856e1c..6e875e294 100644 --- a/src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs +++ b/src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs @@ -57,10 +57,10 @@ public void Cleanup() public void SendTransactionTest() { // Get initial balances and addresses for both sender and receiver accounts. - var fromAddress = firstAccount.Signer.GetAddress().Result; + var fromAddress = firstAccount.Signer.PublicAddress; var fromInitialBalance = firstAccount.RpcProvider.GetBalance(fromAddress).Result.Value; - var toAddress = secondAccount.Signer.GetAddress().Result; + var toAddress = secondAccount.Signer.PublicAddress; var toInitialBalance = firstAccount.RpcProvider.GetBalance(toAddress).Result.Value; var amount = new HexBigInteger(1000000); diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs index 025c22c88..faefa9eba 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs @@ -16,27 +16,25 @@ public class WalletConnectSigner : ISigner, ILifecycleParticipant, ILogoutHandle { private readonly IWalletConnectProvider provider; - private string address; - public WalletConnectSigner(IWalletConnectProvider provider) { this.provider = provider; } + public string PublicAddress { get; private set; } + public async ValueTask WillStartAsync() { - address = await provider.Connect(); + PublicAddress = await provider.Connect(); } ValueTask ILifecycleParticipant.WillStopAsync() => new(Task.CompletedTask); public Task OnLogout() => provider.Disconnect(); - public Task GetAddress() => Task.FromResult(address); - public async Task SignMessage(string message) { - var requestData = new EthSignMessage(message, address); + var requestData = new EthSignMessage(message, PublicAddress); var hash = await provider.Request(requestData); if (!ValidateSignResponse(hash)) @@ -50,7 +48,7 @@ public async Task SignMessage(string message) public async Task SignTypedData(SerializableDomain domain, TStructType message) { - var requestData = new EthSignTypedData(address, domain, message); + var requestData = new EthSignTypedData(PublicAddress, domain, message); var hash = await provider.Request(requestData); if (!ValidateSignResponse(hash)) diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs index ca0adfa45..0cfcaf583 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs @@ -32,7 +32,7 @@ public async Task SendTransaction(TransactionRequest transa { if (string.IsNullOrEmpty(transaction.From)) { - transaction.From = await signer.GetAddress(); + transaction.From = signer.PublicAddress; } var requestData = new EthSendTransaction(new TransactionModel diff --git a/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs b/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs index 603a8d3e4..09f0e6348 100644 --- a/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs @@ -261,7 +261,7 @@ public async Task PrepareTransactionRequest(string method, o var function = contractBuilder.GetFunctionBuilder(method); var txReq = overwrite ?? new TransactionRequest(); - txReq.From ??= signer == null ? null : await signer.GetAddress(); + txReq.From ??= signer?.PublicAddress; txReq.To ??= address; txReq.Data ??= function.GetData(parameters); try diff --git a/src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs index aa50308d4..cc3d2a9f4 100644 --- a/src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs @@ -14,13 +14,12 @@ namespace ChainSafe.Gaming.Evm.Signers public interface ISigner { /// - /// Asynchronously retrieves the wallet address associated with the signer. + /// Retrieves the wallet address associated with the signer. /// - /// - /// A representing the asynchronous operation. The task result contains - /// the wallet address associated with the signer as a string. - /// - Task GetAddress(); + /// + /// The wallet address associated with the signer as a string. + /// + string PublicAddress { get; } /// /// Asynchronously signs a given message. diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs index b4998afad..84dfe725e 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs @@ -13,7 +13,7 @@ public class CreateApproval : MonoBehaviour public async void ApproveTransaction() { var chainConfig = Web3Accessor.Web3.ChainConfig; - var response = await CSServer.CreateApproveTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, await Web3Accessor.Web3.Signer.GetAddress(), tokenType); + var response = await CSServer.CreateApproveTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, Web3Accessor.Web3.Signer.PublicAddress, tokenType); Debug.Log("Response: " + response.connection.chain); try diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs index d7ff43f5a..377c9ff51 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs @@ -36,7 +36,7 @@ void Start() } async void LoadNftDataBuyPage() { - account = await Web3Accessor.Web3.Signer.GetAddress(); + account = Web3Accessor.Web3.Signer.PublicAddress; var chainConfig = Web3Accessor.Web3.ChainConfig; // create a reference to a list and iterate through it to gain token id List tokenIdList = new(); diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs index 5fff50f99..9c22c338b 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs @@ -128,7 +128,7 @@ public async void PurchaseItem() { var chainConfig = Web3Accessor.Web3.ChainConfig; BuyNFT.Response response = await CSServer.CreatePurchaseNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, - await Web3Accessor.Web3.Signer.GetAddress(), _itemID, _itemPrice, _tokenType); + Web3Accessor.Web3.Signer.PublicAddress, _itemID, _itemPrice, _tokenType); Debug.Log("Account: " + response.tx.account); Debug.Log("To : " + response.tx.to); Debug.Log("Value : " + response.tx.value); diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs index 72acdeafd..5f1ddf1a0 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs @@ -39,7 +39,7 @@ void Start() async void LoadNftDataSellPage() { var chainConfig = Web3Accessor.Web3.ChainConfig; - account = await Web3Accessor.Web3.Signer.GetAddress(); + account = Web3Accessor.Web3.Signer.PublicAddress; // create a reference to a list and iterate through it to gain token id List tokenIdList = new List(); // checks if filter should be applied diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs index 9db009603..94b3d949c 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs @@ -30,13 +30,13 @@ public class ListNft : MonoBehaviour public Text noListedItems; public Text playerAccount; - public async void Awake() + public void Awake() { description.text = ""; tokenURI.text = ""; isApproved.text = ""; contractAddr.text = ""; - account = await Web3Accessor.Web3.Signer.GetAddress(); + account = Web3Accessor.Web3.Signer.PublicAddress; } // Start is called before the first frame update diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs index 3ee3028e3..ff303ca83 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs @@ -7,9 +7,9 @@ public class AccountLabel : MonoBehaviour { private TMP_Text label; - private async void Awake() + private void Awake() { label = GetComponent(); - label.text = await Web3Accessor.Web3.Signer.GetAddress(); + label.text = Web3Accessor.Web3.Signer.PublicAddress; } } diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 681786c7b..a680fb5b4 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -118,7 +118,7 @@ public async void ContractCall() { object[] args = { - await Web3Accessor.Web3.Signer.GetAddress() + Web3Accessor.Web3.Signer.PublicAddress }; var response = await Evm.ContractCall(Web3Accessor.Web3, methodCall, ABI.ArrayTotal, Contracts.ArrayTotal, args); Debug.Log(response); From 31781e4b8452d54d92a95f8a6ff576de28f62f61 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe Date: Thu, 2 May 2024 13:49:36 +0000 Subject: [PATCH 39/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 32256 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 16384 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45568 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 11264 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 223232 -> 223232 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index dfc24b78f0db543a6e05f96a33460c7958b8af3f..4d67bbeb907e3bfff72ae0198e917de10d2b135b 100644 GIT binary patch literal 30720 zcmeHw3w&GEk@wsy>FQxymSoG$!%38fL5UN^PMnZH2ytvDF>xLwhVV%1$hP8$$dZxd zB*qqTnn3AC_*xd|HWb=~M@w6vrKMfc$2R$(Ec8X`yIqndJlfK--O~2g1=@!F&zyTD z*$$MY{q6VrecvkFIWu$S%$YN1&YW}amCU*;KR`Ajvg3N=4WdU;@@Iv>w+17q_D=hv zmmYC{Yx<*F`?scd?1*PV{pnP1I@%ZNjwX|-Y^W<1N)IGM@nooF!{$(5swWmHEAz}U zRc~x1YS(NOSbqHzR&S?hMyN!qCrX0jQrsCgqYU9XjEl%8xUTGG2HP*6Q-I*}$41+( zXHovIP?{vO@cGU`q7953Cb}`Ngc;`N7*Q$E`)?xZuy}8$4CPH1X&2}ZF;J}WR?k#sDPf*{*U$8fQ(UAT%qD~MJW zk%HRUulTTSIyva^WkfHmC(?xbUk6k5a5a%<&bw8qSKkbUT5Xl>&Ky+Q=bUfyZDUE; zYo9Y!A3`wN=giP;IYGd{q$q|U&_99oqrzcT2m%INqa+0Z!)Y-DDQb$KQj&r|(rqyW zDU$S96@oyr#9|0yNq#*u3sX~@nF!lbQv{vF=rlnmGdf++8b)UVLl8?BQANE@=V9tGVg3MxF&s~> z4zdB#b91E(=H^H_tk_{l)&)qYFox`z^IbJfx+6Cgg1Xn90~@6y7n0J*!5wzYGW=oJ z?KybJKBr5!*&SYo*YG;S=fg$Z44vE2SKcOs3EKoMp4?W{u}$xiGMKwc%3;M0Ly~P` zDm;U2iiF{J4^Nb5PF^3PjP=#BzN<}rJ57CYrBAWLkYs&Kh0o3FxCpi(Fj+^Kb*zv! zdag-ITW+P4!5rjZ>#(X0qXp|?DvZ&Y_N<03#ByF&tF+N`tE9B$P!ApU9M&qzV6H{V zVI>wuOV-KM7@b%StP^wP$*q+(dJan*I&8UiDebv+QU-GuOF68>!f44lnF`O#+sUzk z6~#IutTQQX^jyl+(Wi7Mb{LYZgQ;-+C>>aQ`LSMW>KHP03@ROp9fl<9U~0_RuwGe5 z1KW`{bqq*p%Vngr=a6T`U)M-Eti-}-$vT+|FC1l;r)X@OrH!6L?iU@Kln%uXLy~nc zRWvq^iIO56TTC67OKHnpA!RUknUuq-I*b;qi>V@A>}zBP9%CbqahtT!b5T=Ar_!O= zVMwwLroxN!V`6)dQ1Uu@OdT;PZMp4I26Np~4y)=gTCgsrl&cY#>`W$`EDm{hKdQvL@!hTe+#&awMf`D!!1DOHR)Bg9?7P<-=2ejT~|rfu7?A#|HN!`pbv3H1**6_ z6ZE2QJ!rOrrd7~XrVnu^?i^dKa2bHJ_Kb5r`pv9{P`HA9RSA%~n9VQ(Mi`5m&8W_s zVdNlhnPKSRAe(VFk7bA}Dhz#?%QHdvx5x}5+|DW;s&Bs|$IhxMvLv;REm#krm}d+u z2qUwBxm9deH9+afP=!;Uc1F3RQXHo|;&+BGf#}J}XRURGu`-cIo3Nqq2QH!u;kvcB zLcphCJ6o(2*}|Ajh+_Wi^heYqfG~d?nXrrl74vsF=I?2=(=%8AMs6Xv&LM0g_B1k7 ze`RF~3BkjGpym=0W6dS&;km?eg%dfn1DH!3TIx<5L}&UCSMXeNc_vtCIg#68F5wfN zOYYEJbw?J?pPa+euzJ7iEqdoEe2d<_|MlK6Et9WXjNWVKRiAU+A|PjsPM$QRFi-6W z*MukX)J$k--LU z>NsN{Ss9skgAv9|OSm{VAY|N?GEd6sen)s4q*Sb*0 zdB&D+xLB9*+EP2Dxjw|cv8CeD+*A&k3#I$1+#a#W@j3_gVcq%J*@nlK+KCn=OWr`O zGnD|I>H{d%hma5LLo)$fDI_@~l?1!Y-RgkgmvM24NGHq&{R6Hg{{ 8G)lkTYt{ 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 H=YjtXU&6Ev diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 1c048147dc1ca89114820ddd0aafdd528ab04d03..09b7fe2114ca701cc5988491e749df15e81aa2a2 100644 GIT binary patch delta 235 zcmZqBY0#O_!LpXN_{PQ_4Nif!gkud?mmToh_t5V2lf&Uzn~!ixGHMu`Sfm)FnHeS~ zTbiaNTbNo{q?sC~7?~%hnVKf0CYhxerKKcVrln10<&I`K?7nyRD1&S+&v0V!SC;&f*{qGcPxDC)t%m#x^VNg%>_Ivtp3IfCJYt~DGUY- zX$)ozh75@e$qbeZra)dYP}~%VEr4uOpiByb5ra8U6vQ)SNMc9@Vl%L48jwr`>Plls K+x%EimIVN-WKPlm diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index d610c4a1f76da5a29c2ec43730425c17b53ef060..3f2efe75f9dd3b3c27514e584342b2471a441148 100644 GIT binary patch delta 6167 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 U49@faia#{_Sgh@$IG8g37k?DlQ2+n{ literal 16384 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index b302addd54599955c208f44006ef26505ffb4bc5..f9919c0a48ff0745b6e395563b8d6fe81735cca5 100644 GIT binary patch delta 17903 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 T?WOVhD?@gt?Yy9^D)jtci3h18 delta 18224 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 379f9c2f82dff4f35c1ba9c49b0fd9d4f0782b4f..c7634f0b9674b116d6e9d0c698d98ab99bd16ada 100644 GIT binary patch delta 1075 zcmX|=U1$_n7>3{P%+Aj42G;DZNtBqMHE7mEboS59YAY+LKWSWy#-Jfeo82ALU}$9% z5eb^rs4Z>U8jnh%5=^6_h@dWldLd%;BD7w#UfHXZh{cN{lu|78qTfu$&TyXdzVDg& zX3oqxg;XJR`YXrUYW0`VktH-SdSe%Dl|=RG$|$f?2E|I*N%eF^9;2bfg&3@33sXSF zY!KM$14vGmCuE!GtB;651#o=f2RscKG3a2U*ja$H5CM%1DE=;j^x=pK)Ex!hao^-( z-9C`-{k*5&e1`4?_HbX<(T)+;rKaB8(ee@Zm)PHy8y&4~!Om=o9CsXAd`_EFocM`M zUSsXS0<}Z);%B)+O>0lJh47yS~I(g^KQ|EN^oMza_8}l+Com;``_&# z7oOQp$*V2Wr`=p|f?s12ZbuDX;+D2t{;0LmeOcjZ9Lmrt1kl5*!~td|6DTgkAM3}ZhA#iW%?VJUtX z5>s5lN7HPsi)l;GnFC_Z)+Jmt#bq<}sm04=CXX%7T3o|x#{44YFZ)vKB;XHiFMnqz z6wW->XbE!@y5K1Ay5j5JA5wRpQdS^ReBeH*RrVMIpR^s!^z~*p-DEgN{Pz+9aN2KC?4|43ICsR zED&}mA$a9X;CU#K%<8$go{S|8BNpxM)?+y~MmD}rPln@>rkI||#f@B4K3bRwr_xUz zfYNQ|#IABH@a8F$y?^!jiSY7AJ-21NiI&OjWp$F8S8F?879}oQ8 ARR910 delta 1061 zcmX|ATWAzl82)wqd15Z zqeMk81ec>yjWh-|Qp`hjeJNBbO6djbOMUT88WDv;TVH(XL;o2E5B%TxzVBzgGxHDU zSkJMZv!`9Z+>0;OW}9fP_U%sEEQu0oQwI1%wuudLHznwtJWkVVs#(};JEMS#XKg?} z1dzNH?~+5}U~;RNQUKSXFyQMTAo*@dOu5)moJRC*qrM{A==~!q(0&wn!F$TXe0XB) zz~`ThTjw+cfPK8Tj|^jidC=n9Mn3$2_YV>0b(M<|Y@eF`d_)ptPD(2oO&mXqB;HW>f0q!llQ4Qay#7Ew+)dieUcaR(3 zzg2t4gI^t`jHx^1JKD`vV_GAgU`cDiBD}6m@@EdbB_p2Xv`HHg!6;)RCK%fx8I!oo zn87o~_uvy7(T~-P16ap6Z2Nl|GdzK1(T_4r>W7c9Z1b|iN3l!H*v^dY%wQDLV$pW4 zVl9^Th^rhCq6aLN#RHqKSPik_a6gCkaI8t6+IWR5=bnvEZOrjB$eOQK zvz*uSc~egton2*9*GrXB&ge9aVz+6^N6}LHM|1Kas4yh>rLS{U`KnZ7Oq^wXOoS`J z72_)tlf_tj@b;D0yQ_WQ4W8*+*L>J0yp-o+Uw1m@A-`jC^haCj`~L}CFD!gHzi-)a zZk&~T)Z(qRwm4Pmlktlrdni~BG~8DPGsq$j11XruA&nycpl;}_%Ixc0dFDEI40NK) j`hBc)lu+Ty*{;c0FMh$bzWP=n_14|Rj z)KnAW#6$y=6d)%x*)+|-($Lh%!o(mc#WXd=c=8dx7?z{Uj~||_!XF@TMn-y_x2S>R zmMa2NSifa7Pj2DgrvMdHG=T~NRXa!gOJn88X<=UVY`fX!BmpHhe{%*)hGYfr66Xu@F3kO+hZKvoJ=CKagClpzhwGX%1X7%YIY1`J7H-Kjv*c=Kg3U1k8{ C%0$ut delta 235 zcmZoLX)u}4!LoY#iXR($DtH8XbQhJxd@u0dni14@o@3Lx%_6)Vj2gx!7AXd4W`>E$ zmZoXR7N!;!X{LrLM&`+Brlv`$NoFZVX(@@8X=#&>@Wrr5y#9M)vI>8Iz|?hu7bmx* zIV@S9vTd!A>(a?B{QDH3f)`YvfUgzSI$c;SB!Ax-JB$##O80zV8UR*kiuZV zkj7xfV91cjkj!AoU<%|V1I0~&*aFBl1{C3 zZ*fgpGLhx~`^gcCn-rje^)66Bpz4UOi+^`cIo7uM%hrISo3)hW*!;~IEE$p+3>Z=v zOo5~&g9#9)0-*_mF+(B{8UR@-P?=PqN>he3FwYRkGGed*${H{vfpw<>N#o7aH8Pn2 D%E?XZ delta 235 zcmZpOXo#55!7|fBYvRV9Bhmtu0yo4LKZ|yry|Qy@iMP}4%?UC~nKg_}EK&^8%nTEg zEltysEle#e(o79gjLehMOihzglgv_#(ozyF)6ypEDja7qfAytv@(+aofn_%5)|8#? zcV0QC{jlD8waJqs6gMeA1)DRWfCfy{&YLf!yje?0j?Leg!GytrA%($! zA&tR|!H^-5A(_FF!4$|#28x>ku?3KA3Y1ABKx_sUO#_mNKwW7J LX`82OWHJK)jy_Cd diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index ef6be484cafbbf105173b365f5da75cc798327d1..6091c2ffb104dda3d2b4eb11d6f39eb8e3b23ca7 100644 GIT binary patch delta 254 zcmZoT!_;twX+j6f)lc$EH}?4G3pAWH-nZX~+iP*lm+xP{Xq0b$p>M=$Vs4pikYZ|J zX=0h0YGRz2Xkd~8rWsfoni^S{7$l{brluG(Ft9Q*FflMVF*4Xro@i>Yxz02! zjfEw|^!nr*vjYUwZn4{E&d+vP?>+bHDfLxLCR@yzpa2#8q7M}Wsa|uw>EH6+N!oUC zqR%(Km~()|-<-jcA(_E|A%(#dNLn(O0C6f1nlKnMBm$uUkd*?JNd>AjWk>__41p{o W1`D990Yeg4cPfxH-u!(bCkp^`5l}+_ delta 254 zcmZoT!_;twX+j4}gu|IX8+&~81=h|ej7=<34ARUD z6O%1X(~>PrEiBSZ4O5KFlhaI1lTwq+QjF445-rox7#LU?8JHLtoERBwCr>mr*j#5C zmd0Z7^T^D}H)aP2G`oafx$7S3)amx-Ti`2Q%gGjVCMZA!m0*HE)sj!0&X|5|I9sz- zxLJGii#Z2a{EZn*7%Ui47z`NF7|a+984?+i87vu0fxKj(xG4}@0NJKMnG^;i26Lb& dh-b=>#E=TaW?<1YAeji%mBx^^`TIgn766fmQYioc diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 16dd3891ce1aeed86b1a07fd97d2f2427e745739..8284e8aaf85235586f7d847aa2681d7ffc56cbbc 100644 GIT binary patch delta 235 zcmZoDX(*Y{!BTDa=-kGh5KVyzZ=%@eZM^8PU`f(_m$yF>Hh<7`XVEaXOg2a{HLx_X zOieX0PE0f~NdawI-DC;Bd3^h18~p%*D--gU%lce% zZQ}0ywfA>d`s6wK(-feBR}Vo2fvU~xvbP3&S^VmmTchEf%|QlPtp4TA+9b delta 235 zcmZoDX(*Y{!E$H$ou?anLNo=Axk)nfJ-FaJuRgB#P>}@B<`0_gEE>ip7AXd4W`>E$ zmZoXR7N!;!X{LrLM&`+Brlv`$NoFZVX(@@8X=#(=^=`5Rqgv`k{K)+Oo6;)ptvazTL9UnK$#Q)Ro4N Kwwc@PD>DEi>re6k diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 7938c3d9ba5a80cdfc0904a05bffb109b9139c24..cb9c2e26b279c3c4576433808e448452dcac6582 100644 GIT binary patch delta 3860 zcmZ8k3vg7`8UD|?_nv$AhOE1HvmqfN?B*etyjUOsRvsoiCIwWI0u|a)UWp2|t|X*W z32~P}Q9wGTcdAkcr(~v9sndsPk!rD>Ix0GLcsY)(%E0(4ZDC+)ryZva{r! zDK~VwIs9E%FK0~~OwFNWY}|UHap1deAX*tDWn-{LOm<>EvlXs?+Sbjp=k8%cO12azzw_#h%-+>sai z7Ewci^UH|b`X9&v0gGP1-DUf)L!`P=W4La-^x>$6Gr)%WSW3}!JtIXuGEBc5t_8=5 zV;t2(0!yj*vU{^X0rq_r!2?DzOR0&(^gQ$^C-qqudyxPYa zIC5`WVuObHmv+a)719at9BiafGjs@q!DYR3peZ+u?-N+47hvCynN#=`c~#uYtkY z*cZhS=qnXL3v#trUnb|B!1B&ed6xQs$89w6+tryC7oZhdP z@|2%|VN<)_FD`_Ps=+Xi`JPbH#||~TCv-Vj5mRypk7G8C{Sb*aEoNqW`!QY2ikeZ& z$6<1tyxxP5VAJM;>zfDIZV#Y2&E9ve$usjIFXUSxuH_pwhck%ZkU>YgG265KHV{qo z<#=>UK4E(hr|PqW?X2|CzYS+s$^jO~Y`KHS(Kwnn-(xym+iyplacC}wyGTdUOO87J z0%*>bd{ON93n8s1YUj%e4{AV{P?i7U#cAa`jQgyJ&xqkK3U-I;=br>qb1%_c^l>BV zShHeV@8-L1?_>Wv(4(F3ty#5#jz;;W1KqJ|$s&x$!5=k(OQCwcZ3y`jBzi>W5u4y{ z;r1m&&@Z}K-;tP6^Q>bTzo-YE`%Jb)bJHjCm{PRaU_7C5P##t>dJoQuUXo>|q9aDy zQnWOy2U}yU#yuK`B&!otY%3ZzhT*Wt88%&7W~~%1Mbs7BrEN}9D%z+gtCVc>l%}_v z#nAr6d;#_jy#RTU*1jV+p*CV1ve^F5R+gD}k)2DoDt4Hw_Bud$0wJDtPS|0(=J4BHz9kCYU5HY(G*Gh-I*qjI2z#E|omFFzYWi)5t`(wcJK?LbRIm4Rk)f_5A zNjh%*6vwGm{7fXNL;W1ck|fou5uxZ-`5f?H*7HEa&b|m!L4O>hcn!2^ozd#I3tB;| z=-vGG(ks?7=R?Tz&nwn3=OVby1oMwjnfg>1w64J23C^U9=608LDIqPoS92eQ%AKT8 zS=z1Holb)j!D=4PE5%jXLN=W#aIXqm+Vr0Scbp>9p_xg-^O3j$OP3aCj;EL?U0Pqz zePa5un4Zzxc`@n;RO{|)_B$^w;Y$~$Y_7nv@;Z96_L`DUg`nMndpwM&p2y=>&z`^v@W%a+Ql8_KKd2tAu55*lR&m9fz5AlElpFW zsg~-*d3c4zhoILxpMw6rbrrY;(_hfjN5#`-QY;Y_p*pdLc=w~?*{m6%a=}@5iDyAa z#Zy*NbctVBOs{b2K@Y1GOb-aApA<}AG?@Ok!SoSg``@GUqhbU$<>HvOdD)o-`b}qn zDA8$c74yv1n0}t~EpZQKjF1p%GaI2sy@D3Kf)<^7iO#(Qx$lNEm#!IiTv|3$jOGI? zr~_C-w*ea{1Drw60q4+Lz=iZaa2Z_&uF&#t0Nd%?h_Hw@0oUtjn;5e)r@3m+WkOruZvhA|Y7gqle+wETcHZWgYprYOxtKkEYN~G!=IoE)bOVm$1D|{d5af z+%5WPJLfcae*e04!F^s=aL(%p(y_->XaB}KH*Xp_6+5rW@^pK5cW+N$ANBQYTbGvv zuT5wOu1myaxaR~!A>B+ z+89^C%N9dRULH|cF6HcVCLoahr{vc zcZ3EOY{d$~=nNSS{#sQ#KjccSj#gSEWjG8B1F?+U{WgcxBLZM7%G-j1HIl+)H%!8s zm6zLTC~vV;j-jIcAR`JZ!K5J!`Fz=E4>To?)^OB(%HeS-A$g)I3Qw$5B)oR7U02j` z5`q=s&rQPK+A4Ar29nw7Io{%NY~bh|5k2_Rq?em#r8lLzTT|(lbWcyqj13!7E!|*x zHnrZCN>6K@KD#BgvAeaW8$WOt2$~lhs-6%`Oh$sgCE~%ZPaI32$AEdu_?+0)H?&gE4b9P(zS5F3WtM^VX2>-XXAVes4 z%9M{^eslYelK(8)b@~bTfA$<@Ix&M-$(HfMvY#beGP1Fao+a59SpJf12S|`s@2#Z8 z@5{UUY$>vgoQ4o4hR`X2G7U2^6HiJTn9$OckQV4LLpvQ9nvg&<1p))52{WD24D^qd zf&R|jeIK$#O47eNbfrD_o^#JV_k7*6cUKy`=^hFYk&64{kBOc@%U6$tzZuM7IK1k~ zFg;%LLdz3k{|ha{la>=J*!cV`j`Q=3-VZ)^~6ymd&Tl#Nx%Zt-k0( z{Y3jkfIfcnov)QvdxKWT>O?!yYEX2Kx;=?DhIV z%DdD!a>* z9))#NC`jkmLCiEmfpnA)bqv3{GfewPvtNEEJZyGmJ);YOlbB`^yvb^S_Z z27K!J)gZ_YHMA>q4c5YNBueos!8{uUOO%w^2H7^wMr3=&Bgcb~93_dxp?K~3%}N|j z(ipU@XL$%6yMyH|XL%uC9#RW(1G6>0TucCd#v6{KVY!UOn^~^ZZ7*cOqOz>dVT5&C zDciv8D%q;DG1)fGw#fF3#}>zmER!)$W+J{CeP<28db{i!ETAgtEPSRa!C4rnmhAwI z*KWmxSvW`f1y)Ntmddtq79M6hyx};k<24zJU&ZUtigu0u3U)wnM44f$Yn2&xMxD0d zcxZ+rV*?bH-E{>5vGz)3hCTGq+NB}s*oX495Sd>GS&O5AcpUA<9mMa_GZ{$&|06TvIJE0crOn?YGH=%)@nP@}G+;}?;p&LdCQQWt|s14vzW_U;Bw_#>{JHWQv zF{pUd*(MByW{`(!{#uMlA2fubAupy$8B-RoL_)Ku8t{VLPa!29h8JFoN%=g`5K_)? zTjdG40YfsZ4Vp5;OGUK&PAsD=kqbM!&|h1nUmi88Oz2^Kl2wG=Oz5p5^f95oim-_0GBJ5|vAi(0#43``m{lZdz@7GlA_G|iquNER))0)S$o2zJVq?^P5ESGI9?P}PA%HK1X1F5S|5Typ4}s+IvaN>%gXxdvnwFX52vogv5DjsWom=2oZNE$McGY)R#1Nrreb1D!&?lJEkx_-Ct zpS=7WKh>FNPi$%5(t!--YMlWrpiZwjOY|z*Q7E})$hEE9gu@&=uu~4f@oSC_(Ru81 zE)Q$=9vwio(6@kp57Aw-JCh${W?WE39AElST@5SupJEF^8%!sZNP=jBCzwPK%lnO> zCgC|J`^?8TWXK~L^D~YOCC_5K7iD>($5f_s6>bT%Tq2c$iibf;qi)xsbgXc=xq&0z( zrWz5ZD?rg`f6aFx=aJy7^v*v>$kD$5zr7W-5i7>dp~$--TiuC%0Czp@(>yFFv2RH% zK#M5=&Zi*7gfFj<7*YgS9YrMeu*4$NAhAD?SR*x33w;pWs0f-A9ZCziS|=b=TIjge z4NrbW`CCX_tvwFd9{Ld=DIMS!WQqBs%Y#qL(Pw?mOL=xc8cVp8o&>!kc)c7w2+1et zdSAYvQ#8aWhU>ZDY5h^IEAo0S_`d!Ha2<*`6VB_1?%bbhL623rWBnvv=FX$#DCE_rG{?v zu~y8hqpwSh*SlM(qd)e?T7rM5gz0^Wy(zkC1fui&YL@b*SfQ){_NtHZSUo+zrZQGf zulg8|Md;hDm9YqY-^X|iC%ko)G2XF){#@|>ycTI7=pk&(68r#t1(9Y-Lgtw)1+-k! zy*`gB$OAs@9+#XQQbHS|A#k#pVe6Nvsw^!kNYiv zwbTJvPunC+N;n|lVF_=P(2(#Xpr8jNd8pR^;HlcsNo@UJce$lekTP2K^Vc=OFbt!Tp!eHi_jb_ghu&|B9IZ*T}&p z@dkKW#JiH`L;VHx>uUZ{oD{dJZ)0^!e^*Rnt$I|eaje@XJ+NPTV867zS=!z#ZEu#g zC$K{vRuZT`j{>fszXV)EF9WvGF95gDx4Fm+wT_a%+D6a%Y0hhvhhi+C$`8q~>B%G7*83~Wl zm+3q72K}0@6JHZ5;zMNU7ZnA0&eb>ssNos03NVJu4&gO^6<{m+I$ednPI2^W@G8Cv za0B{x&?EHE*gjW?A#s!V5Al&u=YT?T<>KnERMDc!lagURS0}jmY3n^_xxYgBIXCht zEIRr{nMa}PxOp(wo6i<9rfa6< zasy5U-;qqGZ790y#K_2QBXt7S?y<~FdSM?Vq$}ZH$FyAp;gpp!59Hn5`C=|jS?O%b znXcm+xwK(>tL-(ML(tZg29^;v`#?VDlf51r?mG>_r1NM%8VCQn=Ae<9v~nhb@6N-q zT4nHKt2dt;wFYA_MFOiNrOW+vOVQi1`ZjpENR=ubcI%8W}!x|YT!sQ=UQ1)(p_uJ%2;mIC})n0 zvP>wicZ#EaS(HnA$CsDztwoBH_ZCF^^Aj}S3>t1~^0L_p6c1w%MMUlyt|qd>TFI>> zDPFqq*kv`NG(C~dWPDAefIW6TD^-`B%cgOu!EU$BME|Mmyh7KP&!Q|*+G{Q;M&wos z6AfA^JMZMj-9$M{oJ5~lK>advsp)~-tzIc9JIEaOiwh0#`u@(Y)EpYPoRlh8B;q;! zQz^5+S;hOaf}p$%!Qt>2MmTiCd1*YFfs%)iEvGCLXs#gA<7I-}{AC}5zf#SyJKd3y zF|V}KK67ffH8GHL%?ZdE;7Wq_sAHDa@F|Wru-A0`#{dl=2aenPM4(K$mq@vJh^eX# z{ZnSD$iym{3k}aJ?}>hQGSN4D&?(ivlEeEfV~YZH#$c~T>LquByV^UMJ$bJ2~Jdyy=q;FsZXe62$g(QMOrW$s>c1N z)37<^CXSdB#f)M1PZjuqf=qBebs{E`V-6D7d%j)1m9P^MRnB%6=I}!7P=RX=9(J}P z6V89Y$q_h<2}Jxj$6)DJgfFwS<5BfsCYIMGcIAG-$R!By@CDK zxS5(xWlU5#gw#ScgQSJd5Q+ZWDa+31vL-n2Ah6x}&!3Y;)A1Hhrc!VspHMu-D`>Bg z$qeKQ#d%Xb!eIWCc>tl9pCp99m{X{82a1`@LAyU&aHnzfE8tzM9r*9W>c@ak^ zm3Y4h)QT`OFAFwCiXx0RdTtve_cA?3%-2AANHj*8F+uYiwBQbC(R$oQ0H4|vP1kFE zE-W0KyP&ZRa~D{8Yl!)yb9b^5t&2lJJz5`bjATVPdNRmMgn2384Fo+vhEJ5*c12;u z>sN}JT1Ap0%U}R_Sn^4R4b%|QJYlmye34Si23D4dp%}bl00j=wi+x#aNduK7$C^X6 zdUOeNjL!XjIP7W16PR)m`h-;yN;u@XBwU`?8jQi%M?7O6spa9h$1v$H>Y!e!AH*LA z!eKxNmLa<{#8yKz93z*g^Rxmb(yBi{)9~>N8(%xD-!Xad-lE z-qsb39e)@%K5HVtx(o(ps#tws)+?e^l(&<_Am0r*?dTi!+wG6#peS4_=nH6{H<+Rx$-z(hj1t_KgaPj$)9!v z`1sw7Xs@8A#DRXCvAvW22LEie^VH@<2PA}-l#jA~mQ%|dy;m^*@kr+J0;k_Ssya)GcIV1sR3H~I2w|b(d zdvI5cfmHQPfia>ZLw!TNS4ukPZ%7&d*Pk(=^kw{G(DVpG-oCKBqCCnXB$F&f&J+}yR5e9fLLX$I?Q%d+2l z*?znE8Ed?FZ#XH9kRZB8O{dg^;R6e~_ zi}^p>=kL!%_;c#qd=t2e5T5Lp)0uA{?$3`BJ4d6d* z4genj+~fV%4gIzHZy$MIzjy_{yq5oGgD?KX<&`LjO3()=Al1N=d=H-Z89dhqaF*b6 z17EFjR^>UL0cZKlB00XVE`hEBI=PU+r;~{VB)x})1*|UpbkZ3604Ip$p!Z_6EY2-_ zmY9Y`1~61LT)p!2!BU4n9S1c*d*!&dQUYJl_#|SWZTX071#_H|JldXsZpRc!37qArQUAVi^@4`r$Hsf1sN@88e zL=*Q`NgW3?Fl!t?e09rsClO;lPiMiGfrn$*G4mr|(Szgv|JP^I13ljV4DRUoOj`e$ HH~PN;enZiu diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index c6bae6cc62cd049304cc6487ff5df6c0a24056cb..8d24a4ddb75b080fa31bc5bbb046803fbcff352b 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)gj%KYn_8hf_(Fn(Yc5R=l{ulmZ`eNpwP%-rftvDNDMK2VX9#2&F<1a)4H%NZ Px>JFq@%HbV897-1mZeSR delta 247 zcmZqpz}E1AZ9)f2^1JmD8+*3)Fn(Ycn6~TU{y?_*ZgW-lsoBlYuH4?k!8l{ChOvo7 zib0y0VPdkSX7-@4?@V;P6GO$`xWa}q13pIOH^K>;dyfek7OQXi_S7O^p(`_&(1NzUyx>lt-e z{EZn*7%Ui47z`NF7|a+984?+i87vu0fxKj(xG4}@0NJKMnG^;i26Lb&h-b=>#E=Ta WW?<1YAeji%mBx^^{rhG{P8I-{yHCsj diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index dbdafcae9c534863ee7fe1004cd520ac4a93a4be..33c5f13c03fbd4089d68764f25a7b61f4876c5e3 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6^n*)@@GH}>3c7x3~^ZIQqC+iwF?@^>{;_hp+)JVZD&%q^1*QcMjj zO)OJWO^g#04NOvioYZ8~Gy_XRQzHu#gQOJG)D+{*8vLD`# D2$e<; delta 238 zcmZqJ!`QHgaY6@+3c7qCng(%))!*K_7YP4BA)r4^e?JVZD&j7=<34ARUD z6O%1X(~>PrEiBSZ4O5KFlhaI1lTwq+QjF445-roxHg5=UVP^TaIbrwYAHe|v^WFI_ zuFdOr>1ud-uDgCJ|Kx~}Sqf0W7MLJVwe^RJf{Lqa&x>nXvGHsc3f;%zZ_HrAV8M{W zV8D>ZV8&p`kjRkCV98(#9(DnpRc)0*_vh0IcJ0W<|9gZ=v zOo5~&g9#9)0-*_mF+(B{8UR@-P?=PqN>he3FwYRkGGed*${H{vfpw<>N#o7CEnS%a D>dHvm delta 236 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≺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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 28f296a6c7d0eec88a9fe93717b3298a2c907b49..ad4dbbfe12e38e2ab056cebc8566fde3fbb8a9b4 100644 GIT binary patch delta 50026 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 CQLAMD delta 50200 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 From 87ec7f68fdab3b38db4f7d659005f0a4ea463131 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Date: Tue, 7 May 2024 12:19:25 +0100 Subject: [PATCH 40/97] Added Generic Extension Methods for Contract (#917) * Introduced Contract extension methods - CallSingle, CallMany, SendVoid, SendSingle, SendMany * Published Solution Dependencies to Package Libraries as DLLs * ContractExtensions Usage test updated --------- Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: oleksandrchainsafe --- .../RPC/Contracts/ContractExtensions.cs | 546 ++++++++++++++++++ 1 file changed, 546 insertions(+) create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/ContractExtensions.cs diff --git a/src/ChainSafe.Gaming/RPC/Contracts/ContractExtensions.cs b/src/ChainSafe.Gaming/RPC/Contracts/ContractExtensions.cs new file mode 100644 index 000000000..7e84410df --- /dev/null +++ b/src/ChainSafe.Gaming/RPC/Contracts/ContractExtensions.cs @@ -0,0 +1,546 @@ +using System.Collections.Generic; +using System.Diagnostics.Contracts; +using System.Linq; +using System.Numerics; +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; + +namespace ChainSafe.Gaming.Evm.Contracts +{ + public static class ContractExtensions + { + private static async void UsageExample() // TODO: move to documentation + { + Contract contract = null; + + // read static game data + { + var activeChaosOrbs = await contract.CallSingle("activeChaosOrbs"); + } + + // get team mate addresses + { + var teamId = 256; + var teammateAddresses = await contract.CallMany("getTeammateAddresses", teamId); + var blockedPlayerAddresses = new[] { "0x20934800uu9283798439873298dfu2f93" }; + var allowedTeammateAddresses = teammateAddresses.Except(blockedPlayerAddresses).ToList(); + } + + // block players + { + var blockAddresses = new[] { "0x20934800uu9283798439873298dfu2f93", "0x20934800uu9283798439873298dfu2f93" }; + await contract.SendVoid("blockPlayers", blockAddresses); + } + + // greet friends, read their statuses + { + var friendIds = new[] { "0x20934800uu9283798439873298dfu2f93", "0x20934800uu9283798439873298dfu2f93" }; + var onlineOnly = false; + var statuses = (await contract.SendMany("greetMany", friendIds, onlineOnly)) + .ToList(); + } + } + + /// + /// Asynchronously calls a read-only smart contract method that returns single value. + /// + /// The expected return type. + /// The contract instance on which the method is called. + /// The name of the method to call on the smart contract. + /// Optional. The prototype for the transaction request. + /// A task that represents the asynchronous operation. The task result contains the method return value of type . + /// Thrown if the response is empty or cannot be converted to the specified type. + [Pure] + public static async Task CallSingle( + this Contract contract, + string methodName, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, null, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously calls a read-only smart contract method that returns single value. + /// + /// The expected return type. + /// The first input type. + /// The contract instance on which the method is called. + /// The name of the method to call on the smart contract. + /// The first input value. + /// Optional. The prototype for the transaction request. + /// A task that represents the asynchronous operation. The task result contains the method return value of type . + /// Thrown if the response is empty or cannot be converted to the specified type. + [Pure] + public static async Task CallSingle( + this Contract contract, + string methodName, + TIn1 in1, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, new object[] { in1 }, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously calls a read-only smart contract method that returns single value. + /// + /// The expected return type. + /// The first input type. + /// The second input type. + /// The contract instance on which the method is called. + /// The name of the method to call on the smart contract. + /// The first input value. + /// The second input value. + /// Optional. The prototype for the transaction request. + /// A task that represents the asynchronous operation. The task result contains the method return value of type . + /// Thrown if the response is empty or cannot be converted to the specified type. + [Pure] + public static async Task CallSingle( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, new object[] { in1, in2 }, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously calls a read-only smart contract method that returns single value. + /// + /// The expected return type. + /// The first input type. + /// The second input type. + /// The third input type. + /// The contract instance on which the method is called. + /// The name of the method to call on the smart contract. + /// The first input value. + /// The second input value. + /// The third input value. + /// Optional. The prototype for the transaction request. + /// A task that represents the asynchronous operation. The task result contains the method return value of type . + /// Thrown if the response is empty or cannot be converted to the specified type. + [Pure] + public static async Task CallSingle( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TIn3 in3, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, new object[] { in1, in2, in3 }, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously calls a smart contract method expected to return multiple values of a specified type. + /// + /// The type of the items expected to be returned by the smart contract method. + /// The contract instance on which the method call is being made. + /// The name of the smart contract method to call. + /// Optional. A prototype object for the transaction request. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response is empty or if any items in the response cannot be converted to the specified type . + [Pure] + public static async Task> CallMany( + this Contract contract, + string methodName, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, null, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously calls a smart contract method expected to return multiple values of a specified type. + /// + /// The type of the items expected to be returned by the smart contract method. + /// The first input type. + /// The contract instance on which the method call is being made. + /// The name of the smart contract method to call. + /// The first input value. + /// Optional. A prototype object for the transaction request. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response is empty or if any items in the response cannot be converted to the specified type . + [Pure] + public static async Task> CallMany( + this Contract contract, + string methodName, + TIn1 in1, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, new object[] { in1 }, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously calls a smart contract method expected to return multiple values of a specified type. + /// + /// The type of the items expected to be returned by the smart contract method. + /// The first input type. + /// The second input type. + /// The contract instance on which the method call is being made. + /// The name of the smart contract method to call. + /// The first input value. + /// The second input value. + /// Optional. A prototype object for the transaction request. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response is empty or if any items in the response cannot be converted to the specified type . + [Pure] + public static async Task> CallMany( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, new object[] { in1, in2 }, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously calls a smart contract method expected to return multiple values of a specified type. + /// + /// The type of the items expected to be returned by the smart contract method. + /// The first input type. + /// The second input type. + /// The third input type. + /// The contract instance on which the method call is being made. + /// The name of the smart contract method to call. + /// The first input value. + /// The second input value. + /// The third input value. + /// Optional. A prototype object for the transaction request. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response is empty or if any items in the response cannot be converted to the specified type . + [Pure] + public static async Task> CallMany( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TIn3 in3, + TransactionRequest requestPrototype = null) + { + var response = await contract.Call(methodName, new object[] { in1, in2, in3 }, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is not expected to have a return value. + /// + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// Optional. A prototype object for the transaction request. This can include transaction parameters such as gas limit, gas price, value, etc. + /// A task representing the asynchronous operation of sending the transaction. + public static Task SendVoid( + this Contract contract, + string methodName, + TransactionRequest requestPrototype = null) + { + return contract.Send(methodName, null, requestPrototype); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is not expected to have a return value. + /// + /// The type of the first input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// Optional. A prototype object for the transaction request. This can include additional parameters for the transaction such as gas limit, gas price, value, etc. + /// A task representing the asynchronous operation of sending the transaction. + public static Task SendVoid( + this Contract contract, + string methodName, + TIn1 in1, + TransactionRequest requestPrototype = null) + { + return contract.Send(methodName, new object[] { in1 }, requestPrototype); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is not expected to have a return value. + /// + /// The type of the first input parameter. + /// The type of the second input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// The second input parameter. + /// Optional. A prototype object for the transaction request. This can include additional parameters for the transaction such as gas limit, gas price, value, etc. + /// A task representing the asynchronous operation of sending the transaction. + public static Task SendVoid( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TransactionRequest requestPrototype = null) + { + return contract.Send(methodName, new object[] { in1, in2 }, requestPrototype); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is not expected to have a return value. + /// + /// The type of the first input parameter. + /// The type of the second input parameter. + /// The type of the third input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// The second input parameter. + /// The third input parameter. + /// Optional. A prototype object for the transaction request. This can include additional parameters for the transaction such as gas limit, gas price, value, etc. + /// A task representing the asynchronous operation of sending the transaction. + public static Task SendVoid( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TIn3 in3, + TransactionRequest requestPrototype = null) + { + return contract.Send(methodName, new object[] { in1, in2, in3 }, requestPrototype); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return a single value of a specified type. + /// + /// The expected type of the return value from the smart contract method. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// Optional. A prototype object for the transaction request. This can include transaction parameters such as gas limit, gas price, value, etc., if necessary. + /// A task representing the asynchronous operation, with a result of the specified type , containing the return value from the smart contract method. + /// Thrown if the response from the smart contract is empty, or if the response cannot be converted to the specified type . + public static async Task SendSingle( + this Contract contract, + string methodName, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, null, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return a single value of a specified type. + /// + /// The expected type of the return value from the smart contract method. + /// The type of the first input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// Optional. A prototype object for the transaction request. This can include transaction parameters such as gas limit, gas price, value, etc., if necessary. + /// A task representing the asynchronous operation, with a result of the specified type , containing the return value from the smart contract method. + /// Thrown if the response from the smart contract is empty, or if the response cannot be converted to the specified type . + public static async Task SendSingle( + this Contract contract, + string methodName, + TIn1 in1, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, new object[] { in1 }, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return a single value of a specified type. + /// + /// The expected type of the return value from the smart contract method. + /// The type of the first input parameter. + /// The type of the second input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// The second input parameter. + /// Optional. A prototype object for the transaction request. This can include transaction parameters such as gas limit, gas price, value, etc., if necessary. + /// A task representing the asynchronous operation, with a result of the specified type , containing the return value from the smart contract method. + /// Thrown if the response from the smart contract is empty, or if the response cannot be converted to the specified type . + public static async Task SendSingle( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, new object[] { in1, in2 }, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return a single value of a specified type. + /// + /// The expected type of the return value from the smart contract method. + /// The type of the first input parameter. + /// The type of the second input parameter. + /// The type of the third input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// The second input parameter. + /// The third input parameter. + /// Optional. A prototype object for the transaction request. This can include transaction parameters such as gas limit, gas price, value, etc., if necessary. + /// A task representing the asynchronous operation, with a result of the specified type , containing the return value from the smart contract method. + /// Thrown if the response from the smart contract is empty, or if the response cannot be converted to the specified type . + public static async Task SendSingle( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TIn3 in3, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, new object[] { in1, in2, in3 }, requestPrototype); + AssertResponseNotEmpty(response); + return AssertAndConvertSingle(response); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return multiple values of a specified type. + /// This method is suitable for interacting with smart contract methods designed to return an array or list of elements, allowing for the retrieval of multiple items in a single transaction. + /// + /// The type of the elements expected to be returned by the smart contract method. The response will be cast to an enumerable collection of this type. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// Optional. A prototype object for the transaction request. This can be used to specify additional parameters for the transaction such as gas limit, gas price, value, etc., if required. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response from the smart contract is empty or if any of the items in the response cannot be converted to the specified type , indicating a potential type mismatch. + public static async Task> SendMany( + this Contract contract, + string methodName, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, null, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return multiple values of a specified type. + /// This method is suitable for interacting with smart contract methods designed to return an array or list of elements, allowing for the retrieval of multiple items in a single transaction. + /// + /// The type of the elements expected to be returned by the smart contract method. The response will be cast to an enumerable collection of this type. + /// The type of the first input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// Optional. A prototype object for the transaction request. This can be used to specify additional parameters for the transaction such as gas limit, gas price, value, etc., if required. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response from the smart contract is empty or if any of the items in the response cannot be converted to the specified type , indicating a potential type mismatch. + public static async Task> SendMany( + this Contract contract, + string methodName, + TIn1 in1, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, new object[] { in1 }, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return multiple values of a specified type. + /// This method is suitable for interacting with smart contract methods designed to return an array or list of elements, allowing for the retrieval of multiple items in a single transaction. + /// + /// The type of the elements expected to be returned by the smart contract method. The response will be cast to an enumerable collection of this type. + /// The type of the first input parameter. + /// The type of the second input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// The second input parameter. + /// Optional. A prototype object for the transaction request. This can be used to specify additional parameters for the transaction such as gas limit, gas price, value, etc., if required. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response from the smart contract is empty or if any of the items in the response cannot be converted to the specified type , indicating a potential type mismatch. + public static async Task> SendMany( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, new object[] { in1, in2 }, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + /// + /// Asynchronously sends a transaction to a smart contract method that is expected to return multiple values of a specified type. + /// This method is suitable for interacting with smart contract methods designed to return an array or list of elements, allowing for the retrieval of multiple items in a single transaction. + /// + /// The type of the elements expected to be returned by the smart contract method. The response will be cast to an enumerable collection of this type. + /// The type of the first input parameter. + /// The type of the second input parameter. + /// The type of the third input parameter. + /// The contract instance on which the transaction is sent. + /// The name of the smart contract method to which the transaction is sent. + /// The first input parameter. + /// The second input parameter. + /// The third input parameter. + /// Optional. A prototype object for the transaction request. This can be used to specify additional parameters for the transaction such as gas limit, gas price, value, etc., if required. + /// A task representing the asynchronous operation, with a result of an , containing the items returned by the smart contract method. + /// Thrown if the response from the smart contract is empty or if any of the items in the response cannot be converted to the specified type , indicating a potential type mismatch. + public static async Task> SendMany( + this Contract contract, + string methodName, + TIn1 in1, + TIn2 in2, + TIn3 in3, + TransactionRequest requestPrototype = null) + { + var response = await contract.Send(methodName, new object[] { in1, in2, in3 }, requestPrototype); + AssertResponseNotEmpty(response); + AssertConversionMany(response); + return response.Cast(); + } + + private static void AssertResponseNotEmpty(object[] response) + { + if (response.Length == 0) + { + throw new Web3Exception("Response value is empty."); + } + } + + private static TOut AssertAndConvertSingle(object[] response) + { + if (response[0] is not TOut result) + { + throw new Web3Exception( + $"Can't convert response value to {typeof(TOut).Name}. Actual type {response[0].GetType().Name}"); + } + + return result; + } + + private static void AssertConversionMany(object[] response) + { + if (response.Any(o => o is not TOut)) + { + throw new Web3Exception("Type mismatch for response item."); + } + } + } +} \ No newline at end of file From 1724c229ef8eb894b045ea31b6b7dacdaa050b21 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe Date: Tue, 7 May 2024 11:24:01 +0000 Subject: [PATCH 41/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 223232 -> 239616 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 4d67bbeb907e3bfff72ae0198e917de10d2b135b..0b0a75ff38170d2d5d17f5c7e688e5d56eb81417 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@6MgrgbjXfdJ0-D-+i<36m`80T3{y3X2GxdNylP<6ojyl3$yyw8kI205PGd?8PR)!%}_oFSDV z8Azrvm@!xY$rOe}h9m}KFtz~lk{C>YqUJ!B8G|WWCjC< z6b4fuX~|#$#Hm1N!eGph2!sYeRti)m6{ymbAq~tk1hR}6EP%2G3`tx*l;o{cQnhpeKRghPT>v^cy{Ptz>$_W z-gEBO%+ATs=FKAH(&c!x4D2vh1K7J!JHwLAsI-f zF_Hjhq= delta 235 zcmZqBY0#O_!Lpz-!LoMI?;9I?cvJ)$e!g-E+jQM|g2B-~j%2TMn^&kDV9~HJPfa#YGqXrb zNlY?MGPX!bGD$N}F*CI^FfdIsNHj@JG%+(aG&bBkL9>IAMb|;>)npm%00Ds`_P;r| zUiO>nx^6+)(G6cF*J$@BKn3MOp@JaQpBUf9D`v}NZd@<*ZL@|>4y(TfgE>PgLo$#| zV=!Z|0Fo&Ti3~{$#$ap#z-!E!w9&CQKHJSqb25|+P@@W1kI3Vooj>ctegd4B%+PJql1kabKt)P<1R@Q{KNXH|IFtS(aM9Swkm>)!&@Kk|CMFfFXs! z6i8Y!m;iAq5SlO;Gb93`0g#mfl}QDvG-XHw^9+G3BL)kgtN}w3Sa&LrG~WE!P?iM% DDoICd diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index f9919c0a48ff0745b6e395563b8d6fe81735cca5..c1dcead4d07b63bd21aa92cea2cdc84f515b2e2d 100644 GIT binary patch delta 242 zcmZp8z|`=7X+j6f1NM#oHui)}5McH^w#d(EpYNpbkKg{Bi2l9#!vsGb4GZ(sWb-sL zi?o!)B;zDwixblhi~LGh;(z!^vyrYi{nJdz6c%DaHKOujXfa~1RAARF$Zm^^WEm5&Q~9tn7aAH1V0`PbIW9d6jK9B z6U)?86XV201CtaWCpFnL&A`&o)X2ibASuN(HN|-Hn)#ZW`{y3zV!1xu==J1?6#)Y6 z`FS7fGxj)aY%)$H9H1BN89?o=RY Kym|LpS0(@@pH5r= diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index c7634f0b9674b116d6e9d0c698d98ab99bd16ada..0d5c61ebad9ce0312571b1539ec50c0f5552ea10 100644 GIT binary patch delta 235 zcmZp0XmFU&!J-(&e0XEe13`g5o49A_O!D;Xs-4^OxM+>a<{BX_CJhVo)MWECGmEs8 z#3bV+V~dm|lQi=bGgC_g1Jg8vM3dA+6EkB&W5dbkM3PtzZZ7#f*+euz;DkBbm)LES zeOvq3u2pv23Yt7cbcO;{u+|kS2vl9o>#q4|yd(w_pr|>JWyWC2V98(rgr-0d1E4w+pk5GZ22^hd!kgt~ H9x?*}O|MD? delta 235 zcmZp0XmFU&!D1!HdTC?N13`gZzL}TxD+7IdZDu~$m}4iqxkgBfNyFSS*&xN#z|zDr zHPys8G10&z1;|NFHcd0IG&D7`Ffm9kgu$305eN-{tQ4qBDo~{8Iz`nVHeen@Y z-VFMh$bzWP=n_14|Rj z)KnAW#6$y=6d)%x*)+|-($Lh%!o(mc#WXd=c=8dx7?z{Uj~||_!XF@TMn-y_x2S>R zmMa2NSifa7Pj2DgrvMdHG=T~NRXa!gOJn88X<=UVY`fX!BmpHhe{%*)hGYfr66Xu@F3kO+hZKvoJ=CKagClpzhwGX%1X7%YIY1`J7H-Kjv*c=Kg3U1k8{ C%0$ut diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index d8aba4d31f985cb33ddea116523cc65af07450a7..b15897acefb85c6d0441315e856b4d767e6ab28f 100644 GIT binary patch delta 234 zcmZpOXo#55!J=BYVE@LRBhmsKBGExX%HN&am&+Dg0trREG7|jB7tPYbnXG`CBlUGo&&k1IaW7 zGX@JFnZl6Bki=jN#uh+c5`zg))Evk%V=!f~WH10iQ=o_eP@M@-FNib)sy77T&C@k9 FnE`SoNdy1@ delta 234 zcmZpOXo#55!P2nu=9`T@N2CSB-Re0$G#zoA^g$@-Zu;@}n-gS~GHaMyCL5%f8d#cG zrly)0Cng%0qyRao$);%rmWHNA7A6KsDW<6@#*=jwPB5=Kbz|}mg#dvC(+@F~1ReHo zaZOq>k>&sU$q|a16rh6jE>OXcb*Cb_F8uw+PPFknbw zFa?s93?@LF3WO#M#tex-XaHoTKxI;aDoq*Ez&t}B%ZR}OC~Lrw1lFAjB#k#u*T`fB E0D4_bmjD0& diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 6091c2ffb104dda3d2b4eb11d6f39eb8e3b23ca7..b93b0c824f5c41888b08e4eb29d66181c6fe70af 100644 GIT binary patch delta 254 zcmZoT!_;twX+j5!Ps`m zSQ<I!P delta 254 zcmZoT!_;twX+j6f)lc$EH}?4G3pAWH-nZX~+iP*lm+xP{Xq0b$p>M=$Vs4pikYZ|J zX=0h0YGRz2Xkd~8rWsfoni^S{7$l{brluG(Ft9Q*FflMVF*4Xro@i>Yxz02! zjfEw|^!nr*vjYUwZn4{E&d+vP?>+bHDfLxLCR@yzpa2#8q7M}Wsa|uw>EH6+N!oUC zqR%(Km~()|-<-jcA(_E|A%(#dNLn(O0C6f1nlKnMBm$uUkd*?JNd>AjWk>__41p{o W1`D990Yeg4cPfxH-u!(bCkp^`5l}+_ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 8284e8aaf85235586f7d847aa2681d7ffc56cbbc..7a00eb651c86498affd014f4d3f510309d0a52ce 100644 GIT binary patch delta 235 zcmZoDX(*Y{!O|AkdUj(^h^9cur9AE%jc@%naR2o2l#gEnJ;YrY#A&2rOiPGS*-pR4CV}}49P$; zjlqn;0!XGXBr+s17=y6|ke9?@0u(g|vdkDv87vtLfY1~uVgOWU0@Mp4&4B6+L3lH_ H*;i%&^e0V< delta 235 zcmZoDX(*Y{!BTDa=-kGh5KVyzZ=%@eZM^8PU`f(_m$yF>Hh<7`XVEaXOg2a{HLx_X zOieX0PE0f~NdawI-DC;Bd3^h18~p%*D--gU%lce% zZQ}0ywfA>d`s6wK(-feBR}Vo2fvU~xvbP3&S^VmmTchEf%|QlPtp4TA+9b diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index cb9c2e26b279c3c4576433808e448452dcac6582..4e76191a2f889465a9801d4aa5db27153ea68b8c 100644 GIT binary patch delta 235 zcmZqhY4DlQ!LsX`)UJ&^0ulm$84Gx~YO=ZQiCXh8Le`6M^BRd?Od1yEsmbPPW)^8F ziAlyu#uh0_CTZp=W~P<~2Bv8Si6*IuCT7Nl#)gy6NzY=j@z>u!IY%Zy;Odr=S;u`6 zU1!NP7!)Kp#!NmV)1?3v{CW#22vS`rP;+7B>$_bQA&G}Jm&tOm_**cTGo&&k1IaW7 zGX@JFnZl6Bki=jN#uh+c5`zg))Evk%V=!f~WH10iQ=o_eP@M@-FNib)sy77T&F2*j FSpfA?N0k5o delta 235 zcmZqhY4DlQ!Sej|^qm`f1SACFoefR~eAwnaZPiQx(Tnyvo7YJEV$v|TOg2a{HLx_X zOieX0PE0f~NdavaV z3M4HVOn^8Q2u&D_84`ie0LV&#%A^8Snlhw;d4@oi5rYL#)_@@itUDD*8gD+YXvhKp D2WLo% diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 8d24a4ddb75b080fa31bc5bbb046803fbcff352b..310ae449339a0354943fc119ada529f54eb081e4 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f2!>KhZ8+*3)Fn(Yc_#Iv{e>r=+N8^LKsk3*n1a0r(V4N{m!@@i@ z**wk6A}u8`$vDZ_A|=Tr%{;}-)Y8DfG|eEYqUJ!B8G|WNDMK2VX9#2&F<1a)4H%NZ Px>JFq@%HbV897-1mZeSR diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 33c5f13c03fbd4089d68764f25a7b61f4876c5e3..109ba1ae5143bedaa2bf9ef8198b0f44fd146c0c 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6^nhO*W*8+&fJ3rxQ2qp6y{$Zyjei7l!=Y)YF;JVZD&EX-4r&C|>* z(ozzWjFXHlQj$#4%u~!vEe#Az(+m<#QWH(gj17$qH*W}VVP?4@+jMI3kKh1-+`Tia zEBxlWtax-MptZOD@#Kh*Sqf0WEg4WjplYw1DsLBr-~T$(B>Cj?%|fC3So|#*%o$P{ zl7VCzgBgPbkW67nWJqE#24f2#FNwhfC~6L5nK76$STYy@p(#+r0I1Fcs24<<0o5CV K@Mig_hs*%i>rTc1 delta 238 zcmZqJ!`QHgaY6^n*)@@GH}>3c7x3~^ZIQqC+iwF?@^>{;_hp+)JVZD&%q^1*QcMjj zO)OJWO^g#04NOvioYZ8~Gy_XRQzHu#gQOJG)D+{*8vLD`# D2$e<; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 01c747994660a3e2c23ca06b30453c33e55d2e9b..dbef1b2d583b8cbc9d24495523731dae52b6fd39 100644 GIT binary patch delta 236 zcmZpuXsDRb!Lt9_w{IJJG?WD1EA3j}>0Ii&C0=yyHXl*?%%Wjoo|m3MvRzy?2K5;Tip$-fW+jY(8MThSlGK!JHwLAsI-f zF_B9(DnpRc)0*_vh0IcJ0W<|9gZ=v zOo5~&g9#9)0-*_mF+(B{8UR@-P?=PqN>he3FwYRkGGed*${H{vfpw<>N#o7CEnS%a D>dHvm diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index f8aeb7a2cfd90b6a5926e5d5478679e32b1daf0d..c7fc1a85b604ce8e5e4aa928d2d3204e1adea3f0 100644 GIT binary patch delta 263 zcmZpe!rU;0c|r$EnajBs8+%%o3aAxnwp@L{?zO1l6T>#4RSz~REL+8IYGIz5Y@TLj zk(QE}WSnGdk&kI2MA27n7d_{-Uq+EvOi{QJh-`I@`n9W6rh5Af1!dv z)zVAVuDoM4@70!5d?LF!YkdvBhnr2{WXli6(Vvv+#nwnzFz`)ALz{J4N(7?!0Jvp&ke)9Zn zev|8V@ocWxc7=oGNOj?*$pQNV1Ok4a_!;xw!gsH1_Kz@$)moD`?4P0l6+HVFDhN{T zta{^a-LDf~Ry^OdHm4kjVD&d=uw+PPFknbwFa?s93?@LF3WO#M#tex-XaHoTKxI;a gDoq*Ez&t}B%ZR}OC~Lrw1lFAjB#k$7AN$G-0I;%H;Q#;t diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index ad4dbbfe12e38e2ab056cebc8566fde3fbb8a9b4..a8f0fd9b34f36fdd486600d50acf3d9fa724a27a 100644 GIT binary patch delta 89065 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

c*j-{T+O> zS0g0`29dgobjw6)RK&)3C1E6|TqdqX_1<`!t~gEkeNx=Uk;*kw#o8k_-mZ)pWrQB< zd)LN9rNE=6ZM;*tV5(d0ethG2B__d$yyfm^H{Pu{Otmg<*~SSHpZPE*YsRkd-FQfI1%1|Q#;qS$UX5{i_%jcLmBrkXVPmyJ`E z5>uVGdu>Wr{O{n%#p2-2UYj0JWJ}*9#OWN>ZPQcHvLQaMTeZ{^*Y@wWhmMh zPB_nNBV9seC_aY5p?FLQ_NacF9#ia4=e@b{XDid8a=cP*zID@VCByJ3{N4AH$~IH+ zci&GcRZ#Q9<8+vwRJ;;(F7UjL~`JiP4kr%P>aQt;0HH7uN*XezXs3V zv`~o}hx6Yuksj#Sv{JTn~Ib!_ZX4CwBNAl4Q0Nm zKC)MBTC3DT>GQ|k`io>G@Zr-JcB+li$@@e}wHod1L8%ifRdhXpioi^YKs^Gdp^$)-9ubwNotbrBRF znC|}F)i(^~HGdNQe@J~B>b!Tyn588>RnCLYjnotLO^xN~&9r2@;cU*KG3r(%Tqdd} zy-aGiN3AaDqaHTZ&y&`b^i|Jzd?h9Q)Neg%XUPCHIE^#qT=ta=QWH$|jQ`;heTaIe zM}Ax~M7`HkKMix2+@hwKYSgf=OKfVosUAxGu_RW_@hHodc=c6}3fVGT-QiIkwj`(@ zdsM$IiRu-P8nxvvdRNmFqizqS-nS)5?dDOBZn3K)Jt}8QnwsuWE4JLP&iAMdTOL;5 z^r&519#{8z)QK&bYOP1rZOKwCQ|rr9x6W7f4j$QR>q7N5kLs~?nL6F0hHqV^&iAPM zwysuJdDJ6Y-&9LH>Y1(U)dL>&($tPj-6KESx=WqpQCGL_ zQx|wt;IV~ zb9JJro=(`l?F)6LM;+UCQ7!gFezWZ>^*d9&nqb}jwHkIm&VS3qs|jJ-zfrs2Zxs0A zq+Z*PTr zxVq$b^%^PK|7D_GqP|^dJ~NEs+a>NSQMECq`f2onZBolKRri$K?G~-bRPz&aw_COK zrkdV)#r7uJ7E{G~t=R6R?KG9rY{hnO?LAY?@L93FsdktZ-~UwwzPi1c_M_>%?DyvO z=9K8+a ztkjF!TWUTJa`E%T`C&h7Z>IR z@4$L#GflgP!>l*VgQO?7lqe(5kR!&GM{y;6Fs z_OwUon@Vrf78#QEa8K!Q?NzA7qTQ4O0VA|G&CnBp7kx)++f7vz7-Su(9W+&1!okv! zTJXP&YNsU}D;=d}c+~0A(b@%%`l57<_OnNQt(PWhp&9iFuaw@Y4f3dKrFUufd6e97 zw^ra$zB?vpzj{>b9m$&iWA(X2?wF``^Qi7SCTaJWYHQ$-9h0>>sAbeiZ{4A%X`zpE zLY8;#n5M-;@u;95)M*JG6%=s4c8{UNuE{AoW@;H8mA>NvE#Fi(1h_>BSXD2_k z<5BH|M?JeEL%Zrx%XZAtwXi3QdY_%VX2)DD-lJSQaiCZ5v=PUk===%{0}rTOTOfsy$|^cW><&xJ{dD zs*i8YDBGsZgPP}6;ny{AySBje9rDW}wR|?te~U$E|2bu)+M7nGxbc?!kR4i?skTn; z-KJFr@d@u=9q6WVZ(8XNejW+z4a&j}w5tkoWelY4$e*?H|bkJ?>! zL34W4p|UTvh)h(Jp8s4LRHt<|)fpSBo~G($UuCJ&`a>=A+CS~%vN|o!RL4nO(#EjT z>4s?7*qXA-niEdrQPFR;J*MJEMZePy8wqK_v=!UG(^}5u;^_&24j0P4*T$Ku_#UPF z2d&yv$D;kpf7HJ8s8;1ywck9dL-{XS%cnROo$h`^dYAvEML{kTr+N=8r&n8>YD&+z za#apD)wVIC%B3uVGG+*?tTL3y2^?2$mGnFx{mmm46YM3&n(EW`8Rbpo6pzX-_mP=~ z(#5Ck?+^Bq)gI@Q!2xoEgR|kg!A0f4ayQgGugvK$m50g$rgC<7k~(H6@$;CAzM=Bp zrkd6B4f3_j67*-B{aeURP{ti*3)$^y_RaIs3XOp_cbOw5@3T`QH zGktBm5<^*=#9xV20-eS>@wLt4v6O%cR9qYebLmBHCuZ}J7ND{m)fd(_7A2>Gn3 ze(!D7BIPSk#$k$*oQiL`(u1~_dsOp_iTa`P4swkr^kY(CIUIUk;n2?VVW=!|Thh7m zo8$%4$6qaVk-wRWzrN`rn?A$oxWFIEyU13C^17IKsJyF;f-(+8S9y6pM=le)`U$Fhie@TV?4j=bP%~xKpGSH;RmrE3Z?9X5`y3ldLgvt*OdmUL&=s zQDh&vqp{NEuEtWnf1NrCwbz>~(?^~%6<4N@Jl80)ul(vd_5F3~m+O@F9JlXY?+(GM zEPbWk%#^)?Pmv6UG8*`18FrnDx=wYuPQ^g&_0H?!7B|a5rdrv>pVY8Mk^SW8>(qGt zIyvz=H3e#~_ql1SEdAsIruuH$DN>I&itI0+x=zizPA#}jErZ(Y9Y1lErN4aTIZQiy zy%Q&%BKc;c&;jzD>(sXE)VtTI_n`KA?-{zvGC+Q4s$)Y>kvh>Ra-eiyr!G8)^WR?Y zggCbtC@-4{$H&nUd-A77p@XFIJRddVzzmY!Pqe1-W&7*Y zjn}DOq-g(*Ob5#WaPIZy9z0kMH5K>Z!E#iighS+=9+et8MB1Thl$10@*kn!~SF}bs z(Xk7ud{eP6R*rk2!51sjSm_kX&Y`m3!UpG1Iowq2i<9At8hmlGhpE^XFJ~=o@Wo5! z8g^-_iq{&D+N-qaFg1u)n1*k!64)WQVz{aFy^2?db`_(pOPJsZZPB4P^mdO5?9id& z4v*q=W3Nkhr^nZ#Lq*wmj|%M2tKx2t;&e&%>G=7VskAmpeciaG_jwf8bdpDL!pU+T z_ScvZQ{{_L#vx3VFF|F~B0NJXQsp{R-L4L)NR#DIMr%)z`|`QO8b#;hG)0~;B{%6* z>9x#ovTv$vX)5+jlX=S)DenNIIBQ<)}_!F|5sh+XS(d8`J*OVdNbL4C}q*1~r<*lYKRdZ-h$_b5p zb7YF?)5%AbgEEe9rmT9Yp+z(0Q7EHobLAN*qiXtGc^)#Gp4o9|b7knuoX`k;O16hG zLZ6a1LS@t1fDH^Pf-4Nv0ax-z~D`G*eBce?eu-hfVdI-%Wlwa+axH^m|<7$ShO+YD=$pM&_C- zIQAh@FPf^H@|-92mrS{jGMy(^n~EPeeO9hB6+dwLtSm9r??FZH%$Mb+YEHiSa*wG# z8vA%ft~_L_Gh;JJePpUf?#ZrrPM$H9e$R8HzR(Rx1Bh09k>5ZWjsLv-u5Iuwm3gLO-!hr-7S4ah z-Y=8MB)Os3xm}M+Wt&siJH~3b_;ih8WN;&482H#3)Hx>I{k_p8PzL#V& ztNQcb%Q9h8gY#vXY${GzAX{#3@D<2TrefbJIcrOUZ1ggEnf7jjvq)x`iW9yr(_9U{*JXyO*!PAE-qqlHL$-%9M#Y=*MyPDjNn055 zrtAl0jIA{?-i*|F;H{AfX6Plcykdt)`4)2GuZcD*bxB|A6B6$cv;qtIfh9OB}$#VDo1w^;f^8Evsq zx=qDb1{>w&M!rq5`h$jQZ<4j9;$7M-Pkh+m+bl1bihQ~#krxg(I7{SJQ*pvAvg$~K zZ;Pxp75lczlA{g2t+L8g?As=bk2UzVNtdbEw_TQ3H~94J@}Mc%St<*TH#ke>dQ-7) zhg|eggKvj)nu>j8GXLWSUzsd275mC%(TN6Mxhydi`{=~!IN9K=kc&*k&Ykk%Qw_eI z(qSt0y(?#a(%^enW}1q9E;;LTgU==Bn~HsvGVHSkU!~M*bPJ#twi-(LBOZaOQq^%Z;N zo<`31PdxOvaf$r6WC-EJvA&ucwa5ai)5-zgtwxWKy*M^Sqv< zYoBU4#c(2<^M{=I2Zlhd2k_%1Mer(Y@AIs&Y>OOXA z(8tngD3owQu3=Sw{yQPPz94B{r||1a6g(!bii{p2oJH+=J?j5h zyXz|VUy0N)AN^Od{*QA05Bh%;9TZwF1-Nkx^E4ck+BoJ0jvU22K9SLg`Dgq*fFlXH z|FclV&HZ>H;^+6JSWRdVR+=oWBAohseat&#|G(gzrzSWz>i;ZMi2AG>+<$K|s>@ZB z$iZ@54*%@UyPJ0-iVu)3o<&pa9qaF}ijC;uhk^SkYg#lBc)1T(k=scVOOe>p`=U~JbcHKz!XGh~K8uK)om{nSii!<#zjQQMq{rxps z-|e3*T=1b={ONs}*G1~rCFVA0?7o1p+jrRC+3Slms#0H}rw0GALdF@-sBY^%?9ITn zLf>IJ??G#7-ulFYsKGU1Z)7nNyl@xSJ=08Pq~eVJY`5X;&V|(<2;)@C=U7efZ!4sE zs-t%0{@=Jsji&yG1b>L1kHe8pgHxl`UODT-sQR2hZnMHju43B`Tos=Xt~AGJh>@^U z|7R12a?tsyoXkjIppjkK&Fl@LwxJtxL^kHhIHS+Km$T-BC20|Be}4BDUsmh?AV$aj{ZmGrsDEgv zibPfZx`m7!cx2y(kzcb#JX>}e9oS5syL4S3;>kIg&nEGNkW?sYoUAKGJm&J!*p8hvS z>-r)Q`ZtkArp9P4pv$uQk!=jft8{W##ACPy9E!QY9O|$v=I6CkvDgre5wn76|Bv~f zXOTb7D8?*OKi|-dqI)JEo?fUbgqk@W85Sec#{AEgJ8=PW-JUht8N>e9NZa zQFp`g`dBXh@4UtZMdSF31GxQ+R9s#98Vl32QPIVTf2^p^6XEqUIgeBo6An+14MVZs z&IRxYzJ540ZeF7^{&lZX#3r104xwWn(sA+mf+0Ly6DvIy+Ix?^G5?>$+?Bws$f%0` z*Kz9qnivifHzS?#;y9G=X|8XT!FT-8Vl?l9TR6Te_K6!`6@iqShFdUc+8cWtbBg5o zpN~y_XyYs-^$7{D#mtDiCw(J|W6Z_Wdw0^sCoi%t=%u57D8Q3H$5;?!HDmZdQ2#d) z7=8QC`^4Tq7g@i@Mp`50C)^tuoWD~wVvMwnxrP=ps!rGce=dOc+hX3s8eZOS4f{=3 zx3u4emlv1kJ?8!Xy8KotmstwFGpwyQja$^H1n0voO8x)u zo75=G7_Y|Oln&*}{T&aU$dztIsEEe=Wqe=6-}}-a#7XGu6pp;@4&475H_VKxxE9Sp z1~>Y-QRLrQ^tgujf9C7y3ws*gV>sU6S=9D)|I62`s;EK1MhB@cm?z7dFzyX6pOotl ziczh_)7kP#ch0mW4qW{ifh~XLb?8Hl?8f(>s%VEsV@G4I&`QQ!xpQQvyW?Bg%U>gF z=J&yky>}&X%(Xh*M~T#-W*LE=CHa?xTsni+qVPRq4G^oKFMSkV^h-svU9E z|M_)Oe_g;D)Yrg2?^)xDHvB{4uPSP!^+o0WfPDY^2h(3#{#+HqavuMDF|ctJ|I-8d zhwuMS261~d&gj3)_5WpILHH_aFz}zNXzbFr7#%w>eKn5P8;k#2ZdC671ydUBhaWmf zW6YqFiXx0G$}l<%G%EU^9ODZem-p+a+^=US$zqn0F1pd;o8ttns;N9epR+|9buMjL zv^_&xE^RN+wwSi1w5_CV6>anyC)%RbSH&#aB4~?Nos_zew%2G|O&cwsC*GoM9c}Ar zdz-c`v~8!Yba`|qWrp(c^2ME$ApHzk&eC>{wp!Xgr|mp#U(j}ewu`iVN!wSn)zS7f zZI@{KhPKPJeM{SSwEae#s?4U9zWE`Z078ps1s*}zRP-eD7yW^;z!8kPNQ9UGOaZ0? zA0bpkE@24$#+~_E!W%@X=t;kDs3G2g3g^ctz7_m$`9~BkU@>7Yv67JD3HysuaJKl1 zjVjxFYEwo&F4hv#Eze5&ct-S;?3js{0?x!s0cWGg4DtBHQjtMR#_y(gU^CAI&k$ck z9V5;-8*9d=$R^3Pw8A6jvyqSrBczs+;ZZ*jHYZe+mR-9kiV~UK$x16Fc67RugBJ(p;KhMCcyVA3GR+aZ1bL3&1;uj&FFBqgc&YIm!HbdS(6YRF zN}g!Z;bkQs%Z%p>US2$rimW2!A`_{|!%8~ZBVFOA2htV&Mp|6@q*&eItdc9|*}hZ? z1g}NCSSlUeqCoJ{(~l_mo&3~Cl&L*}2@N|hJ6#}nf$0LgXs`e;8Y~d}qQL^ZXmF*h z=-5+TDc|qeQ!SKr(IeC%+Ks8|TDf)VOv1bR%~WfYDLOS*jq>`yc_hO6(fj$-mR(;| zy;ZL7deO4$I(5A;c;3xr>PETWb_D2FBh-VoZ`D%yR^-oWioAQeRZEe_`!pjI$$naY z9O+6rtk2N1QTuH-X(g1~Fhb6)MC9E(UMr^x(Ue<`cRZB~eyW#N_@g@Vv0SblM6(}+ z_n_eCdaDJ$T&kMhdhjtJKlOYX@mv7?+Dq_Dr>X@%|IC(9S&LUs)lz&P;{3F8t>D*C z)rt`mQ^&8N(q$dFXA<%=%~z0J9o|e;hv%B>@P4W~!A~_`!|SQ8QT#i^`RV0r^m3^b zLV9+YkY8AJP4I)u+&1q^NymPeCUNW~9sBW`4=g^g_`sr<%DuK$mK60w{}Gl)sL{q) z_RDYEyXh&H-@7PcHd!WGPRgKO_giw64ij@Mv(=)h&lA2iVmV>wfK`?n*|h6w;vFWw zWr@Y0N|7NkrIw4bd(U?*-^y%SwsM^4WN)VZL|yL`@qhs}WG_$q!m?JEuA!GKYvnsr zEY{iL2U?dc82vL$IXuZbT~vR)HEwWi3&>9ujKEI;(FrL1|BMov~I^lXQA^wzQ|BL@>6pB6_L)N6!Sf)dp0m`GOm z-G*uOGmDp%nZzIW${_xNS0)|%b!sM#eI_0IGBt-R`a1gHA&~=99)j{v-T7~;?t0SbjS8law8l&>-gkn^F2~v#8 z@3@IkxiJT+>>UK}Ab1C<{0f>uh#7>Kc*MjbCLS^Ih>2JEy*BZPj7MYwA`=jqfXD>( z9-XqIx3^Phg39mVNkD=GBp8SNOQvLQpJXJX_q9_MlM$0_#&G8yhrLfjWEvvV5SfOm zq#-^H@iP%K6EQO>hF&>06G1akiJ1tUiO>v$W*{^J*<~Oy1Cbf1ZU*8r5T8l$ZJK5x zJ`?eo@MglB18)wzIq>FiZo0@pP!59f5R`|YJOt&T$UGF8hsZoc<|8s6k@<+sM`S)C z^HI5c#OEWvfa2Xg1&A*|d;z?A0o+A!7r|WwcM-BHLQoN6)+1&;V%8&OJ!00Q$n}U^ zkH`{4mLReOktK*ML1YOkSAzHw9SP{-wbLuUr3Y1h zcWH`cRq|=y3EH8g`N{cdd*`@$svHw?S+=IFS?-p_Bbx-Hr6m#*pClBfCAA=zSe^vHa_D=JUJbr>+|7M_OdR6dbhL(DbU zC5>HvUpfz}jo>F$UZ!-T_F#g)zYkfu`?Ecpyj>Fd`3IYpE(!PgPtckrHq*k$GFJ)H zp4KPQJ72WrJ?ATr(1fFiI<2mh7Y)E+WmrN&owgUB5e zuvi;1AtE52_*8YVc3;wvfCQ7zxH~0a9C)t9`<|yLvSMUzz+%hcdlm*1YUwGSOQ$P(K%u2$^v?k`Xx<}g{}fALjrwxmW`Rf4;o$EQ zuTi&6cwAIc;-G*^jh7u@Y(>b6EL3W|oWgAMhS?~l234ul&Q9)4-m{Zqfnx*LTE^X$ z4*n=1uKz1FUVVWR%nzKY@j4XD3#k}h+hM=P$MvMvDzy;F)&-u#KGgtEYAtWsOqN!u zWr68h)2;^t>Dl2i#{w%YQmmb)m1*TLPd@w&ZyZ8J59uXO!In3C8t zPsvr<4W1E{t1Q1|MoTUsG1D@ss0K6f;#V z*Z5^+9Ogh0N= ziv{Fs5wt2mzQ%7T&e!+_#rYb)pg3RS7Zm4f{DR`ssMcwX--(v5@uC8!HGUX9fcklE zNDAGetPS96;)NlJG|1`oE|&Q*`60C$ouKt*bsC@7>oh)()oFZQzd~cT#v*Y`>O(kH z4F*d2e)LVDd~H8AGz{L(z%;sEN)4SYUmpE1f5c_Hlw@|Lv! zB{Y^|lolfplZZ@5AaVkAI{y}}lqUyD1C&<&uUwZB_jK_g#7b~(uI8nVklsvM-sL8?r6`L2(bDdo1zgf|mjX`zFzxA3v> zQO`rDkA;tY9zydFnupMDW%nso8q3^E!VsU2_%OuNilCHrKH~EcUjT2e(l7Rz8^Y+e zHUEYJ#1tT=05MU>P49y2N|2xnvMWJo2|`N{8euI@tGyw{@-$U0#=k*oU(3uD=N90UImLswp zk>!X?K;^je4ro(_$P7w*sbwb8W+GJ;QdJ>U6;kC`biU5dvGC1QXX})apSJl{9Tj?^ zO^$_cta2=TV|9^^{iQas)}=u|w#h?<@{wtdg%Z(Ik zldk3Ms;~nGQPve|Cw*1uK@@WZjdKN!a|Ml4jnLBw^}!5r8j-om?XmNfbnE7hJ41ai zL-^1PK}+pohNwlVI;5&Ia<+{2dPPX&aE*G#RP_pBJl)VyJL#bki6s(Csx@6$TKNjt z$I6Z7W93^jA1mMY_*nVYEZB-sVC7NcW99dS`dBB?wSAP84?&ofM^KcN4?&cbs}*JC zL(m1ebwO@jkXsik-^%G-kZBiW)CC#EAT$P{F$j%8XpEI_(_#=GgZLQ44?_GP#1BIJ zAjA(s{2(je)(t|cK}afF3(NRWmEX-JTUTBjjd8j__U*-RvxiDG6V z)l9_9M9fTzarQA`*V-iTHET5u z&Z+8Y4AI5br(^1(YOQ>+RcGaktt+r!gGDxBi#PJgvVKkL;b&QYrq%SbtQV5qBFp+c zy(Kcs8q=B9$JVXGI%g|c)})@NELW_2LwUu@*SmEZkLJ^`_%z{JAp+U0L`Ex-#Y&|0 zX~L-rQT$r#w6TfNbsCTUI*mtvoyMa-m#&T;jaKR9o26^K=wD4+qP^%Pe>({EWbrP2 z*hLj#n%E!hOE(c85XLCoJ9yE5m>%z75t-^7LWeq+Fo#yDwTSs@RtI1D7jQPkRB69w z`igy;oa-wNYWKe3E2_132v2Cc2v2Jt6S}n@32U`hZ~BT0S~tQv?KZ;8x|T*CSG3uL zSG6^S*R)Rvg>1UUS4cUK&`aJ$=p&yX^p}g)1kw-fw?qeuRu;x+U>{&Ca0GAya5nG- zLT|CbvV(9Vcm;T+MMoCaEwsm-tz}fe2*N<|7+C_vY~WmAF7O55DqtaS18^g-0=Nfw z1en-_^GN|d27Cdy61cX>7Mbn=PH zl&jSW*oILTeIWV+6M^G_4*(wlJ_F1JE(NXxt_5xYRsbu3M}WtH7lB^`m1bPL1=tFx zx4}mrV1HmDa6B-@hZ9Tz9swQ)ehRDsehvH z>i>JDmsm?ky@4zd;$PyqquoR^8l&Arkm&YqH*tfwnJ`k^MR=2#1e{CQTdX7;C~64f z#J>qg3F+!4?i2xpNwB99#v;!+dcWk3XuFt0m`Ysdj{zj6h@m2Mg9DCi1ZBgXO+U!~ z`DhM#r|fdVyBglr@UA9r#4#7_l@zn&Xbn(Nm|K*QB5Xqhcrs1Nd19uJh=irLUUW0yM$aK_PI3Kj1qgx&0<%zw=5GMS4YCqnJky9JCnuhc&y|C;$R;^_Ne0{ z$UgXZ3he1*nQ%OvESbk0uw(&qKO%#iG;cgg1YhOIY)1 zA#z(weBqh>go8h;f#o9c3!f=XxU2|ZY?B!}iD6B+$P}2SfM z0t^R60Bv4N#BZ)x@Hj87dJ1?JFxRV0EO8ftuO+U(?XHB_PvSlIMZ&XgZ|^dp)I@l5 z0iB75*Vw$5h<=r^u#6zffSMHWbm9|g9N<~NT(Ue-;{;zzyr9MfzT2CtvY#wFYTU5Y zc#jk-^`o`kJX9`{f!Bc?gWEpoh3p|(j zqh|}j*AjpJtgGn(%F_i)C2&94*PL~O>oxeeNT#Z@q8W#ZW?Tsc=-sSLoIe{59s%r3 z7J1HwNEE!tAoCA(5U@lp_YMtPPz_ny)Ut0;jpLlpp4fsXk18bG$oSS#^GLcvt0Up`> z09iVdWm>HbmRMk1^JZip(Y#C-b8GD|r2x|@w4gSZ&{bOq%Ua@}*H(h>C$4>71AdYC zgma27iuC1{hyd?QJo58c@DaqcWMvjCxn$8F`rJvT{gs6<(Xn(2b$^}(OD^$+=L^ACBcrusiT$DymMXuI;`q`1 zWV!rB4J_veRl4aEe#hpT73ctF0keUH zz)Ik5pc`1js7IfJ5TPgxr~xB@kw9DM67klqIB-K)evi2Y!>}4xnS81%YL#XUaA2<2fRp@2QP`1OT>@6w3b|eH!X;k zcqyDLeRfB}(wQu|muxLL=QvnKkma>Yc34tjNheGBC5H}EHcYu>I&o<=_*&xMU2?&@ z8>Iujt+`+Yr~$oOmx%-4go8%_BY~aC ze(sxC@HpUz)-?Ysm+cTKz*Jy5g??P^0M7>IlBMlsC-`dMTCxoK#s$6`xSuS2FT26d z0WXpz@v^u9RRn6la9{)>_5Vl+8!!%N2c`g1fev66FdOIut_He*mB8IVH?RhH4k*G< z37`fHXVjx3AR>V_U>wj6OaZ0>9l$JLHqZ$y1g-|UfV+Wi;5ndZ!^LaBa9|`*x8Wle z7zeZiQ-G;J2QUkm4RitvfvbToU?p%j&<(5so&$=uXak@I4A=1y3A6#@fOcRi&;iT_ zI)ST!F5qsU8+Z;V+F@UT;lN0s4HyTs15?}S9O{6`20DSOfiB=~pa|#4aG)LN02Tsc zBiNe)%mNkyD}gmYr9H<)0AqnE?J@snK@=28w7-ETcam3V=(0ilU<~h)QrbxVVuMD>t$?96SQt25twYz~TVU0(XKJg1f~ z9szFCA?!d0&R6aLU0$j8(0I2=!!~oMXv(4b=BDv z+m$aA?JzljS!5|c>I5%D0vC8C+4mi-0avfrWjj-JTyG|c7 z4pa`|yBXIl$j-JzY&sAgyF`3>z(yE(FgBLGcH+|xItkxA=o-qA;c<)+aqP8$+kuX_ zW@LB9EfGH)bP?Wi$OVg=c0Y?Zn^tzz*&p z{_hVQ;7;PVeCPys0o_0`47mYq!<^-8zG+>jv6yW3L0~0=j`Ux1AHz!H2UqVmNaf zxE<&qe!6BhCL1cAx|3 z1iFB3ph(~ZHlQ8o06Kv#pc^PgBWs`yXa_ogPM{0u2I}H=BmmlgcAx|31iFCY4nzWN zKs(R@bOK#KH&Bd0JkXIigLc3PbOGJKaD5y*Y(P8EnZyt~z+kwtm zY;gm{Y%Ve!Xam}T4xkh00=j|XNyGzfK;4cH2ha(00o_0`2MK`gIZH(7(eO+z-VSsE z-N5j1FPM{ko=i{dWU%>c) zq<~og*#Yka91b`UAOf!iJ{`0$=;fe|K^KC2gYO8QAN*GEjF7^RvXH)^_lNEdy%^e| z#pD);TC{F?tKPDrWl*c^Rxzz@tTD#Ujq zRuKC1FCe_!*Gc%-_T}^LRo2iW0dI)=#2S%8zqm{l>%?@iL8Q~q8E1+T@qpMW9u{Tv zzr=F-;bVoEBX)|p;$4v?T;dr~Nx#?JC0-D_=@*+-VyW08mJ51`ws=ph68ppsewD%u^Bc%IM3)xAppw za8j>d2s7fT9wKG9m9YINAHuw(0K#^+h7xX#4Y$_oMgqAXE5=K7>{G4IrF9z(&~7XBgq4jvVvwAja6>k!0zV%sl#z z@x-e;F^?QHnfQ)qF4CyFv6se<89Qm@a5`WbMLxxO>f#n;{po$2#Zw~~FWMNl^<;ct zBI7TSjE>tMpk!~2eS*+v38Ph}p;`w1+1}Xl=>*Ql*qPYiOv*?9G|oXEXJXi~8pZb= zJ&!Dd(JF65vAyVa#zO-b3+#-ufxCcnhqI;Mbk3(Y@E)X{8^HE2db0h2iHuu97#ECU zygZa~r+zyZHXb$3XfC6eR#Uk`3NSHXJ$V~rzbNk8J$iA>MRZIfx0nuW zUodJT;YQ#ELhAp&M6&78!P^L@++0Dp1;rbDX@Abh;H{?aW-o^8=lAX>Zgi!4`f|); zXs7me?*C(Bs>y3$vi~XKhSzAz`TlOQfa~I=ThEjDpCruowd=0K@6**a)&`-_w!M zHI4Hz(jG>n!DoQ?9-Fz-OWe0@wOu)9)%&WW6LlW4327Mo=BFhW(d(H`q_3a@ianJq-)O;zn@SQ4`?qCe~?fWk7x^tKT4>IC$z=H zXA!FO(ApB>`w3O?zP6P30YX})g?^Yq;*hqS#0T0+;vW*K;;{BI@gsz)II688evFXT zGSyxsewG*h~Cfv5)w>;(g*Sagex6d_cTX z941~VjuPJ`s)_Fs9}(XzP7vQM^iw3N#Ay;$;tcUU!cBaSI7@u5s3pEvoG1RCxIp|p z@g?znqK^1Jaf$eTahdpj@g4E^#TDZ3iyw&}5LbyG5I++?D6SDdD1IY;NC>ZvgsN9( z@qv&!i4TO8#D~I*_=ln?@x#K0_+jBo{D|-;enbQkKPrNW9~Gg*kBOGVkBQdAt3?>` zYSEVXaS=}ZxM)xOBN0XXBhi8Q$F!zqN5UJ4pAvnEpA!AN^v>cFF@VG;Vh}k_iy_2M z3mfrI#Zcm(ig@B@#I3~7h~dP~ie%zv#eKxj2|Mv~Vlweskw&~$OeOxgm`?n2aX<0% zVkYtP;z8nHh=+-PAs!`uL1cJ!q_tqg<0LMMS>(7Vo+SRI$Rz%yc#8N}!a@8i@ig%| zkwd(WUS83e)(4qS{A=+X@k=6)_$9G`_%~t^@o&V7#4n3{;+MrT;@^rD#J?3U5&upU z5dTiRLOkR*ae~Be;uHy0`I)$?TwA_phVp_Q?K9fv5uaCm4)~n#kUY#n^N;Y4_0RBM?O*PH+`m~sr+{Gr z(*uqN)CRl|_(af~LA!!32mKntxox!JrwUFqL$3j+yycu#VW1g zgeHZ~4_%~(4s9{AMQ)3iT5M>swZ-=>uCCg;CW}wNWxUkp7F&Il5Q$ z@M!7aHEbIHy+Q9XP#f9iN6(04Ki@pm$1aY3ZZIn;XhBFiK{AM!qTiuqo`h)5VE(O+ zcG{Slfv~<5T}TV()Mp5jSRB3QE@s!q4W>1_{%FfY8I9wp{P^L24s3BB+nUg3WrDxH zwA$7mGh9ro&hdVE^9TOcN7D@;{YgQO9h-kIMc<12jJ%8%TO9o|D(%!oGn#Fi(Jb4H zX4hbvRa=SIMH{+nY9rpHZ4GT}>Hh02+Sbvwp0*9515KtK#5OZzdfi7iN2ktp)oZ5 zjG<{~3{5vsnFGFF@rcP>wPNNJ(pB|Z~(3%9tJmd#0`2_lImh9sI0 zl4v4Gq6r|027VHa_aqwUNi@EbXj~`Jcut~moJ8X{iNj+8d$lp!>cZG>*&B%u@7<Tjsx3T?2GcI3vS=gU1s=e60 z-L&f;h^DDr%tvBYEPtLd9sf2zn=3{^e)yCkK} zBqT61neZ|QLP!FMfIvh9#0nLxM8G^JklVaS26+W$CKF8X!5cSJsZ_aN@d71Wse=_1 zuc%b5rIZ$=t)f`V{S;fjYww2_=y(79IGG9R_d&AHTI=6yueJ8t`<%1S>~MzQ z^LYxNQ}TZ(`d_5En&T%FeG8PQ{4Fw9r2M3kPeP`^Pm(lz#t!BkRq>9hcn1}_z}MjQ zcvv?pgYPT7_m#m@N2G1*le^v%RRC*sOdl!^^LAAS}?0ur}PsrSmNW~}0;3vYMMf+coQj2y) zrFN?>C*kiD{hOk9SY*m4gYu3{w#ZbMDY*ZD13p!7pMRhD0_>Py$YpQq3l&DIaH+@Rw;uus-i~WHOgR(GPqb7 ztXFio<*>N%tyFZiqESWH32M>swWLCCyTvYUpG?vazKK!-&w}z4J!_FysGlkMXG(rv z$_yK|A{5yyWw8yKkBz;lQU#bT9Ha~Ix z#*`dW^26tH8c!Mj9y3Y* zr0Bx*ajCJ;iREbu85{I$A-4 z#x=(yhMpeM+fx>k_LN^(+EWf&2BiPWlAGS82aTnAQ~DXpS;u+H*^uJ`n0@+L$7i6I zP!58B1at*TC(0)%A#&02G4L*0=<1@gQCeMBh5V(7QGSN^1>RE#V7YapH?-V(z`NDj?%rh`=38#P&o{zo@qH#L z_dxFP&C{;*;P%?Sgq$|WYbzSG%UTs0RELUP)^-R_qr8fWzo1+} z=|9+O8$WoLwHzggvK8f}!4oa}Y)I>nyDjNM)*GXS^tT6%5QgwR%jcf;#{40bmZ~AQ z*jtCh@FMof_78_t*e48~ZnO{0(%f1WesVx_K)s+|jis(2cMjd59U?nXeuDBQ%3COJ zqnt$fHOf0E@5b6zkXdASVNpeaHnFU&EzlaA+T8R=ptY^Ox#!H!2BWQVsXYtGG!K2Mmri+nd0c5+HK}t@Tw6^{c9?W6`zb zWn!B*vuTW0-xM1kCi95BrnxEDT2&KdT@g|-UD%7eFRU#5Rz$@dOLRNVRO)qG$}UF8 zA?~OUj@XtCvUko6mWwKjzGZnV#}X}k_FsP5%+U2 zO1c*C{F&;71(n6xM4qf-&h$;cfOy?lUUx&<$C>)3sZs!J<`g|IwxpB1Xt#0wA2rv< za-JkXXKlQ-7I&h_`BK(YE2m6Q=2e?l_2a;UOX?c}8t}Ge(1e*1&=v=R757y&2DCPl zX$%CHG}p%V?;_oVP7knA&yrcGt%0S>0&T%LtR!18psc zH*jBbkZt^sjEWuokd#!1#^AqXU{|k2Yu1`T1DaoZ1P^l!+A_h{1M`DxghmiMf1|MA zoQnD;?H0&>>=W{Kk3geU$gSYM-&zpbevNoX;aG;YLG4G&gfqV|-XdITW&EAEl5fNY zWE-4Up}qzil76iYCR#zi?Wi6)JWzx~_U0oXDZt6vdQ(>VB?c223XkQJg z4PT5lLHyU~0BRbQrvQSh#gFvClLF1@1^9y6LOh<|t`%v;cvvmK&ocbn4zv_l3Aj?! z6bV`aTFAM{FjNP%LL7NhEvFjUZAN!~jA!=-xWy}H;R-G?77Ld=pdSElLXDQoDhBF4 zwr?e!>0I|eGka$K{FSNuChWTZ7o`0BZ3yjx<1s@h#-Gc9C53i>6xlf2DF9_%f!>_r+yM)pvfox)*t)`U& zcDOtEZ>p2%J`INX59$H2%62+-N)I;@F+`Id(R{x((}hp?Q}FqVU@~Md`;+`yraOF@ zK;~iX6;1ZCKeW@?-k>|O(3(u$mG0UUC!y|05`N)`D;{BGYiNIRgq5$M1C!n(KFyZt z?s$)_SwnA4I;F%@tY;0)&N+%8eZ)tTt#GxSy6ZD&D%g&r?Bg|bj^nth7T9q%c`fyj z6KvsHngjC4T3R&pq(vI==?>oRq$LBN31rX=U4(K*#C(Rmzn1z&T(F~i_-{5Hmjrr2 zXng7rAiRG-Q_QMQWBo(4TMu31EeLUkuZtGfc#CL1nJx#1qWuIkMDRldKT_}`1+SUy z&k0bZCu$MAMJS}23Ks;JDnO^;orWz02X-OYMTJN39>Hg;mJ#VMn}Z!+a|IkZe?{b}_4D+JX&RkkIuxT4og%bn2<;h3Hj?Rz-X$gnPdT46E*iay`8uiZZjKA>g+hCw z;O7W_j^O7De!jFaPqvP7YO%T_Gm?_I@p-JHlTIL&?A1=XFnx)NT;_BM8@`U_&j<=L zL1A)5y674XyQtUW4$Ca95OobguR%{HaxhxVo?R0aEo|pHx+)}8PYUFujBJOBj8h)j zd>q2pWOy7)5m|VK@+pmcMwtrpc*~ljRVu3Nmhv%ebHDjazUbA_JGO417~U;3hAF zHYFMJwmvb(B^hsAmhm1@A#y5%;#^2Zb+k7s$;qH3FM~2KGCZ3mFM~2A8PthBLB%B* zR9u!p?G34@_Vz}_IT_Uc-k>BWgOa=qswW{+CNG0BB^lJ=K0(E$^yF!L(#HYA2A>`a z?i!7_97j75i(OuHJ(M#*GBk^yP!FncDfUp%NDIq;lny5Q*~CX_33-nNAEm?6Pl*ZO z;TK#?1P?p(D4qLI3xRqWaYwfEYlIzzH}3`AqP7p@wHa~Hr}b&ZCm=V+8?cAFXf|nK z%e!bU2h^RcrHg;3bkUtCI zg48@_Y95oC(#)sqx7~CiyrizDgUBT|dOdxSJQKUPo>GFl`e%>PivIg~zHkyB;CVU> zfoCytm@Ryq79e3yK2C4#*W->{Pxs^YxYUdLO!#%;itJ(UK2CE&dvM8+GQW{WdU)G1 z;<4HY!tY7d&~xM#&E;@?0sH(W$nTNBB0XZrIGU0O;*Kn8&D&|DhvEthu*d9XkL;$W zC$3_L3dSq0!a`5byzy|sFW!+J8wd}Icecl{a+XhVck~}{&*u`Syz;tCX%9R91odWK z!Q}>5a?vk$2NBo7D=hU%y3T!649a`S$+~-le zH_$;z-Ae3c<2TS@QlnF>Q9AAHsm(N>e9d0lOg(8=Qn-uoH^kxUxW+DRrX|j(mZmUw_?#u5i=YYQDcE<3Jp-4)FiOW`-|m?`1)5K}aa6b5V!NJ3i= zqg!c7mfx=F4p;b1N)zgau-RK_#fW^h`% zUd(E?(UGoFtHzf*cGG4l+r5qY=1v@HOTrm8#T`E5kmH5ChygK257b?r;ES)7FnWN& zVBo+Aw~}>5r!d!c>LYitg6;V8qPy5*+vzR#85uT%yJ4rEq65nAl}=~eywf>-T+Ctp zo}%N(JT~hodN;_Hr|A4y^M~=7ADJQImcf{T!jBkmP|QJ`G!CcCr5W?Wc;e2uq6^tr zMkl5%N$B(vwwBS6o`$#{M!I2?Ee#&$W1-}Z>|k#(T9)3@N27&h?V$IOAPelE_l8#V z)%@&O!)Cz=AeJ?v6Ik(;V}%&)<`)1|Tqa)V^7-ub z;LK%w$#UsPvfLu_1D;&If91+Tuq`Xx231@fj<&v)*rNRxd#9{aj zMfcw5oCDlB-cWvHE+oXA_k33_Opxc|@OL|p!@T21Na%*1A5qSae%rZ(0h(N$)%IlywF~nq2Q^;;ke!DAr5;Kxt zqxePlvTBCdU{abe$5Tqs&&G4N5PbYGoiEcl$>8fcbyb8(9j+<+Xa_CE19QKf^rva5 zz0=4Qy~2LGlMW>RV4v@#gJ`Ecmi`kOh~i9I=GDh%Z^J#k;~9R~jYIe=YE9w74)(TJ z_hM1>SFgT^bh4>Fz1G2(BOOW9;ebZuJ@zY~J`U@ouY7tSbgp-$;iA0#pG_He7;{M@ zZZS#x=|Vi8r*kgh<|yQ$JQ4DCh?QsJ-3(ScEjUE4@zqHuUyF2n!6U+INoRk^)ic=T zTzv-mInJ+#QZAuBGKcHevg3Yze!&jTx0_)_YI!H3VVgY7?T9fx3cTiPR+OjTopXYF zz?#h~7sBi0IJr9v_H>?}!(PtQi;&67dHP?owuzNg#|}xJkz_Z!G)S)_huQ4G`ZF1q zQk?j>rOyf>_OHQunkD4ICpqZKWehAXgAQB=Gn~|tfcS9Bxt8hFv6}AH;-9Gi?eDb6 z2`Aff)TaZ-PK>mPCVb{7!`Y_c1UMwj4=~Lq)F>Yw)5i@}!cnRQce|ANbSJSW2`CQ^!mb`toBPcR1^sp<(^$u{rst0$z_56e3H>*Y8i=4+!%eH{HmlSbe^} zjrMC1-IIah}=Z4+r~5*Qww{2gnlTQKf7Qi@S9ruNPQ0;Hu7%MGe}Ep>}|S_ zrtHC^0;(y0Vt9D8UVzhS<7oX(tZ`3|)`vm*X0-m0HR#Uf=UaJ!J}CXDdt{1+QQyRW z0X|ls&nmiPhYN9f@#lq=_JjlI2~ zU~FAMRdJxIcwEt#qA^d6*Zap#73oi>vdv@lOm=*nZm?C8b(eSAieR9Le?ZJ-i-`I((4g5Z**mPmJcjyDz%E`Lhm#7ura1p7*R@lucV)N?e6tNd| zbBfq0VtJ)1M$e5gn(5;^aW|t@iuii1^~sC5UnBZ^dnNOi>K>7o@Ab)dzt~5ZjH?Bb)_HS&Ww{I3kwp#+cVTJTxstI)Ho-+=$-SvI~xALJagrRm;HZ?sQ)b;?!y z7q4k2SVM)rqEMlkYZc0^Ev@@U)`mN?U(`ODN@l#u|F%c|tLD6ab6ysm_iAiZrGA1i zN3}kI9FN^ot$#*mmtwCYfDMciY-x^<%N^!S_nW o0x5uAvDj-VMop16h8GqJ=p9Kty2k$^EI29Vs?+~YHW%3bA4nQs@&Et; delta 72917 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 From fafb033f89f838f81f4a72f246ac2748fd2aa9a2 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Wed, 8 May 2024 12:08:57 +0800 Subject: [PATCH 42/97] Remove CsServer scripts & prefabs (#940) * Remove CsServer scripts & prefabs * Update Erc1155.cs --- .../Runtime/Scripts/EVM/Remote/CSServer.cs | 272 -- .../Scripts/EVM/Remote/CSServer.cs.meta | 11 - .../Runtime/Scripts/EVM/Token/Erc1155.cs | 1 - .../Web3.Unity/Scripts/Prefabs/Minter.meta | 8 - .../Scripts/Prefabs/Minter/CreateApproval.cs | 37 - .../Prefabs/Minter/CreateApproval.cs.meta | 11 - .../Prefabs/Minter/GetListedCollections.cs | 212 - .../Minter/GetListedCollections.cs.meta | 11 - .../Scripts/Prefabs/Minter/GetListedNFT.cs | 159 - .../Prefabs/Minter/GetListedNFT.cs.meta | 11 - .../Scripts/Prefabs/Minter/ListCollections.cs | 203 - .../Prefabs/Minter/ListCollections.cs.meta | 11 - .../Scripts/Prefabs/Minter/ListNft.cs | 149 - .../Scripts/Prefabs/Minter/ListNft.cs.meta | 11 - .../Web3.Unity Samples/Prefabs/Minter.meta | 8 - .../Prefabs/Minter/ApproveTransaction.prefab | 363 -- .../Minter/ApproveTransaction.prefab.meta | 7 - .../Prefabs/Minter/BuyItem.prefab | 1106 ----- .../Prefabs/Minter/BuyItem.prefab.meta | 7 - .../Minter/GetListedCollections.prefab | 3620 --------------- .../Minter/GetListedCollections.prefab.meta | 7 - .../Prefabs/Minter/ListCollections.prefab | 4054 ----------------- .../Minter/ListCollections.prefab.meta | 7 - .../Prefabs/Minter/ListItem.prefab | 1334 ------ .../Prefabs/Minter/ListItem.prefab.meta | 7 - .../Scripts/Prefabs/Minter.meta | 8 - .../Scripts/Prefabs/Minter/CreateApproval.cs | 37 - .../Prefabs/Minter/CreateApproval.cs.meta | 11 - .../Prefabs/Minter/GetListedCollections.cs | 212 - .../Minter/GetListedCollections.cs.meta | 11 - .../Scripts/Prefabs/Minter/GetListedNFT.cs | 159 - .../Prefabs/Minter/GetListedNFT.cs.meta | 11 - .../Scripts/Prefabs/Minter/ListCollections.cs | 203 - .../Prefabs/Minter/ListCollections.cs.meta | 11 - .../Scripts/Prefabs/Minter/ListNft.cs | 149 - .../Scripts/Prefabs/Minter/ListNft.cs.meta | 11 - 36 files changed, 12450 deletions(-) delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs.meta delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs deleted file mode 100644 index 733344274..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs +++ /dev/null @@ -1,272 +0,0 @@ -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; -using ChainSafe.Gaming.UnityPackage.Model; -using ChainSafe.Gaming.Web3; -using UnityEngine; -using UnityEngine.Networking; - -namespace Scripts.EVM.Remote -{ - // todo: should we take chain and network from the Web3 object as well? - public class CSServer - { - public class Response { public T response; } - private static readonly string host = "https://api.gaming.chainsafe.io/evm"; - - ///

- /// Creates a mint transaction for an NFT (Non-Fungible Token) on a specified blockchain network. - /// - /// The Web3 instance used for the transaction. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The sender's account address initiating the mint transaction. - /// The recipient's account address for the minted NFT. - /// The identifier or content reference for the NFT. - /// The type or category of the NFT being minted. - /// A response with the mint transaction object. - public static async Task CreateMint(Web3 web3, string _chain, string _network, string _account, string _to, string _cid, string _type) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", _chain); - form.AddField("network", _network); - form.AddField("account", _account); - form.AddField("to", _to); - form.AddField("cid", _cid); - form.AddField("type", _type); - string url = host + "/createMintNFTTransaction"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - CreateMintModel.Root data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - - /// - /// Retrieves the NFT collection associated with the specified account. - /// - /// A string containing collection details. - public static async Task GetNftCollectionByAcc(Web3 web3, string _account) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("account", _account); - string url = host + "/collection/getByAccount"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - string data = webRequest.downloadHandler.text; - return data; - } - } - - /// - /// Retrieves the NFT collection details by its unique slug. - /// - /// The Web3 instance used for the request. - /// The unique slug of the NFT collection. - /// A string containing collection details. - public static async Task GetNftCollectionBySlug(Web3 web3, string _slug) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("slug", _slug); - string url = host + "/collection/get"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - string data = webRequest.downloadHandler.text; - return data; - } - } - - /// The Web3 instance used for the request. - /// The account address making the request. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The address of the NFT contract containing the token. - /// The unique identifier of the NFT token to retrieve data for. - /// A string containing the NFT data. - public static async Task GetNft(Web3 web3, string _account, string _chain, string _network, string _nftContract, string _tokenId) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("account", _account); - form.AddField("chain", _chain); - form.AddField("network", _network); - form.AddField("nftContract", _nftContract); - form.AddField("tokenId", _tokenId); - string url = host + "/getNftData"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - string data = webRequest.downloadHandler.text; - return data; - } - } - - /// - /// Retrieves a list of NFTs from the market. - /// - /// The Web3 instance used for the request. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// A list of response objects with the NFTs details. - public static async Task> GetNftMarket(Web3 web3, string _chain, string _network) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", _chain); - form.AddField("network", _network); - string url = host + "/getListedNfts"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - GetNftListModel.Root data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - - /// - /// Retrieves a list of minted NFTs. - /// - /// The Web3 instance used for the request. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The account address for which to retrieve minted NFTs. - /// A list of response objects containing details of the minted NFTs. - /// A list of response objects with the minted NFTs details. - public static async Task> GetMintedNFT(Web3 web3, string _chain, string _network, string _account) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", _chain); - form.AddField("network", _network); - form.AddField("account", _account); - string url = host + "/getMintedNfts"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - MintedNFT.Root data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - - /// - /// Creates a purchase transaction for an NFT. - /// - /// The Web3 instance used for the transaction. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The buyer's account address initiating the purchase transaction. - /// The identifier of the NFT to be purchased. - /// The price of the NFT in a suitable format. - /// The type of token used for payment (e.g., cryptocurrency). - /// A response object with the transaction details. - public static async Task CreatePurchaseNftTransaction(Web3 web3, string _chain, string _network, string _account, string _itemId, string _price, string _tokenType) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", _chain); - form.AddField("network", _network); - form.AddField("account", _account); - form.AddField("itemId", _itemId); - form.AddField("price", _price); - form.AddField("tokenType", _tokenType); - - string url = host + "/createPurchaseNftTransaction"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - BuyNFT.Root data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - - /// - /// Lists an NFT for sale. - /// - /// The Web3 instance used for the transaction. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The seller's account address listing the NFT. - /// The unique identifier of the NFT to be listed. - /// The price of the NFT encoded in hexadecimal format. - /// The type of token used for payment (e.g., cryptocurrency). - /// A response object with the transaction details. - public static async Task CreateListNftTransaction(Web3 web3, string _chain, string _network, string _account, string _tokenId, string _priceHex, string _tokenType) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", _chain); - form.AddField("network", _network); - form.AddField("account", _account); - form.AddField("tokenId", _tokenId); - form.AddField("priceHex", _priceHex); - form.AddField("tokenType", _tokenType); - string url = host + "/createListNftTransaction"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - ListNFT.Root data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - - /// - /// Cancels an NFT listing. - /// - /// The Web3 instance used for the transaction. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The seller's account address canceling the NFT listing. - /// The identifier of the NFT listing to be canceled. - /// A list of response objects with the NFTs details. - public static async Task> CreateCancelNftTransaction(Web3 web3, string _chain, string _network, string _account, string _itemId) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", _chain); - form.AddField("network", _network); - form.AddField("account", _account); - form.AddField("itemId", _itemId); - string url = host + "/createCancelNftTransaction"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - GetNftListModel.Root data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - - /// - /// Creates an approval transaction for a specific token type. - /// - /// The Web3 instance used for the transaction. - /// The blockchain chain identifier (e.g., Ethereum). - /// The network identifier (e.g., Mainnet, Ropsten). - /// The account address initiating the approval transaction. - /// The type of token for which approval is being granted. - /// A response object containing information about the approval transaction. - public static async Task CreateApproveTransaction(Web3 web3, string chain, string network, string account, string tokenType) - { - WWWForm form = new WWWForm(); - form.AddField("projectId", web3.ProjectConfig.ProjectId); - form.AddField("chain", chain); - form.AddField("network", network); - form.AddField("account", account); - form.AddField("tokenType", tokenType); - - string url = host + "/createApproveTransaction"; - using (UnityWebRequest webRequest = UnityWebRequest.Post(url, form)) - { - await webRequest.SendWebRequest(); - CreateApprovalModel.Root data = JsonUtility.FromJson(Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - return data.response; - } - } - } -} - diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta deleted file mode 100644 index fd8780db9..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 53c1aa8bb1f7cc345a31e19283d023bd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs index c54756617..ae8b2fccc 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs @@ -4,7 +4,6 @@ using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage.Model; using ChainSafe.Gaming.Web3; -using Scripts.EVM.Remote; using UnityEngine; using UnityEngine.Networking; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter.meta deleted file mode 100644 index 0378befce..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9b87f9453f21675439a7996671f63f08 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs deleted file mode 100644 index 84dfe725e..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs +++ /dev/null @@ -1,37 +0,0 @@ -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using System; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using UnityEngine; -using Scripts.EVM.Remote; - -public class CreateApproval : MonoBehaviour -{ - public string tokenType = "1155"; - - public async void ApproveTransaction() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - var response = await CSServer.CreateApproveTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, Web3Accessor.Web3.Signer.PublicAddress, tokenType); - Debug.Log("Response: " + response.connection.chain); - - try - { - var txRequest = new TransactionRequest - { - To = response.tx.to, - Data = response.tx.data, - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - Value = new HexBigInteger(0), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.LogException(e, this); - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs.meta deleted file mode 100644 index ac9e3e603..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bee6d2ef00e0fc445ac34964f0acbf24 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs deleted file mode 100644 index 377c9ff51..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs +++ /dev/null @@ -1,212 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; -// using Web3Unity.Scripts.Library.Web3Wallet; - -public class GetListedCollections : MonoBehaviour -{ - // vars and objects - public Text[] idsBuy; - public Text[] descriptionsBuy; - public Text[] prices; - public Text[] sellers; - public Text[] tokenTypesBuy; - public Renderer[] textureObjects; - public GameObject C1b; - public GameObject C2b; - public GameObject C3b; - private int nftListAmount; - private int nftCount; - private string account; - public string collectionSlug; - private string nftContract = "0x2c1867bc3026178a47a677513746dcc6822a137a"; - - void Start() - { - // load the nft data - LoadNftDataBuyPage(); - } - async void LoadNftDataBuyPage() - { - account = Web3Accessor.Web3.Signer.PublicAddress; - var chainConfig = Web3Accessor.Web3.ChainConfig; - // create a reference to a list and iterate through it to gain token id - List tokenIdList = new(); - // checks if filter should be applied - if (collectionSlug == "") - { - Debug.Log("Please set collection ID"); - return; - } - else - { - string collections = await CSServer.GetNftCollectionBySlug(Web3Accessor.Web3, collectionSlug); - CollectionModel.Collection response = ParseCollections(collections); - nftListAmount = response.items.Count; - for (int i = 0; i < nftListAmount; i++) - { - tokenIdList.Add(response.items[i].tokenId); - } - } - // display check based on nft count fetched, only activates object with data - if (nftListAmount == 1) - { - C1b.SetActive(true); - } - else if (nftListAmount == 2) - { - C1b.SetActive(true); - C2b.SetActive(true); - } - else if (nftListAmount >= 3) - { - C1b.SetActive(true); - C2b.SetActive(true); - C3b.SetActive(true); - } - - List listResponse = await CSServer.GetNftMarket(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network); - - foreach (string tokenId in tokenIdList) - { - for (int i = 0; i < listResponse.Count; i++) - { - if (listResponse[i].tokenId == tokenId) - { - string nftResponseStr = await CSServer.GetNft(Web3Accessor.Web3, account, chainConfig.Chain, chainConfig.Network, nftContract, tokenId); - GetNftModel.Response nftResponse = ParseNft(nftResponseStr); - // breaks out of loop and continues on if an error case is found for some reason - if (nftResponseStr == "{}") - { - continue; - } - if (nftResponse.uri.StartsWith("ipfs://")) - { - nftResponse.uri = nftResponse.uri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - UnityWebRequest webRequest = UnityWebRequest.Get(nftResponse.uri); - await webRequest.SendWebRequest(); - RootGetNFT data = - JsonConvert.DeserializeObject( - System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - // populate text objects with data - idsBuy[nftCount].text = listResponse[i].itemId; - float decimals = 18; - double price = float.Parse(listResponse[i].price) / Math.Pow(10, decimals); - prices[nftCount].text = listResponse[i].price; - sellers[nftCount].text = nftResponse.owner; - tokenTypesBuy[nftCount].text = nftResponse.tokenType; - if (data.description == null) - { - descriptionsBuy[nftCount].text = ""; - } - else - { - descriptionsBuy[nftCount].text = data.description; - } - // parse json to get image uri and download - string imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - else - { - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - - if (data.properties != null) - { - foreach (var prop in data.properties.additionalFiles) - { - if (prop.StartsWith("ipfs://")) - { - var additionalURi = prop.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - } - } - // increase nft count so we can keep track of the local objects - nftCount++; - } - } - } - } - - // buy nft function - public async void BuyNFT(int nftNumber) - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - Debug.Log("Buying Nft"); - BuyNFT.Response response = await CSServer.CreatePurchaseNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, - account, idsBuy[nftNumber].text, prices[nftNumber].text, tokenTypesBuy[nftNumber].text); - Debug.Log(account); - Debug.Log(idsBuy[nftNumber].text); - Debug.Log(prices[nftNumber].text); - Debug.Log(tokenTypesBuy[nftNumber].text); - Debug.Log("Account: " + response.tx.account); - Debug.Log("To : " + response.tx.to); - Debug.Log("Value : " + response.tx.value); - Debug.Log("Data : " + response.tx.data); - Debug.Log("Gas Price : " + response.tx.gasPrice); - Debug.Log("Gas Limit : " + response.tx.gasLimit); - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = HexBigIntUtil.ParseHexBigInt(response.tx.value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.LogException(e, this); - } - } - // downloads the nft image - IEnumerator DownloadImage(string MediaUrl, int nftCount) - { - UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - Debug.Log(request.error); - else - { - Texture2D webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture as Texture2D; - Sprite webSprite = SpriteFromTexture2D(webTexture); - textureObjects[nftCount].GetComponent().sprite = webSprite; - } - } - // render the sprite into the image object - Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), - 100.0f); - } - // parses the json response, as it has lists within the object - public static CollectionModel.Collection ParseCollections(string json) - { - CollectionModel.Root root = JsonConvert.DeserializeObject(json); - return root.response.collection; - } - // parses the json response, as it has lists within the object same as above - public static GetNftModel.Response ParseNft(string json) - { - GetNftModel.Root root = JsonConvert.DeserializeObject(json); - return root.response; - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs.meta deleted file mode 100644 index b46c5ef95..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0de123e82ca6d2742bbc6782459c7b74 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs deleted file mode 100644 index 9c22c338b..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs +++ /dev/null @@ -1,159 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Linq; -using System.Numerics; -using System.Threading.Tasks; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; -// using Web3Unity.Scripts.Library.Web3Wallet; - -public class GetListedNFT : MonoBehaviour -{ - public Renderer textureObject; - public Text price; - public Text seller; - public Text description; - public Text listPercentage; - public Text contractAddr; - public Text tokenId; - public Text itemId; - private string _itemPrice = ""; - private string _tokenType = ""; - - private string _itemID = ""; - - - public void Awake() - { - - price.text = ""; - seller.text = ""; - description.text = ""; - listPercentage.text = ""; - tokenId.text = ""; - itemId.text = ""; - contractAddr.text = ""; - } - - // Start is called before the first frame update - async void Start() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - List response = await CSServer.GetNftMarket(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network); - price.text = response[0].price; - seller.text = response[0].seller; - Debug.Log("Seller: " + response[0].seller); - if (response[0].uri.StartsWith("ipfs://")) - { - response[0].uri = response[0].uri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - Debug.Log("Response URI" + response[0].uri); - } - - UnityWebRequest webRequest = UnityWebRequest.Get(response[0].uri); - await webRequest.SendWebRequest(); - RootGetNFT data = - JsonConvert.DeserializeObject( - System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - if (data.description == null) - { - description.text = ""; - } - else - { - description.text = data.description; - } - - // parse json to get image uri - string imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri)); - } - else - { - StartCoroutine(DownloadImage(imageUri)); - } - - if (data.properties != null) - { - foreach (var prop in data.properties.additionalFiles) - { - if (prop.StartsWith("ipfs://")) - { - var additionalURi = prop.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - } - } - } - listPercentage.text = response[0].listedPercentage; - Debug.Log(response[0].listedPercentage); - contractAddr.text = response[0].nftContract; - itemId.text = response[0].itemId; - _itemID = response[0].itemId; - _itemPrice = response[0].price; - _tokenType = response[0].tokenType; - tokenId.text = response[0].tokenId; - } - - // ReSharper disable Unity.PerformanceAnalysis - IEnumerator DownloadImage(string MediaUrl) - { - UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - Debug.Log(request.error); - else - { - Texture2D webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture as Texture2D; - Sprite webSprite = SpriteFromTexture2D(webTexture); - textureObject.GetComponent().sprite = webSprite; - } - } - - Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), - 100.0f); - } - - public async void PurchaseItem() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - BuyNFT.Response response = await CSServer.CreatePurchaseNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, - Web3Accessor.Web3.Signer.PublicAddress, _itemID, _itemPrice, _tokenType); - Debug.Log("Account: " + response.tx.account); - Debug.Log("To : " + response.tx.to); - Debug.Log("Value : " + response.tx.value); - Debug.Log("Data : " + response.tx.data); - Debug.Log("Gas Price : " + response.tx.gasPrice); - Debug.Log("Gas Limit : " + response.tx.gasLimit); - - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = HexBigIntUtil.ParseHexBigInt(response.tx.value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.LogException(e, this); - } - } -} - diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs.meta deleted file mode 100644 index 87c9c3abb..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b2b606c43a8ad934f90b41d8f3adefa9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs deleted file mode 100644 index 5f1ddf1a0..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs +++ /dev/null @@ -1,203 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Globalization; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; -// using Web3Unity.Scripts.Library.Web3Wallet; - -public class ListCollections : MonoBehaviour -{ - // vars and objects - public Text[] idsSell; - public Text[] descriptionsSell; - public Text[] tokenTypesSell; - public InputField[] PriceInputs; - public Renderer[] textureObjects; - public GameObject C1s; - public GameObject C2s; - public GameObject C3s; - private int nftListAmount; - private int nftCount; - private string account; - public string collectionSlug; - private string nftContract = "0x2c1867bc3026178a47a677513746dcc6822a137a"; - - void Start() - { - // load the nft data - LoadNftDataSellPage(); - } - // load sell page data function - async void LoadNftDataSellPage() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - account = Web3Accessor.Web3.Signer.PublicAddress; - // create a reference to a list and iterate through it to gain token id - List tokenIdList = new List(); - // checks if filter should be applied - if (collectionSlug == "") - { - Debug.Log("Please set collection ID"); - return; - } - else - { - string collections = await CSServer.GetNftCollectionBySlug(Web3Accessor.Web3, collectionSlug); - CollectionModel.Collection response = ParseCollections(collections); - nftListAmount = response.items.Count; - for (int i = 0; i < nftListAmount; i++) - { - tokenIdList.Add(response.items[i].tokenId); - } - } - - // display check based on nft count fetched, only activates object with data - if (nftListAmount == 1) - { - C1s.SetActive(true); - } - else if (nftListAmount == 2) - { - C1s.SetActive(true); - C2s.SetActive(true); - } - else if (nftListAmount >= 3) - { - C1s.SetActive(true); - C2s.SetActive(true); - C3s.SetActive(true); - } - - // get nft data for each tokenId paired with nft count for local data population - foreach (string tokenId in tokenIdList) - { - string nftResponseStr = await CSServer.GetNft(Web3Accessor.Web3, account, chainConfig.Chain, chainConfig.Network, nftContract, tokenId); - GetNftModel.Response nftResponse = ParseNft(nftResponseStr); - // breaks out of loop and continues on if an error case is found for some reason - if (nftResponseStr == "{}") - { - continue; - } - if (nftResponse.uri.StartsWith("ipfs://")) - { - nftResponse.uri = nftResponse.uri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - UnityWebRequest webRequest = UnityWebRequest.Get(nftResponse.uri); - await webRequest.SendWebRequest(); - RootGetNFT data = - JsonConvert.DeserializeObject( - System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - // populate text objects with data - idsSell[nftCount].text = nftResponse.id; - tokenTypesSell[nftCount].text = nftResponse.tokenType; - if (data.description == null) - { - descriptionsSell[nftCount].text = ""; - } - else - { - descriptionsSell[nftCount].text = data.description; - } - // parse json to get image uri and download - string imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - else - { - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - - if (data.properties != null) - { - foreach (var prop in data.properties.additionalFiles) - { - if (prop.StartsWith("ipfs://")) - { - var additionalURi = prop.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - } - } - // increase nft count so we can keep track of the local objects - nftCount++; - } - } - - // sell nft function - public async void SellNFT(int nftNumber) - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - Debug.Log("Selling Nft"); - var eth = float.Parse(PriceInputs[nftNumber].text); - float decimals = 1000000000000000000; // 18 decimals - var wei = eth * decimals; - Debug.Log("ItemID: " + idsSell[nftNumber].text); - var response = - await CSServer.CreateListNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, account, idsSell[nftNumber].text, Convert.ToDecimal(wei).ToString(CultureInfo.InvariantCulture), - tokenTypesSell[nftNumber].text); - var value = Convert.ToInt32(response.tx.value.hex, 16); - Debug.Log("Response: " + response); - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = new HexBigInteger(value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.Log("Error: " + e); - } - } - - // downloads the nft image - IEnumerator DownloadImage(string MediaUrl, int nftCount) - { - UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - Debug.Log(request.error); - else - { - Texture2D webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture as Texture2D; - Sprite webSprite = SpriteFromTexture2D(webTexture); - textureObjects[nftCount].GetComponent().sprite = webSprite; - } - } - - // render the sprite into the image object - Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), - 100.0f); - } - // parses the json response, as it has lists within the object - public static CollectionModel.Collection ParseCollections(string json) - { - CollectionModel.Root root = JsonConvert.DeserializeObject(json); - return root.response.collection; - } - // parses the json response, as it has lists within the object same as above - public static GetNftModel.Response ParseNft(string json) - { - GetNftModel.Root root = JsonConvert.DeserializeObject(json); - return root.response; - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs.meta deleted file mode 100644 index 0f0a5bbd1..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7b785ad84942fa249afce48b7eabcb8d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs deleted file mode 100644 index 94b3d949c..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs +++ /dev/null @@ -1,149 +0,0 @@ -using System; -using System.Collections; -using System.Globalization; -using System.Text; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; - -namespace Web3Unity.Scripts.Prefabs.Minter -{ - public class ListNft : MonoBehaviour - { - private string _itemPrice = "0.001"; - private string _tokenType = ""; - private string _itemID = ""; - private string account; - - public Renderer textureObject; - public Text description; - public Text tokenURI; - public Text contractAddr; - public Text isApproved; - public InputField itemPrice; - public Text noListedItems; - public Text playerAccount; - - public void Awake() - { - description.text = ""; - tokenURI.text = ""; - isApproved.text = ""; - contractAddr.text = ""; - account = Web3Accessor.Web3.Signer.PublicAddress; - } - - // Start is called before the first frame update - private async void Start() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - playerAccount.text = account; - try - { - var response = await CSServer.GetMintedNFT(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, account); - - if (response[1].uri == null) - { - Debug.Log("Not Listed Items"); - return; - } - - if (response[1].uri.StartsWith("ipfs://")) - { - response[1].uri = response[1].uri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - } - - var webRequest = UnityWebRequest.Get(response[1].uri); - await webRequest.SendWebRequest(); - var data = JsonConvert.DeserializeObject(Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - description.text = data.description; - // parse json to get image uri - var imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri)); - } - else - { - StartCoroutine(DownloadImage(imageUri)); - } - - tokenURI.text = response[1].uri; - Debug.Log(response[1].uri); - contractAddr.text = response[1].nftContract; - Debug.Log("NFT Contract: " + response[1].nftContract); - isApproved.text = response[1].isApproved.ToString(); - _itemID = response[1].id; - _itemPrice = itemPrice.text; - Debug.Log("Token Type: " + response[1].tokenType); - _tokenType = response[1].tokenType; - } - catch (Exception e) - { - noListedItems.text = "NO LISTED ITEM for " + account; - Debug.Log("No Listed Items" + e); - } - } - - // ReSharper disable Unity.PerformanceAnalysis - private IEnumerator DownloadImage(string mediaUrl) - { - var request = UnityWebRequestTexture.GetTexture(mediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - { - Debug.Log(request.error); - } - else - { - var webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture; - var webSprite = SpriteFromTexture2D(webTexture); - textureObject.GetComponent().sprite = webSprite; - } - } - - private Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), 100.0f); - } - - public async void ListItem() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - var eth = float.Parse(_itemPrice); - float decimals = 1000000000000000000; // 18 decimals - var wei = eth * decimals; - Debug.Log("ItemID: " + _itemID); - var response = - await CSServer.CreateListNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, account, _itemID, Convert.ToDecimal(wei).ToString(CultureInfo.InvariantCulture), - _tokenType); - var value = Convert.ToInt32(response.tx.value.hex, 16); - Debug.Log("Response: " + response); - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = new HexBigInteger(value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.Log("Error: " + e); - } - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs.meta deleted file mode 100644 index ddab2f869..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c24d9e426ddb1c543acdff61a6589df2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter.meta deleted file mode 100644 index b1e511613..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 43a3d73ad82adb241b9c745dc46fdd6f -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab deleted file mode 100644 index a72e5ab0f..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab +++ /dev/null @@ -1,363 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &876154593149325209 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3878305427068847659} - - component: {fileID: 1713174434311318708} - - component: {fileID: 1912493306358107683} - - component: {fileID: 2626719895068634725} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3878305427068847659 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 876154593149325209} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 7455392642327436758} - m_Father: {fileID: 8193968085053257331} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &1713174434311318708 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 876154593149325209} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!114 &1912493306358107683 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 876154593149325209} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &2626719895068634725 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 876154593149325209} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &1194607908984202551 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7455392642327436758} - - component: {fileID: 3068094292720373368} - - component: {fileID: 2857004803660735988} - - component: {fileID: 5848637710539718353} - - component: {fileID: 809832919944141113} - m_Layer: 5 - m_Name: ApproveTransaction - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7455392642327436758 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1194607908984202551} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 3346215808139107429} - m_Father: {fileID: 3878305427068847659} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 21.068298, y: 40.749084} - m_SizeDelta: {x: 220, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3068094292720373368 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1194607908984202551} - m_CullTransparentMesh: 1 ---- !u!114 &2857004803660735988 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1194607908984202551} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &5848637710539718353 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1194607908984202551} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 2857004803660735988} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 809832919944141113} - m_TargetAssemblyTypeName: CreateApproval, Assembly-CSharp - m_MethodName: ApproveTransaction - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!114 &809832919944141113 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1194607908984202551} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: bee6d2ef00e0fc445ac34964f0acbf24, type: 3} - m_Name: - m_EditorClassIdentifier: - tokenType: 1155 ---- !u!1 &3740520113679879029 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3346215808139107429} - - component: {fileID: 2092123609195711457} - - component: {fileID: 2819960501460086039} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3346215808139107429 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3740520113679879029} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 7455392642327436758} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &2092123609195711457 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3740520113679879029} - m_CullTransparentMesh: 1 ---- !u!114 &2819960501460086039 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3740520113679879029} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Approve Transaction ---- !u!1 &7424244350142682644 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8193968085053257331} - m_Layer: 0 - m_Name: ApproveTransaction - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8193968085053257331 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7424244350142682644} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 704.1049, y: 424.79797, z: -1.7642212} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 3878305427068847659} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab.meta deleted file mode 100644 index 98697c241..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ApproveTransaction.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 895f3eaa5c6bb6a449947bc0abe2bce3 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab deleted file mode 100644 index 7854d23c2..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab +++ /dev/null @@ -1,1106 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &803954150240832273 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5983665640152817934} - - component: {fileID: 2460773460008644090} - - component: {fileID: 1516838448798858166} - m_Layer: 5 - m_Name: seller - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &5983665640152817934 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 803954150240832273} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 6.3013, y: 1} - m_SizeDelta: {x: 336.7461, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &2460773460008644090 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 803954150240832273} - m_CullTransparentMesh: 1 ---- !u!114 &1516838448798858166 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 803954150240832273} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.066037714, g: 0.063234225, b: 0.063234225, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Seller ---- !u!1 &1248448515727594353 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2785930264698737631} - - component: {fileID: 4482072313754180777} - - component: {fileID: 6686466351680706517} - - component: {fileID: 5529976885031828103} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2785930264698737631 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 7331513702362684921} - - {fileID: 5983665640152817934} - - {fileID: 318435823085831428} - - {fileID: 7847482655900267212} - - {fileID: 3805318816238316216} - - {fileID: 3641612000216259211} - - {fileID: 6156072388505827689} - - {fileID: 3952002557696565300} - - {fileID: 7904770071397911278} - - {fileID: 369880677028123527} - m_Father: {fileID: 6412277166927740745} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &4482072313754180777 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!114 &6686466351680706517 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &5529976885031828103 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &1399800835041379608 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3952002557696565300} - - component: {fileID: 4746000730396882082} - - component: {fileID: 2561369982256801256} - m_Layer: 5 - m_Name: itemId - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3952002557696565300 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1399800835041379608} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1.0832, y: -185} - m_SizeDelta: {x: 160.56, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &4746000730396882082 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1399800835041379608} - m_CullTransparentMesh: 1 ---- !u!114 &2561369982256801256 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1399800835041379608} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.05660379, g: 0.05633679, b: 0.05633679, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: item Id ---- !u!1 &1779503713121749347 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 318435823085831428} - - component: {fileID: 3348966656228845715} - - component: {fileID: 8893832190916015437} - m_Layer: 5 - m_Name: price - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &318435823085831428 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779503713121749347} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.854, y: -22} - m_SizeDelta: {x: 223.97, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3348966656228845715 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779503713121749347} - m_CullTransparentMesh: 1 ---- !u!114 &8893832190916015437 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779503713121749347} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.03773582, g: 0.036845826, b: 0.036845826, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: price ---- !u!1 &1953954708691729831 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3805318816238316216} - - component: {fileID: 4588449922912012339} - - component: {fileID: 2413627831799654468} - m_Layer: 5 - m_Name: listed percentage - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3805318816238316216 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1953954708691729831} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -0.8, y: -99.9} - m_SizeDelta: {x: 160, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &4588449922912012339 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1953954708691729831} - m_CullTransparentMesh: 1 ---- !u!114 &2413627831799654468 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1953954708691729831} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.047169805, g: 0.046947304, b: 0.046947304, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Listed Percentage ---- !u!1 &2077093899367794207 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7904770071397911278} - - component: {fileID: 3320835638743597960} - - component: {fileID: 5337679207975425507} - - component: {fileID: 2097097020288793545} - - component: {fileID: 2122622288223541500} - m_Layer: 5 - m_Name: Purchase NFT - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7904770071397911278 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 6964566297583069771} - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 8 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -7.2, y: -250} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3320835638743597960 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_CullTransparentMesh: 1 ---- !u!114 &5337679207975425507 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &2097097020288793545 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 5337679207975425507} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 2122622288223541500} - m_TargetAssemblyTypeName: GetListedNFts, Assembly-CSharp - m_MethodName: PurchaseItem - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!114 &2122622288223541500 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: b2b606c43a8ad934f90b41d8f3adefa9, type: 3} - m_Name: - m_EditorClassIdentifier: - textureObject: {fileID: 2707148503929829720} - price: {fileID: 8893832190916015437} - seller: {fileID: 1516838448798858166} - description: {fileID: 4745343110918946191} - listPercentage: {fileID: 2413627831799654468} - contractAddr: {fileID: 2718362954267046474} - tokenId: {fileID: 4148041438215461471} - itemId: {fileID: 2561369982256801256} ---- !u!1 &3976548911116731797 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 369880677028123527} - - component: {fileID: 5818496815076125545} - - component: {fileID: 1749939217356748311} - - component: {fileID: 2707148503929829720} - m_Layer: 5 - m_Name: NFTImage - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &369880677028123527 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 9 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.854, y: 131.39288} - m_SizeDelta: {x: 223.97, y: 179.7695} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &5818496815076125545 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_CullTransparentMesh: 1 ---- !u!114 &1749939217356748311 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!212 &2707148503929829720 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_Sprite: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 0 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &5505175556124181350 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7847482655900267212} - - component: {fileID: 3162052657773805834} - - component: {fileID: 4745343110918946191} - m_Layer: 5 - m_Name: description - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7847482655900267212 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5505175556124181350} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.854, y: -54.7423} - m_SizeDelta: {x: 223.97, y: 33.6847} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3162052657773805834 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5505175556124181350} - m_CullTransparentMesh: 1 ---- !u!114 &4745343110918946191 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5505175556124181350} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.03773582, g: 0.036845826, b: 0.036845826, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Description ---- !u!1 &5639624983829550187 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6156072388505827689} - - component: {fileID: 5269432312898304710} - - component: {fileID: 4148041438215461471} - m_Layer: 5 - m_Name: tokenId - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &6156072388505827689 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5639624983829550187} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1.0832, y: -158} - m_SizeDelta: {x: 160.56, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &5269432312898304710 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5639624983829550187} - m_CullTransparentMesh: 1 ---- !u!114 &4148041438215461471 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5639624983829550187} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.05660379, g: 0.05633679, b: 0.05633679, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: tokenId ---- !u!1 &5902257893785959999 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3641612000216259211} - - component: {fileID: 7710839712433886724} - - component: {fileID: 2718362954267046474} - m_Layer: 5 - m_Name: contract - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3641612000216259211 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5902257893785959999} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -0.8, y: -125.2} - m_SizeDelta: {x: 160, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &7710839712433886724 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5902257893785959999} - m_CullTransparentMesh: 1 ---- !u!114 &2718362954267046474 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5902257893785959999} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.066037714, g: 0.06510322, b: 0.06510322, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Contract ---- !u!1 &6548384013179317282 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6964566297583069771} - - component: {fileID: 604076157582206530} - - component: {fileID: 5613181599983052777} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &6964566297583069771 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6548384013179317282} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 7904770071397911278} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &604076157582206530 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6548384013179317282} - m_CullTransparentMesh: 1 ---- !u!114 &5613181599983052777 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6548384013179317282} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: 'Purchase NFT - -' ---- !u!1 &6844282264439920868 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7331513702362684921} - m_Layer: 5 - m_Name: GameManager - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7331513702362684921 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6844282264439920868} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &6989655963179188101 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6412277166927740745} - m_Layer: 0 - m_Name: BuyItem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &6412277166927740745 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6989655963179188101} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0.5, y: 0.5, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 2785930264698737631} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab.meta deleted file mode 100644 index 4ae62a2e7..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/BuyItem.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 6607b03aaee5e8641b49dc13ea481895 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab deleted file mode 100644 index 0e4d52654..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab +++ /dev/null @@ -1,3620 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &8419363204362839627 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204362839624} - - component: {fileID: 8419363204362839625} - - component: {fileID: 8419363204362839670} - m_Layer: 0 - m_Name: C3DescText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204362839624 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204362839627} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -6.000061, y: -86.336} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204362839625 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204362839627} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204362839670 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204362839627} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &8419363204425412311 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204425412308} - - component: {fileID: 8419363204425412306} - - component: {fileID: 8419363204425412309} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204425412308 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204425412311} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205253018286} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204425412306 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204425412311} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204425412309 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204425412311} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Buy ---- !u!1 &8419363204426885679 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204426885676} - - component: {fileID: 8419363204426885677} - - component: {fileID: 8419363204426885674} - m_Layer: 0 - m_Name: C2DescText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204426885676 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204426885679} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 6.0000057, y: -86.336} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204426885677 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204426885679} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204426885674 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204426885679} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &8419363204460151647 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204460151644} - - component: {fileID: 8419363204460151640} - - component: {fileID: 8419363204460151641} - - component: {fileID: 8419363204460151643} - - component: {fileID: 8419363204460151642} - - component: {fileID: 8419363204460151645} - m_Layer: 0 - m_Name: Image3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204460151644 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204460151647} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.644, y: 2.644, z: 2.644} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363204460151640 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204460151647} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363204460151641 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204460151647} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363204460151643 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204460151647} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363204460151642 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204460151647} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204460151645 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204460151647} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363204563269134 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204563269135} - - component: {fileID: 8419363204563269132} - - component: {fileID: 8419363204563269133} - m_Layer: 0 - m_Name: C1SellerText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204563269135 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204563269134} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: -231.33} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204563269132 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204563269134} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204563269133 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204563269134} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Seller ---- !u!1 &8419363204613573619 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204613573616} - m_Layer: 0 - m_Name: C3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &8419363204613573616 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204613573619} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205329164280} - - {fileID: 8419363205168982178} - - {fileID: 8419363204460151644} - - {fileID: 8419363205615863837} - - {fileID: 8419363204362839624} - - {fileID: 8419363205639943485} - - {fileID: 8419363205719389641} - - {fileID: 8419363204869313776} - - {fileID: 8419363205253018286} - m_Father: {fileID: 8419363205644584134} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 671, y: 26} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &8419363204688324350 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204688324351} - - component: {fileID: 8419363204688324348} - - component: {fileID: 8419363204688324349} - m_Layer: 0 - m_Name: C1IDText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204688324351 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204688324350} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: -6.6661} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204688324348 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204688324350} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204688324349 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204688324350} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &8419363204844041166 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204844041167} - - component: {fileID: 8419363204844041162} - - component: {fileID: 8419363204844041165} - - component: {fileID: 8419363204844041164} - m_Layer: 5 - m_Name: BgCanvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204844041167 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204844041166} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205765612580} - m_Father: {fileID: 8419363205459245633} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &8419363204844041162 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204844041166} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!114 &8419363204844041165 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204844041166} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &8419363204844041164 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204844041166} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &8419363204869313779 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204869313776} - - component: {fileID: 8419363204869313777} - - component: {fileID: 8419363204869313790} - m_Layer: 0 - m_Name: TokenTypeText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204869313776 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204869313779} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.888, y: 2.888, z: 2.888} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -6, y: 76} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204869313777 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204869313779} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204869313790 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204869313779} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Type ---- !u!1 &8419363204955846357 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204955846354} - - component: {fileID: 8419363204955846355} - - component: {fileID: 8419363204955846352} - m_Layer: 0 - m_Name: C2SellerText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204955846354 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204955846357} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 6.7966056, y: -231.33} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204955846355 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204955846357} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204955846352 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204955846357} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Seller ---- !u!1 &8419363204997493410 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363204997493411} - - component: {fileID: 8419363204997493408} - - component: {fileID: 8419363204997493409} - m_Layer: 0 - m_Name: C2IDText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363204997493411 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204997493410} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 6, y: -6.6661} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363204997493408 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204997493410} - m_CullTransparentMesh: 1 ---- !u!114 &8419363204997493409 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363204997493410} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &8419363205011897412 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205011897413} - - component: {fileID: 8419363205011897410} - - component: {fileID: 8419363205011897411} - m_Layer: 0 - m_Name: TokenTypeText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205011897413 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205011897412} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: 76} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205011897410 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205011897412} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205011897411 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205011897412} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Type ---- !u!1 &8419363205065497540 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205065497541} - - component: {fileID: 8419363205065497536} - - component: {fileID: 8419363205065497539} - - component: {fileID: 8419363205065497538} - m_Layer: 0 - m_Name: BuyButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205065497541 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205065497540} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.1668, y: 2.1668, z: 2.1668} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205905786129} - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 8 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -9, y: -368} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205065497536 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205065497540} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205065497539 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205065497540} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &8419363205065497538 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205065497540} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 8419363205065497539} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 8419363205459245632} - m_TargetAssemblyTypeName: GetListedCollectionsWeb3Wallet, Assembly-CSharp - m_MethodName: BuyNFT - m_Mode: 3 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 1 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &8419363205168982181 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205168982178} - - component: {fileID: 8419363205168982191} - - component: {fileID: 8419363205168982190} - - component: {fileID: 8419363205168982177} - - component: {fileID: 8419363205168982176} - - component: {fileID: 8419363205168982179} - m_Layer: 0 - m_Name: TextBg (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205168982178 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205168982181} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 5.2083797, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -7, y: -110} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205168982191 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205168982181} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205168982190 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205168982181} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205168982177 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205168982181} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205168982176 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205168982181} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205168982179 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205168982181} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205182271742 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205182271743} - - component: {fileID: 8419363205182271740} - - component: {fileID: 8419363205182271741} - m_Layer: 0 - m_Name: C1PriceText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205182271743 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205182271742} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: -158.04} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205182271740 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205182271742} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205182271741 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205182271742} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Price ---- !u!1 &8419363205232907131 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205232907128} - - component: {fileID: 8419363205232907108} - - component: {fileID: 8419363205232907109} - - component: {fileID: 8419363205232907111} - - component: {fileID: 8419363205232907110} - - component: {fileID: 8419363205232907129} - m_Layer: 0 - m_Name: Image2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205232907128 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205232907131} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.644, y: 2.644, z: 2.644} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205232907108 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205232907131} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205232907109 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205232907131} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205232907111 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205232907131} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205232907110 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205232907131} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205232907129 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205232907131} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205253018273 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205253018286} - - component: {fileID: 8419363205253018285} - - component: {fileID: 8419363205253018284} - - component: {fileID: 8419363205253018287} - m_Layer: 0 - m_Name: BuyButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205253018286 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205253018273} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.1668, y: 2.1668, z: 2.1668} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363204425412308} - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 8 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -5, y: -368} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205253018285 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205253018273} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205253018284 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205253018273} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &8419363205253018287 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205253018273} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 8419363205253018284} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 8419363205459245632} - m_TargetAssemblyTypeName: GetListedCollectionsWeb3Wallet, Assembly-CSharp - m_MethodName: BuyNFT - m_Mode: 3 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 2 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &8419363205286236886 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205286236887} - - component: {fileID: 8419363205286236880} - - component: {fileID: 8419363205286236883} - - component: {fileID: 8419363205286236882} - - component: {fileID: 8419363205286236885} - - component: {fileID: 8419363205286236884} - m_Layer: 0 - m_Name: Border (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205286236887 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205286236886} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 3.04139, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 1, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205286236880 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205286236886} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205286236883 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205286236886} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205286236882 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205286236886} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205286236885 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205286236886} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205286236884 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205286236886} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205329164283 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205329164280} - - component: {fileID: 8419363205329164261} - - component: {fileID: 8419363205329164260} - - component: {fileID: 8419363205329164263} - - component: {fileID: 8419363205329164262} - - component: {fileID: 8419363205329164281} - m_Layer: 0 - m_Name: Border (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205329164280 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205329164283} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 3.04139, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205329164261 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205329164283} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205329164260 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205329164283} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205329164263 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205329164283} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205329164262 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205329164283} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205329164281 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205329164283} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205344200158 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205344200159} - - component: {fileID: 8419363205344200156} - - component: {fileID: 8419363205344200157} - m_Layer: 0 - m_Name: C1DescText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205344200159 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205344200158} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: -86.336} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205344200156 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205344200158} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205344200157 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205344200158} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &8419363205366174493 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205366174490} - - component: {fileID: 8419363205366174488} - - component: {fileID: 8419363205366174491} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205366174490 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205366174493} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206047666748} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205366174488 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205366174493} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205366174491 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205366174493} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Buy ---- !u!1 &8419363205459245635 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205459245633} - - component: {fileID: 8419363205459245632} - m_Layer: 0 - m_Name: GetListedCollections - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8419363205459245633 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205459245635} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 960, y: 540, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205644584134} - - {fileID: 8419363204844041167} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &8419363205459245632 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205459245635} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0de123e82ca6d2742bbc6782459c7b74, type: 3} - m_Name: - m_EditorClassIdentifier: - idsBuy: - - {fileID: 8419363204688324349} - - {fileID: 8419363204997493409} - - {fileID: 8419363205615863835} - descriptionsBuy: - - {fileID: 8419363205344200157} - - {fileID: 8419363204426885674} - - {fileID: 8419363204362839670} - prices: - - {fileID: 8419363205182271741} - - {fileID: 8419363206356894496} - - {fileID: 8419363205639943483} - sellers: - - {fileID: 8419363204563269133} - - {fileID: 8419363204955846352} - - {fileID: 8419363205719389687} - tokenTypesBuy: - - {fileID: 8419363205011897411} - - {fileID: 8419363206365947644} - - {fileID: 8419363204869313790} - textureObjects: - - {fileID: 8419363205487710267} - - {fileID: 8419363205232907109} - - {fileID: 8419363204460151641} - C1b: {fileID: 8419363206185056191} - C2b: {fileID: 8419363205956297298} - C3b: {fileID: 8419363204613573619} - collectionSlug: ---- !u!1 &8419363205478564676 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205478564677} - - component: {fileID: 8419363205478564686} - - component: {fileID: 8419363205478564673} - - component: {fileID: 8419363205478564672} - - component: {fileID: 8419363205478564675} - - component: {fileID: 8419363205478564674} - m_Layer: 0 - m_Name: TextBg - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205478564677 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205478564676} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 5.2083797, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -10, y: -110} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205478564686 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205478564676} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205478564673 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205478564676} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205478564672 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205478564676} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205478564675 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205478564676} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205478564674 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205478564676} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205487710257 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205487710270} - - component: {fileID: 8419363205487710266} - - component: {fileID: 8419363205487710267} - - component: {fileID: 8419363205487710269} - - component: {fileID: 8419363205487710268} - - component: {fileID: 8419363205487710271} - m_Layer: 0 - m_Name: Image1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205487710270 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205487710257} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.644, y: 2.644, z: 2.644} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205487710266 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205487710257} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205487710267 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205487710257} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205487710269 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205487710257} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205487710268 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205487710257} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205487710271 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205487710257} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205554748576 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205554748577} - - component: {fileID: 8419363205554748586} - - component: {fileID: 8419363205554748589} - - component: {fileID: 8419363205554748588} - - component: {fileID: 8419363205554748591} - - component: {fileID: 8419363205554748590} - m_Layer: 0 - m_Name: TextBg (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205554748577 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205554748576} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 5.2083797, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 1, y: -110} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205554748586 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205554748576} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205554748589 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205554748576} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205554748588 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205554748576} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205554748591 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205554748576} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205554748590 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205554748576} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205615863836 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205615863837} - - component: {fileID: 8419363205615863834} - - component: {fileID: 8419363205615863835} - m_Layer: 0 - m_Name: C3IDText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205615863837 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205615863836} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -6, y: -6.6661} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205615863834 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205615863836} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205615863835 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205615863836} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &8419363205639943484 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205639943485} - - component: {fileID: 8419363205639943482} - - component: {fileID: 8419363205639943483} - m_Layer: 0 - m_Name: C3PriceText (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205639943485 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205639943484} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -6.000061, y: -158.04} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205639943482 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205639943484} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205639943483 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205639943484} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Price ---- !u!1 &8419363205644584153 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205644584134} - - component: {fileID: 8419363205644584133} - - component: {fileID: 8419363205644584132} - - component: {fileID: 8419363205644584135} - m_Layer: 0 - m_Name: BuyCanvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205644584134 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205644584153} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363206185056188} - - {fileID: 8419363205956297299} - - {fileID: 8419363204613573616} - m_Father: {fileID: 8419363205459245633} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &8419363205644584133 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205644584153} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 2 - m_TargetDisplay: 0 ---- !u!114 &8419363205644584132 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205644584153} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &8419363205644584135 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205644584153} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &8419363205719389640 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205719389641} - - component: {fileID: 8419363205719389686} - - component: {fileID: 8419363205719389687} - m_Layer: 0 - m_Name: C3SellerText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205719389641 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205719389640} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204613573616} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -4.4100647, y: -231.33} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205719389686 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205719389640} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205719389687 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205719389640} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Seller ---- !u!1 &8419363205765612583 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205765612580} - - component: {fileID: 8419363205765612578} - - component: {fileID: 8419363205765612581} - m_Layer: 5 - m_Name: FadedBg - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205765612580 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205765612583} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363204844041167} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 1920, y: 1080} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205765612578 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205765612583} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205765612581 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205765612583} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 0.5882353} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205905786128 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205905786129} - - component: {fileID: 8419363205905786143} - - component: {fileID: 8419363205905786142} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205905786129 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205905786128} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205065497541} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363205905786143 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205905786128} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205905786142 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205905786128} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Buy ---- !u!1 &8419363205947275095 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205947275092} - - component: {fileID: 8419363205947275089} - - component: {fileID: 8419363205947275088} - - component: {fileID: 8419363205947275091} - - component: {fileID: 8419363205947275090} - - component: {fileID: 8419363205947275093} - m_Layer: 0 - m_Name: Border - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363205947275092 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205947275095} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 3.04139, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &8419363205947275089 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205947275095} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &8419363205947275088 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205947275095} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &8419363205947275091 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205947275095} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &8419363205947275090 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205947275095} - m_CullTransparentMesh: 1 ---- !u!114 &8419363205947275093 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205947275095} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &8419363205956297298 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363205956297299} - m_Layer: 0 - m_Name: C2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &8419363205956297299 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363205956297298} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205286236887} - - {fileID: 8419363205554748577} - - {fileID: 8419363205232907128} - - {fileID: 8419363204997493411} - - {fileID: 8419363204426885676} - - {fileID: 8419363206356894498} - - {fileID: 8419363204955846354} - - {fileID: 8419363206365947646} - - {fileID: 8419363205065497541} - m_Father: {fileID: 8419363205644584134} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 51, y: 26} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &8419363206047666751 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363206047666748} - - component: {fileID: 8419363206047666747} - - component: {fileID: 8419363206047666746} - - component: {fileID: 8419363206047666749} - m_Layer: 0 - m_Name: BuyButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363206047666748 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206047666751} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.1668, y: 2.1668, z: 2.1668} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205366174490} - m_Father: {fileID: 8419363206185056188} - m_RootOrder: 8 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: -368} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363206047666747 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206047666751} - m_CullTransparentMesh: 1 ---- !u!114 &8419363206047666746 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206047666751} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &8419363206047666749 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206047666751} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 8419363206047666746} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 8419363205459245632} - m_TargetAssemblyTypeName: GetListedCollectionsWeb3Wallet, Assembly-CSharp - m_MethodName: BuyNFT - m_Mode: 3 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &8419363206185056191 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363206185056188} - m_Layer: 0 - m_Name: C1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &8419363206185056188 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206185056191} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 8419363205947275092} - - {fileID: 8419363205478564677} - - {fileID: 8419363205487710270} - - {fileID: 8419363204688324351} - - {fileID: 8419363205344200159} - - {fileID: 8419363205182271743} - - {fileID: 8419363204563269135} - - {fileID: 8419363205011897413} - - {fileID: 8419363206047666748} - m_Father: {fileID: 8419363205644584134} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -592, y: 26} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &8419363206356894501 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363206356894498} - - component: {fileID: 8419363206356894499} - - component: {fileID: 8419363206356894496} - m_Layer: 0 - m_Name: C2PriceText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363206356894498 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206356894501} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.8880012, y: 2.8880012, z: 2.8880012} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 6.0000057, y: -158.04} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363206356894499 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206356894501} - m_CullTransparentMesh: 1 ---- !u!114 &8419363206356894496 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206356894501} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Price ---- !u!1 &8419363206365947633 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8419363206365947646} - - component: {fileID: 8419363206365947647} - - component: {fileID: 8419363206365947644} - m_Layer: 0 - m_Name: TokenTypeText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8419363206365947646 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206365947633} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.888, y: 2.888, z: 2.888} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8419363205956297299} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 1, y: 76} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8419363206365947647 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206365947633} - m_CullTransparentMesh: 1 ---- !u!114 &8419363206365947644 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8419363206365947633} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Type diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab.meta deleted file mode 100644 index de5e2db8b..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/GetListedCollections.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ec06fc645f5d50f47bba14bded35ba95 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab deleted file mode 100644 index 71589c351..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab +++ /dev/null @@ -1,4054 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &1880600174281538512 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174281538513} - - component: {fileID: 1880600174281538516} - - component: {fileID: 1880600174281538519} - - component: {fileID: 1880600174281538518} - m_Layer: 0 - m_Name: PriceInput - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174281538513 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174281538512} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1.8663, y: 1.8663, z: 1.8663} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600174284539425} - - {fileID: 1880600175539881279} - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: -239} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174281538516 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174281538512} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174281538519 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174281538512} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1880600174281538518 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174281538512} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d199490a83bb2b844b9695cbf13b01ef, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1880600174281538519} - m_TextComponent: {fileID: 1880600175539881276} - m_Placeholder: {fileID: 1880600174284539430} - m_ContentType: 3 - m_InputType: 0 - m_AsteriskChar: 42 - m_KeyboardType: 2 - m_LineType: 0 - m_HideMobileInput: 0 - m_CharacterValidation: 2 - m_CharacterLimit: 18 - m_OnSubmit: - m_PersistentCalls: - m_Calls: [] - m_OnDidEndEdit: - m_PersistentCalls: - m_Calls: [] - m_OnValueChanged: - m_PersistentCalls: - m_Calls: [] - m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_CustomCaretColor: 0 - m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} - m_Text: Enter Price - m_CaretBlinkRate: 0.85 - m_CaretWidth: 1 - m_ReadOnly: 0 - m_ShouldActivateOnSelect: 1 ---- !u!1 &1880600174284539424 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174284539425} - - component: {fileID: 1880600174284539431} - - component: {fileID: 1880600174284539430} - m_Layer: 0 - m_Name: Placeholder - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174284539425 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174284539424} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174281538513} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174284539431 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174284539424} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174284539430 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174284539424} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 0} - m_FontSize: 14 - m_FontStyle: 2 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter text... ---- !u!1 &1880600174331244807 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174331244804} - - component: {fileID: 1880600174331244827} - - component: {fileID: 1880600174331244826} - - component: {fileID: 1880600174331244805} - m_Layer: 0 - m_Name: SellButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174331244804 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174331244807} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.1668, y: 2.1668, z: 2.1668} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175002709933} - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -9, y: -368} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174331244827 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174331244807} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174331244826 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174331244807} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1880600174331244805 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174331244807} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1880600174331244826} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 1880600175203352847} - m_TargetAssemblyTypeName: ListCollectionsWeb3Wallet, Assembly-CSharp - m_MethodName: SellNFT - m_Mode: 3 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 1 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &1880600174336411504 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174336411505} - - component: {fileID: 1880600174336411508} - - component: {fileID: 1880600174336411511} - - component: {fileID: 1880600174336411510} - m_Layer: 0 - m_Name: PriceInput (1) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174336411505 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174336411504} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1.8663, y: 1.8663, z: 1.8663} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175899833126} - - {fileID: 1880600175201371211} - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 4, y: -239} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174336411508 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174336411504} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174336411511 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174336411504} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1880600174336411510 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174336411504} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d199490a83bb2b844b9695cbf13b01ef, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1880600174336411511} - m_TextComponent: {fileID: 1880600175201371208} - m_Placeholder: {fileID: 1880600175899833127} - m_ContentType: 3 - m_InputType: 0 - m_AsteriskChar: 42 - m_KeyboardType: 2 - m_LineType: 0 - m_HideMobileInput: 0 - m_CharacterValidation: 2 - m_CharacterLimit: 18 - m_OnSubmit: - m_PersistentCalls: - m_Calls: [] - m_OnDidEndEdit: - m_PersistentCalls: - m_Calls: [] - m_OnValueChanged: - m_PersistentCalls: - m_Calls: [] - m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_CustomCaretColor: 0 - m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} - m_Text: Enter Price - m_CaretBlinkRate: 0.85 - m_CaretWidth: 1 - m_ReadOnly: 0 - m_ShouldActivateOnSelect: 1 ---- !u!1 &1880600174502539781 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174502539802} - - component: {fileID: 1880600174502539800} - - component: {fileID: 1880600174502539803} - m_Layer: 0 - m_Name: C1IDText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174502539802 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174502539781} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.887965, y: 2.887965, z: 2.887965} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: -33.166} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174502539800 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174502539781} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174502539803 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174502539781} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &1880600174549123072 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174549123073} - - component: {fileID: 1880600174549123076} - - component: {fileID: 1880600174549123079} - - component: {fileID: 1880600174549123078} - m_Layer: 0 - m_Name: SellButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174549123073 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174549123072} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.1668, y: 2.1668, z: 2.1668} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175329697816} - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -5, y: -368} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174549123076 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174549123072} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174549123079 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174549123072} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1880600174549123078 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174549123072} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1880600174549123079} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 1880600175203352847} - m_TargetAssemblyTypeName: ListCollectionsWeb3Wallet, Assembly-CSharp - m_MethodName: SellNFT - m_Mode: 3 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 2 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &1880600174574106274 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174574106275} - - component: {fileID: 1880600174574106272} - - component: {fileID: 1880600174574106273} - m_Layer: 0 - m_Name: TokenTypeText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174574106275 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174574106274} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.888, y: 2.888, z: 2.888} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -3, y: 76} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174574106272 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174574106274} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174574106273 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174574106274} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Type ---- !u!1 &1880600174688058696 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174688058697} - - component: {fileID: 1880600174688058690} - - component: {fileID: 1880600174688058701} - - component: {fileID: 1880600174688058700} - - component: {fileID: 1880600174688058703} - - component: {fileID: 1880600174688058702} - m_Layer: 0 - m_Name: Border - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174688058697 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174688058696} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 3.04139, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -3, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600174688058690 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174688058696} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600174688058701 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174688058696} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600174688058700 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174688058696} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600174688058703 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174688058696} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174688058702 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174688058696} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600174737155605 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174737155690} - m_Layer: 0 - m_Name: C3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &1880600174737155690 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174737155605} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175865136333} - - {fileID: 1880600175472506693} - - {fileID: 1880600175590642028} - - {fileID: 1880600175042851350} - - {fileID: 1880600175578080345} - - {fileID: 1880600175681894134} - - {fileID: 1880600174992786707} - - {fileID: 1880600174549123073} - m_Father: {fileID: 1880600175415587208} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 671, y: 26} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1880600174832683809 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174832683814} - - component: {fileID: 1880600174832683812} - - component: {fileID: 1880600174832683815} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174832683814 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174832683809} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175878028085} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174832683812 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174832683809} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174832683815 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174832683809} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Sell ---- !u!1 &1880600174992786706 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600174992786707} - - component: {fileID: 1880600174992786710} - - component: {fileID: 1880600174992786705} - - component: {fileID: 1880600174992786704} - m_Layer: 0 - m_Name: PriceInput (2) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600174992786707 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174992786706} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1.8663, y: 1.8663, z: 1.8663} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175152271624} - - {fileID: 1880600176048087719} - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: -239} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600174992786710 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174992786706} - m_CullTransparentMesh: 1 ---- !u!114 &1880600174992786705 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174992786706} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1880600174992786704 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600174992786706} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d199490a83bb2b844b9695cbf13b01ef, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1880600174992786705} - m_TextComponent: {fileID: 1880600176048087716} - m_Placeholder: {fileID: 1880600175152271625} - m_ContentType: 3 - m_InputType: 0 - m_AsteriskChar: 42 - m_KeyboardType: 2 - m_LineType: 0 - m_HideMobileInput: 0 - m_CharacterValidation: 2 - m_CharacterLimit: 18 - m_OnSubmit: - m_PersistentCalls: - m_Calls: [] - m_OnDidEndEdit: - m_PersistentCalls: - m_Calls: [] - m_OnValueChanged: - m_PersistentCalls: - m_Calls: [] - m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_CustomCaretColor: 0 - m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} - m_Text: Enter Price - m_CaretBlinkRate: 0.85 - m_CaretWidth: 1 - m_ReadOnly: 0 - m_ShouldActivateOnSelect: 1 ---- !u!1 &1880600175002709932 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175002709933} - - component: {fileID: 1880600175002709923} - - component: {fileID: 1880600175002709922} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175002709933 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175002709932} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174331244804} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175002709923 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175002709932} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175002709922 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175002709932} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Sell ---- !u!1 &1880600175042851345 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175042851350} - - component: {fileID: 1880600175042851348} - - component: {fileID: 1880600175042851351} - m_Layer: 0 - m_Name: C3IDText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175042851350 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175042851345} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.887965, y: 2.887965, z: 2.887965} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 4, y: -33.166} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175042851348 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175042851345} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175042851351 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175042851345} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &1880600175083966622 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175083966623} - - component: {fileID: 1880600175083966608} - - component: {fileID: 1880600175083966611} - - component: {fileID: 1880600175083966610} - - component: {fileID: 1880600175083966621} - - component: {fileID: 1880600175083966620} - m_Layer: 0 - m_Name: Image1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175083966623 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175083966622} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.644, y: 2.644, z: 2.644} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175083966608 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175083966622} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175083966611 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175083966622} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175083966610 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175083966622} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175083966621 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175083966622} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175083966620 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175083966622} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175099180555 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175099180552} - m_Layer: 0 - m_Name: C2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &1880600175099180552 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175099180555} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600174688058697} - - {fileID: 1880600175254584196} - - {fileID: 1880600175519971513} - - {fileID: 1880600175199187257} - - {fileID: 1880600175946872188} - - {fileID: 1880600174574106275} - - {fileID: 1880600174336411505} - - {fileID: 1880600174331244804} - m_Father: {fileID: 1880600175415587208} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 71, y: 26} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1880600175152271627 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175152271624} - - component: {fileID: 1880600175152271630} - - component: {fileID: 1880600175152271625} - m_Layer: 0 - m_Name: Placeholder - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175152271624 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175152271627} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174992786707} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175152271630 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175152271627} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175152271625 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175152271627} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 0} - m_FontSize: 14 - m_FontStyle: 2 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter text... ---- !u!1 &1880600175174241569 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175174241574} - - component: {fileID: 1880600175174241572} - - component: {fileID: 1880600175174241575} - m_Layer: 0 - m_Name: C1DescText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175174241574 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175174241569} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.887965, y: 2.887965, z: 2.887965} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1.0000153, y: -112.83} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175174241572 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175174241569} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175174241575 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175174241569} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &1880600175199187256 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175199187257} - - component: {fileID: 1880600175199187263} - - component: {fileID: 1880600175199187262} - m_Layer: 0 - m_Name: C2IDText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175199187257 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175199187256} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.887965, y: 2.887965, z: 2.887965} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2, y: -33.166} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175199187263 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175199187256} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175199187262 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175199187256} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &1880600175201371210 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175201371211} - - component: {fileID: 1880600175201371209} - - component: {fileID: 1880600175201371208} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175201371211 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175201371210} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174336411505} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175201371209 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175201371210} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175201371208 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175201371210} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 0 - m_HorizontalOverflow: 1 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter Price ---- !u!1 &1880600175203352840 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175203352846} - - component: {fileID: 1880600175203352847} - m_Layer: 0 - m_Name: ListCollections - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1880600175203352846 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175203352840} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 960, y: 540, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175415587208} - - {fileID: 1880600175248059378} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1880600175203352847 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175203352840} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7b785ad84942fa249afce48b7eabcb8d, type: 3} - m_Name: - m_EditorClassIdentifier: - idsSell: - - {fileID: 1880600174502539803} - - {fileID: 1880600175199187262} - - {fileID: 1880600175042851351} - descriptionsSell: - - {fileID: 1880600175174241575} - - {fileID: 1880600175946872189} - - {fileID: 1880600175578080350} - tokenTypesSell: - - {fileID: 1880600175486702695} - - {fileID: 1880600174574106273} - - {fileID: 1880600175681894132} - PriceInputs: - - {fileID: 1880600174281538518} - - {fileID: 1880600174336411510} - - {fileID: 1880600174992786704} - textureObjects: - - {fileID: 1880600175083966611} - - {fileID: 1880600175519971517} - - {fileID: 1880600175590642016} - C1s: {fileID: 1880600175710476625} - C2s: {fileID: 1880600175099180555} - C3s: {fileID: 1880600174737155605} - collectionSlug: ---- !u!1 &1880600175248059389 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175248059378} - - component: {fileID: 1880600175248059377} - - component: {fileID: 1880600175248059376} - - component: {fileID: 1880600175248059379} - m_Layer: 5 - m_Name: BgCanvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175248059378 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175248059389} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175496296768} - m_Father: {fileID: 1880600175203352846} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &1880600175248059377 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175248059389} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!114 &1880600175248059376 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175248059389} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &1880600175248059379 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175248059389} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &1880600175250670195 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175250670192} - - component: {fileID: 1880600175250670197} - - component: {fileID: 1880600175250670196} - - component: {fileID: 1880600175250670199} - - component: {fileID: 1880600175250670198} - - component: {fileID: 1880600175250670193} - m_Layer: 0 - m_Name: TextBg - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175250670192 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175250670195} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 5.2083797, y: 3.383546, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 6, y: -131} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175250670197 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175250670195} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175250670196 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175250670195} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175250670199 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175250670195} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175250670198 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175250670195} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175250670193 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175250670195} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175254584199 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175254584196} - - component: {fileID: 1880600175254584217} - - component: {fileID: 1880600175254584216} - - component: {fileID: 1880600175254584219} - - component: {fileID: 1880600175254584218} - - component: {fileID: 1880600175254584197} - m_Layer: 0 - m_Name: TextBg - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175254584196 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175254584199} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 5.2083797, y: 3.38355, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 4, y: -131} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175254584217 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175254584199} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175254584216 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175254584199} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175254584219 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175254584199} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175254584218 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175254584199} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175254584197 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175254584199} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175316231970 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175316231971} - - component: {fileID: 1880600175316231972} - - component: {fileID: 1880600175316231975} - - component: {fileID: 1880600175316231974} - - component: {fileID: 1880600175316231969} - - component: {fileID: 1880600175316231968} - m_Layer: 0 - m_Name: Border - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175316231971 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175316231970} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 3.04139, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175316231972 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175316231970} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175316231975 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175316231970} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175316231974 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175316231970} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175316231969 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175316231970} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175316231968 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175316231970} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175329697819 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175329697816} - - component: {fileID: 1880600175329697822} - - component: {fileID: 1880600175329697817} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175329697816 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175329697819} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174549123073} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175329697822 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175329697819} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175329697817 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175329697819} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Sell ---- !u!1 &1880600175415587252 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175415587208} - - component: {fileID: 1880600175415587253} - - component: {fileID: 1880600175415587211} - - component: {fileID: 1880600175415587210} - m_Layer: 0 - m_Name: SellCanvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175415587208 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175415587252} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175710476630} - - {fileID: 1880600175099180552} - - {fileID: 1880600174737155690} - m_Father: {fileID: 1880600175203352846} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &1880600175415587253 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175415587252} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 1 - m_TargetDisplay: 0 ---- !u!114 &1880600175415587211 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175415587252} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &1880600175415587210 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175415587252} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &1880600175472506692 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175472506693} - - component: {fileID: 1880600175472506718} - - component: {fileID: 1880600175472506713} - - component: {fileID: 1880600175472506712} - - component: {fileID: 1880600175472506715} - - component: {fileID: 1880600175472506714} - m_Layer: 0 - m_Name: TextBg - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175472506693 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175472506692} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 5.2083797, y: 3.38355, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 5, y: -131} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175472506718 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175472506692} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175472506713 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175472506692} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175472506712 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175472506692} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175472506715 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175472506692} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175472506714 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175472506692} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175486702688 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175486702689} - - component: {fileID: 1880600175486702694} - - component: {fileID: 1880600175486702695} - m_Layer: 0 - m_Name: TokenTypeText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175486702689 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175486702688} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.888, y: 2.888, z: 2.888} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1, y: 76} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175486702694 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175486702688} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175486702695 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175486702688} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Type ---- !u!1 &1880600175496296771 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175496296768} - - component: {fileID: 1880600175496296774} - - component: {fileID: 1880600175496296769} - m_Layer: 5 - m_Name: FadedBg - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175496296768 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175496296771} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175248059378} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 1920, y: 1080} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175496296774 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175496296771} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175496296769 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175496296771} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 0.5882353} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175519971512 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175519971513} - - component: {fileID: 1880600175519971506} - - component: {fileID: 1880600175519971517} - - component: {fileID: 1880600175519971516} - - component: {fileID: 1880600175519971519} - - component: {fileID: 1880600175519971518} - m_Layer: 0 - m_Name: Image2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175519971513 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175519971512} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.644, y: 2.644, z: 2.644} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175519971506 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175519971512} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175519971517 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175519971512} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175519971516 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175519971512} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175519971519 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175519971512} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175519971518 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175519971512} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175539881278 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175539881279} - - component: {fileID: 1880600175539881277} - - component: {fileID: 1880600175539881276} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175539881279 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175539881278} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174281538513} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175539881277 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175539881278} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175539881276 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175539881278} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 0 - m_HorizontalOverflow: 1 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter Price ---- !u!1 &1880600175578080344 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175578080345} - - component: {fileID: 1880600175578080351} - - component: {fileID: 1880600175578080350} - m_Layer: 0 - m_Name: C3DescText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175578080345 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175578080344} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.887965, y: 2.887965, z: 2.887965} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 4.0000153, y: -112.83} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175578080351 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175578080344} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175578080350 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175578080344} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &1880600175590642031 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175590642028} - - component: {fileID: 1880600175590642017} - - component: {fileID: 1880600175590642016} - - component: {fileID: 1880600175590642019} - - component: {fileID: 1880600175590642018} - - component: {fileID: 1880600175590642029} - m_Layer: 0 - m_Name: Image3 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175590642028 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175590642031} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.644, y: 2.644, z: 2.644} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175590642017 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175590642031} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175590642016 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175590642031} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175590642019 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175590642031} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175590642018 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175590642031} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175590642029 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175590642031} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175681894129 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175681894134} - - component: {fileID: 1880600175681894135} - - component: {fileID: 1880600175681894132} - m_Layer: 0 - m_Name: TokenTypeText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175681894134 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175681894129} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.888, y: 2.888, z: 2.888} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -5, y: 76} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175681894135 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175681894129} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175681894132 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175681894129} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Type ---- !u!1 &1880600175710476625 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175710476630} - m_Layer: 0 - m_Name: C1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &1880600175710476630 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175710476625} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600175316231971} - - {fileID: 1880600175250670192} - - {fileID: 1880600175083966623} - - {fileID: 1880600174502539802} - - {fileID: 1880600175174241574} - - {fileID: 1880600175486702689} - - {fileID: 1880600174281538513} - - {fileID: 1880600175878028085} - m_Father: {fileID: 1880600175415587208} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -592, y: 26} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1880600175865136332 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175865136333} - - component: {fileID: 1880600175865136326} - - component: {fileID: 1880600175865136321} - - component: {fileID: 1880600175865136320} - - component: {fileID: 1880600175865136323} - - component: {fileID: 1880600175865136322} - m_Layer: 0 - m_Name: Border - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175865136333 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175865136332} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 3.04139, y: 3.04139, z: 3.04139} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174737155690} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -2, y: 251} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!33 &1880600175865136326 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175865136332} - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1880600175865136321 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175865136332} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!64 &1880600175865136320 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175865136332} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} ---- !u!222 &1880600175865136323 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175865136332} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175865136322 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175865136332} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!1 &1880600175878028084 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175878028085} - - component: {fileID: 1880600175878028040} - - component: {fileID: 1880600175878028043} - - component: {fileID: 1880600175878028042} - m_Layer: 0 - m_Name: SellButton - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175878028085 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175878028084} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.1668, y: 2.1668, z: 2.1668} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1880600174832683814} - m_Father: {fileID: 1880600175710476630} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: -368} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175878028040 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175878028084} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175878028043 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175878028084} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &1880600175878028042 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175878028084} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1880600175878028043} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 1880600175203352847} - m_TargetAssemblyTypeName: ListCollectionsWeb3Wallet, Assembly-CSharp - m_MethodName: SellNFT - m_Mode: 3 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!1 &1880600175899833121 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175899833126} - - component: {fileID: 1880600175899833124} - - component: {fileID: 1880600175899833127} - m_Layer: 0 - m_Name: Placeholder - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175899833126 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175899833121} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174336411505} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175899833124 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175899833121} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175899833127 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175899833121} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 0} - m_FontSize: 14 - m_FontStyle: 2 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter text... ---- !u!1 &1880600175946872191 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600175946872188} - - component: {fileID: 1880600175946872178} - - component: {fileID: 1880600175946872189} - m_Layer: 0 - m_Name: C2DescText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600175946872188 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175946872191} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.887965, y: 2.887965, z: 2.887965} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600175099180552} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.000019, y: -112.83} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600175946872178 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175946872191} - m_CullTransparentMesh: 1 ---- !u!114 &1880600175946872189 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600175946872191} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: CollectionID ---- !u!1 &1880600176048087718 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1880600176048087719} - - component: {fileID: 1880600176048087717} - - component: {fileID: 1880600176048087716} - m_Layer: 0 - m_Name: Text (Legacy) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1880600176048087719 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600176048087718} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1880600174992786707} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1880600176048087717 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600176048087718} - m_CullTransparentMesh: 1 ---- !u!114 &1880600176048087716 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880600176048087718} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.33053696, g: 1, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 0 - m_HorizontalOverflow: 1 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter Price diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab.meta deleted file mode 100644 index d36eee633..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListCollections.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 20e99276d8eeef245b4d8dae226cda12 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab deleted file mode 100644 index 67e58b6f2..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab +++ /dev/null @@ -1,1334 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &462757546801617581 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4477965018655690729} - - component: {fileID: 7732519554742696678} - - component: {fileID: 7414384245332148802} - m_Layer: 5 - m_Name: NoListed - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &4477965018655690729 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 462757546801617581} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 9 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 22.431885, y: 26} - m_SizeDelta: {x: 687.4098, y: 22} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &7732519554742696678 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 462757546801617581} - m_CullTransparentMesh: 1 ---- !u!114 &7414384245332148802 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 462757546801617581} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 0, b: 0, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: ---- !u!1 &1248448515727594353 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2785930264698737631} - - component: {fileID: 4482072313754180777} - - component: {fileID: 6686466351680706517} - - component: {fileID: 5529976885031828103} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2785930264698737631 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 7331513702362684921} - - {fileID: 7847482655900267212} - - {fileID: 3805318816238316216} - - {fileID: 3641612000216259211} - - {fileID: 3952002557696565300} - - {fileID: 7904770071397911278} - - {fileID: 369880677028123527} - - {fileID: 2244590598163439963} - - {fileID: 3943508050788800891} - - {fileID: 4477965018655690729} - m_Father: {fileID: 6412277166927740745} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!223 &4482072313754180777 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_AdditionalShaderChannelsFlag: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!114 &6686466351680706517 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 0 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 800, y: 600} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!114 &5529976885031828103 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1248448515727594353} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!1 &1399800835041379608 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3952002557696565300} - - component: {fileID: 4746000730396882082} - - component: {fileID: 2561369982256801256} - m_Layer: 5 - m_Name: isApproved - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3952002557696565300 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1399800835041379608} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -1.0832, y: -164} - m_SizeDelta: {x: 160.56, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &4746000730396882082 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1399800835041379608} - m_CullTransparentMesh: 1 ---- !u!114 &2561369982256801256 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1399800835041379608} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.05660379, g: 0.05633679, b: 0.05633679, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Is Approve ---- !u!1 &1953954708691729831 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3805318816238316216} - - component: {fileID: 4588449922912012339} - - component: {fileID: 2413627831799654468} - m_Layer: 5 - m_Name: tokenURI - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3805318816238316216 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1953954708691729831} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 16, y: -95} - m_SizeDelta: {x: 628.8555, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &4588449922912012339 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1953954708691729831} - m_CullTransparentMesh: 1 ---- !u!114 &2413627831799654468 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1953954708691729831} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.047169805, g: 0.046947304, b: 0.046947304, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Token URI ---- !u!1 &2077093899367794207 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7904770071397911278} - - component: {fileID: 3320835638743597960} - - component: {fileID: 5337679207975425507} - - component: {fileID: 2097097020288793545} - - component: {fileID: 3694701466195291024} - m_Layer: 5 - m_Name: List NFT - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7904770071397911278 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 6964566297583069771} - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -7.2, y: -239} - m_SizeDelta: {x: 160, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3320835638743597960 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_CullTransparentMesh: 1 ---- !u!114 &5337679207975425507 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &2097097020288793545 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 5337679207975425507} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 3694701466195291024} - m_TargetAssemblyTypeName: Web3Unity.Scripts.Prefabs.Minter.ListNFTWebWallet, - Assembly-CSharp - m_MethodName: ListItem - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!114 &3694701466195291024 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2077093899367794207} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: c24d9e426ddb1c543acdff61a6589df2, type: 3} - m_Name: - m_EditorClassIdentifier: - textureObject: {fileID: 2707148503929829720} - description: {fileID: 4745343110918946191} - tokenURI: {fileID: 2413627831799654468} - contractAddr: {fileID: 2718362954267046474} - isApproved: {fileID: 2561369982256801256} - itemPrice: {fileID: 8613641514179503747} - noListedItems: {fileID: 7414384245332148802} - playerAccount: {fileID: 1251711576109685082} ---- !u!1 &3976548911116731797 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 369880677028123527} - - component: {fileID: 5818496815076125545} - - component: {fileID: 1749939217356748311} - - component: {fileID: 2707148503929829720} - m_Layer: 5 - m_Name: NFTImage - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &369880677028123527 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.854, y: 131.39288} - m_SizeDelta: {x: 223.97, y: 179.7695} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &5818496815076125545 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_CullTransparentMesh: 1 ---- !u!114 &1749939217356748311 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!212 &2707148503929829720 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3976548911116731797} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_Sprite: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1, y: 1} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 0 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!1 &4526844570922072197 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4121820643044275079} - - component: {fileID: 8239175115744908226} - - component: {fileID: 4940855763702053821} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &4121820643044275079 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4526844570922072197} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2244590598163439963} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &8239175115744908226 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4526844570922072197} - m_CullTransparentMesh: 1 ---- !u!114 &4940855763702053821 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4526844570922072197} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 0 - m_AlignByGeometry: 0 - m_RichText: 0 - m_HorizontalOverflow: 1 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: 0.001 ---- !u!1 &5505175556124181350 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7847482655900267212} - - component: {fileID: 3162052657773805834} - - component: {fileID: 4745343110918946191} - m_Layer: 5 - m_Name: description - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7847482655900267212 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5505175556124181350} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.854, y: -53} - m_SizeDelta: {x: 223.97, y: 33.6847} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3162052657773805834 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5505175556124181350} - m_CullTransparentMesh: 1 ---- !u!114 &4745343110918946191 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5505175556124181350} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.03773582, g: 0.036845826, b: 0.036845826, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Description ---- !u!1 &5902257893785959999 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3641612000216259211} - - component: {fileID: 7710839712433886724} - - component: {fileID: 2718362954267046474} - m_Layer: 5 - m_Name: contract - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3641612000216259211 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5902257893785959999} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 8.3636, y: -131} - m_SizeDelta: {x: 416.5558, y: 20} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &7710839712433886724 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5902257893785959999} - m_CullTransparentMesh: 1 ---- !u!114 &2718362954267046474 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5902257893785959999} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.066037714, g: 0.06510322, b: 0.06510322, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Contract ---- !u!1 &6365036750075279333 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3943508050788800891} - - component: {fileID: 5311184262764838718} - - component: {fileID: 1251711576109685082} - m_Layer: 5 - m_Name: Account - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3943508050788800891 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6365036750075279333} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 8 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 10.6089, y: 0} - m_SizeDelta: {x: 467.7848, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &5311184262764838718 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6365036750075279333} - m_CullTransparentMesh: 1 ---- !u!114 &1251711576109685082 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6365036750075279333} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Account ---- !u!1 &6415524754998111241 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3222757302395583899} - - component: {fileID: 1418122859353557538} - - component: {fileID: 9204712668951721582} - m_Layer: 5 - m_Name: Placeholder - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &3222757302395583899 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6415524754998111241} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2244590598163439963} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -0.5} - m_SizeDelta: {x: -20, y: -13} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &1418122859353557538 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6415524754998111241} - m_CullTransparentMesh: 1 ---- !u!114 &9204712668951721582 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6415524754998111241} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 0.5} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 2 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 0 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Enter text... ---- !u!1 &6548384013179317282 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6964566297583069771} - - component: {fileID: 604076157582206530} - - component: {fileID: 5613181599983052777} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &6964566297583069771 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6548384013179317282} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 7904770071397911278} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &604076157582206530 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6548384013179317282} - m_CullTransparentMesh: 1 ---- !u!114 &5613181599983052777 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6548384013179317282} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 14 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 10 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: 'List NFT - -' ---- !u!1 &6563156978966856749 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2244590598163439963} - - component: {fileID: 5112567915658369777} - - component: {fileID: 3057976063604612459} - - component: {fileID: 8613641514179503747} - m_Layer: 5 - m_Name: InputField - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2244590598163439963 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6563156978966856749} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 3222757302395583899} - - {fileID: 4121820643044275079} - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 2.8545, y: -201} - m_SizeDelta: {x: 223.97, y: 30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &5112567915658369777 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6563156978966856749} - m_CullTransparentMesh: 1 ---- !u!114 &3057976063604612459 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6563156978966856749} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!114 &8613641514179503747 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6563156978966856749} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d199490a83bb2b844b9695cbf13b01ef, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 3057976063604612459} - m_TextComponent: {fileID: 4940855763702053821} - m_Placeholder: {fileID: 9204712668951721582} - m_ContentType: 0 - m_InputType: 0 - m_AsteriskChar: 42 - m_KeyboardType: 0 - m_LineType: 0 - m_HideMobileInput: 0 - m_CharacterValidation: 0 - m_CharacterLimit: 0 - m_OnSubmit: - m_PersistentCalls: - m_Calls: [] - m_OnDidEndEdit: - m_PersistentCalls: - m_Calls: [] - m_OnValueChanged: - m_PersistentCalls: - m_Calls: [] - m_CaretColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} - m_CustomCaretColor: 0 - m_SelectionColor: {r: 0.65882355, g: 0.80784315, b: 1, a: 0.7529412} - m_Text: 0.001 - m_CaretBlinkRate: 0.85 - m_CaretWidth: 1 - m_ReadOnly: 0 - m_ShouldActivateOnSelect: 1 ---- !u!1 &6844282264439920868 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7331513702362684921} - m_Layer: 5 - m_Name: GameManager - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7331513702362684921 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6844282264439920868} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2785930264698737631} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &6989655963179188101 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6412277166927740745} - m_Layer: 0 - m_Name: ListItem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &6412277166927740745 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6989655963179188101} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0.5, y: 0.5, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 2785930264698737631} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab.meta deleted file mode 100644 index 0648d22db..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Prefabs/Minter/ListItem.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ca99e5db0027fba4d8542662f5c1131b -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter.meta deleted file mode 100644 index 0378befce..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9b87f9453f21675439a7996671f63f08 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs deleted file mode 100644 index 84dfe725e..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs +++ /dev/null @@ -1,37 +0,0 @@ -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using System; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using UnityEngine; -using Scripts.EVM.Remote; - -public class CreateApproval : MonoBehaviour -{ - public string tokenType = "1155"; - - public async void ApproveTransaction() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - var response = await CSServer.CreateApproveTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, Web3Accessor.Web3.Signer.PublicAddress, tokenType); - Debug.Log("Response: " + response.connection.chain); - - try - { - var txRequest = new TransactionRequest - { - To = response.tx.to, - Data = response.tx.data, - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - Value = new HexBigInteger(0), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.LogException(e, this); - } - } -} \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs.meta deleted file mode 100644 index ac9e3e603..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bee6d2ef00e0fc445ac34964f0acbf24 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs deleted file mode 100644 index 377c9ff51..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs +++ /dev/null @@ -1,212 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; -// using Web3Unity.Scripts.Library.Web3Wallet; - -public class GetListedCollections : MonoBehaviour -{ - // vars and objects - public Text[] idsBuy; - public Text[] descriptionsBuy; - public Text[] prices; - public Text[] sellers; - public Text[] tokenTypesBuy; - public Renderer[] textureObjects; - public GameObject C1b; - public GameObject C2b; - public GameObject C3b; - private int nftListAmount; - private int nftCount; - private string account; - public string collectionSlug; - private string nftContract = "0x2c1867bc3026178a47a677513746dcc6822a137a"; - - void Start() - { - // load the nft data - LoadNftDataBuyPage(); - } - async void LoadNftDataBuyPage() - { - account = Web3Accessor.Web3.Signer.PublicAddress; - var chainConfig = Web3Accessor.Web3.ChainConfig; - // create a reference to a list and iterate through it to gain token id - List tokenIdList = new(); - // checks if filter should be applied - if (collectionSlug == "") - { - Debug.Log("Please set collection ID"); - return; - } - else - { - string collections = await CSServer.GetNftCollectionBySlug(Web3Accessor.Web3, collectionSlug); - CollectionModel.Collection response = ParseCollections(collections); - nftListAmount = response.items.Count; - for (int i = 0; i < nftListAmount; i++) - { - tokenIdList.Add(response.items[i].tokenId); - } - } - // display check based on nft count fetched, only activates object with data - if (nftListAmount == 1) - { - C1b.SetActive(true); - } - else if (nftListAmount == 2) - { - C1b.SetActive(true); - C2b.SetActive(true); - } - else if (nftListAmount >= 3) - { - C1b.SetActive(true); - C2b.SetActive(true); - C3b.SetActive(true); - } - - List listResponse = await CSServer.GetNftMarket(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network); - - foreach (string tokenId in tokenIdList) - { - for (int i = 0; i < listResponse.Count; i++) - { - if (listResponse[i].tokenId == tokenId) - { - string nftResponseStr = await CSServer.GetNft(Web3Accessor.Web3, account, chainConfig.Chain, chainConfig.Network, nftContract, tokenId); - GetNftModel.Response nftResponse = ParseNft(nftResponseStr); - // breaks out of loop and continues on if an error case is found for some reason - if (nftResponseStr == "{}") - { - continue; - } - if (nftResponse.uri.StartsWith("ipfs://")) - { - nftResponse.uri = nftResponse.uri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - UnityWebRequest webRequest = UnityWebRequest.Get(nftResponse.uri); - await webRequest.SendWebRequest(); - RootGetNFT data = - JsonConvert.DeserializeObject( - System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - // populate text objects with data - idsBuy[nftCount].text = listResponse[i].itemId; - float decimals = 18; - double price = float.Parse(listResponse[i].price) / Math.Pow(10, decimals); - prices[nftCount].text = listResponse[i].price; - sellers[nftCount].text = nftResponse.owner; - tokenTypesBuy[nftCount].text = nftResponse.tokenType; - if (data.description == null) - { - descriptionsBuy[nftCount].text = ""; - } - else - { - descriptionsBuy[nftCount].text = data.description; - } - // parse json to get image uri and download - string imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - else - { - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - - if (data.properties != null) - { - foreach (var prop in data.properties.additionalFiles) - { - if (prop.StartsWith("ipfs://")) - { - var additionalURi = prop.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - } - } - // increase nft count so we can keep track of the local objects - nftCount++; - } - } - } - } - - // buy nft function - public async void BuyNFT(int nftNumber) - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - Debug.Log("Buying Nft"); - BuyNFT.Response response = await CSServer.CreatePurchaseNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, - account, idsBuy[nftNumber].text, prices[nftNumber].text, tokenTypesBuy[nftNumber].text); - Debug.Log(account); - Debug.Log(idsBuy[nftNumber].text); - Debug.Log(prices[nftNumber].text); - Debug.Log(tokenTypesBuy[nftNumber].text); - Debug.Log("Account: " + response.tx.account); - Debug.Log("To : " + response.tx.to); - Debug.Log("Value : " + response.tx.value); - Debug.Log("Data : " + response.tx.data); - Debug.Log("Gas Price : " + response.tx.gasPrice); - Debug.Log("Gas Limit : " + response.tx.gasLimit); - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = HexBigIntUtil.ParseHexBigInt(response.tx.value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.LogException(e, this); - } - } - // downloads the nft image - IEnumerator DownloadImage(string MediaUrl, int nftCount) - { - UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - Debug.Log(request.error); - else - { - Texture2D webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture as Texture2D; - Sprite webSprite = SpriteFromTexture2D(webTexture); - textureObjects[nftCount].GetComponent().sprite = webSprite; - } - } - // render the sprite into the image object - Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), - 100.0f); - } - // parses the json response, as it has lists within the object - public static CollectionModel.Collection ParseCollections(string json) - { - CollectionModel.Root root = JsonConvert.DeserializeObject(json); - return root.response.collection; - } - // parses the json response, as it has lists within the object same as above - public static GetNftModel.Response ParseNft(string json) - { - GetNftModel.Root root = JsonConvert.DeserializeObject(json); - return root.response; - } -} \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs.meta deleted file mode 100644 index b46c5ef95..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0de123e82ca6d2742bbc6782459c7b74 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs deleted file mode 100644 index 9c22c338b..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs +++ /dev/null @@ -1,159 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Linq; -using System.Numerics; -using System.Threading.Tasks; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; -// using Web3Unity.Scripts.Library.Web3Wallet; - -public class GetListedNFT : MonoBehaviour -{ - public Renderer textureObject; - public Text price; - public Text seller; - public Text description; - public Text listPercentage; - public Text contractAddr; - public Text tokenId; - public Text itemId; - private string _itemPrice = ""; - private string _tokenType = ""; - - private string _itemID = ""; - - - public void Awake() - { - - price.text = ""; - seller.text = ""; - description.text = ""; - listPercentage.text = ""; - tokenId.text = ""; - itemId.text = ""; - contractAddr.text = ""; - } - - // Start is called before the first frame update - async void Start() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - List response = await CSServer.GetNftMarket(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network); - price.text = response[0].price; - seller.text = response[0].seller; - Debug.Log("Seller: " + response[0].seller); - if (response[0].uri.StartsWith("ipfs://")) - { - response[0].uri = response[0].uri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - Debug.Log("Response URI" + response[0].uri); - } - - UnityWebRequest webRequest = UnityWebRequest.Get(response[0].uri); - await webRequest.SendWebRequest(); - RootGetNFT data = - JsonConvert.DeserializeObject( - System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - if (data.description == null) - { - description.text = ""; - } - else - { - description.text = data.description; - } - - // parse json to get image uri - string imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri)); - } - else - { - StartCoroutine(DownloadImage(imageUri)); - } - - if (data.properties != null) - { - foreach (var prop in data.properties.additionalFiles) - { - if (prop.StartsWith("ipfs://")) - { - var additionalURi = prop.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - } - } - } - listPercentage.text = response[0].listedPercentage; - Debug.Log(response[0].listedPercentage); - contractAddr.text = response[0].nftContract; - itemId.text = response[0].itemId; - _itemID = response[0].itemId; - _itemPrice = response[0].price; - _tokenType = response[0].tokenType; - tokenId.text = response[0].tokenId; - } - - // ReSharper disable Unity.PerformanceAnalysis - IEnumerator DownloadImage(string MediaUrl) - { - UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - Debug.Log(request.error); - else - { - Texture2D webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture as Texture2D; - Sprite webSprite = SpriteFromTexture2D(webTexture); - textureObject.GetComponent().sprite = webSprite; - } - } - - Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), - 100.0f); - } - - public async void PurchaseItem() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - BuyNFT.Response response = await CSServer.CreatePurchaseNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, - Web3Accessor.Web3.Signer.PublicAddress, _itemID, _itemPrice, _tokenType); - Debug.Log("Account: " + response.tx.account); - Debug.Log("To : " + response.tx.to); - Debug.Log("Value : " + response.tx.value); - Debug.Log("Data : " + response.tx.data); - Debug.Log("Gas Price : " + response.tx.gasPrice); - Debug.Log("Gas Limit : " + response.tx.gasLimit); - - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = HexBigIntUtil.ParseHexBigInt(response.tx.value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.LogException(e, this); - } - } -} - diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs.meta deleted file mode 100644 index 87c9c3abb..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b2b606c43a8ad934f90b41d8f3adefa9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs deleted file mode 100644 index 5f1ddf1a0..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs +++ /dev/null @@ -1,203 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Globalization; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; -// using Web3Unity.Scripts.Library.Web3Wallet; - -public class ListCollections : MonoBehaviour -{ - // vars and objects - public Text[] idsSell; - public Text[] descriptionsSell; - public Text[] tokenTypesSell; - public InputField[] PriceInputs; - public Renderer[] textureObjects; - public GameObject C1s; - public GameObject C2s; - public GameObject C3s; - private int nftListAmount; - private int nftCount; - private string account; - public string collectionSlug; - private string nftContract = "0x2c1867bc3026178a47a677513746dcc6822a137a"; - - void Start() - { - // load the nft data - LoadNftDataSellPage(); - } - // load sell page data function - async void LoadNftDataSellPage() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - account = Web3Accessor.Web3.Signer.PublicAddress; - // create a reference to a list and iterate through it to gain token id - List tokenIdList = new List(); - // checks if filter should be applied - if (collectionSlug == "") - { - Debug.Log("Please set collection ID"); - return; - } - else - { - string collections = await CSServer.GetNftCollectionBySlug(Web3Accessor.Web3, collectionSlug); - CollectionModel.Collection response = ParseCollections(collections); - nftListAmount = response.items.Count; - for (int i = 0; i < nftListAmount; i++) - { - tokenIdList.Add(response.items[i].tokenId); - } - } - - // display check based on nft count fetched, only activates object with data - if (nftListAmount == 1) - { - C1s.SetActive(true); - } - else if (nftListAmount == 2) - { - C1s.SetActive(true); - C2s.SetActive(true); - } - else if (nftListAmount >= 3) - { - C1s.SetActive(true); - C2s.SetActive(true); - C3s.SetActive(true); - } - - // get nft data for each tokenId paired with nft count for local data population - foreach (string tokenId in tokenIdList) - { - string nftResponseStr = await CSServer.GetNft(Web3Accessor.Web3, account, chainConfig.Chain, chainConfig.Network, nftContract, tokenId); - GetNftModel.Response nftResponse = ParseNft(nftResponseStr); - // breaks out of loop and continues on if an error case is found for some reason - if (nftResponseStr == "{}") - { - continue; - } - if (nftResponse.uri.StartsWith("ipfs://")) - { - nftResponse.uri = nftResponse.uri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - UnityWebRequest webRequest = UnityWebRequest.Get(nftResponse.uri); - await webRequest.SendWebRequest(); - RootGetNFT data = - JsonConvert.DeserializeObject( - System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - // populate text objects with data - idsSell[nftCount].text = nftResponse.id; - tokenTypesSell[nftCount].text = nftResponse.tokenType; - if (data.description == null) - { - descriptionsSell[nftCount].text = ""; - } - else - { - descriptionsSell[nftCount].text = data.description; - } - // parse json to get image uri and download - string imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - else - { - StartCoroutine(DownloadImage(imageUri, nftCount)); - } - - if (data.properties != null) - { - foreach (var prop in data.properties.additionalFiles) - { - if (prop.StartsWith("ipfs://")) - { - var additionalURi = prop.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - } - } - // increase nft count so we can keep track of the local objects - nftCount++; - } - } - - // sell nft function - public async void SellNFT(int nftNumber) - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - Debug.Log("Selling Nft"); - var eth = float.Parse(PriceInputs[nftNumber].text); - float decimals = 1000000000000000000; // 18 decimals - var wei = eth * decimals; - Debug.Log("ItemID: " + idsSell[nftNumber].text); - var response = - await CSServer.CreateListNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, account, idsSell[nftNumber].text, Convert.ToDecimal(wei).ToString(CultureInfo.InvariantCulture), - tokenTypesSell[nftNumber].text); - var value = Convert.ToInt32(response.tx.value.hex, 16); - Debug.Log("Response: " + response); - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = new HexBigInteger(value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.Log("Error: " + e); - } - } - - // downloads the nft image - IEnumerator DownloadImage(string MediaUrl, int nftCount) - { - UnityWebRequest request = UnityWebRequestTexture.GetTexture(MediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - Debug.Log(request.error); - else - { - Texture2D webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture as Texture2D; - Sprite webSprite = SpriteFromTexture2D(webTexture); - textureObjects[nftCount].GetComponent().sprite = webSprite; - } - } - - // render the sprite into the image object - Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), - 100.0f); - } - // parses the json response, as it has lists within the object - public static CollectionModel.Collection ParseCollections(string json) - { - CollectionModel.Root root = JsonConvert.DeserializeObject(json); - return root.response.collection; - } - // parses the json response, as it has lists within the object same as above - public static GetNftModel.Response ParseNft(string json) - { - GetNftModel.Root root = JsonConvert.DeserializeObject(json); - return root.response; - } -} \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs.meta deleted file mode 100644 index 0f0a5bbd1..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7b785ad84942fa249afce48b7eabcb8d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs deleted file mode 100644 index 94b3d949c..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs +++ /dev/null @@ -1,149 +0,0 @@ -using System; -using System.Collections; -using System.Globalization; -using System.Text; -using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; -using Nethereum.Hex.HexTypes; -using Newtonsoft.Json; -using UnityEngine; -using UnityEngine.Networking; -using UnityEngine.UI; -using Scripts.EVM.Remote; - -namespace Web3Unity.Scripts.Prefabs.Minter -{ - public class ListNft : MonoBehaviour - { - private string _itemPrice = "0.001"; - private string _tokenType = ""; - private string _itemID = ""; - private string account; - - public Renderer textureObject; - public Text description; - public Text tokenURI; - public Text contractAddr; - public Text isApproved; - public InputField itemPrice; - public Text noListedItems; - public Text playerAccount; - - public void Awake() - { - description.text = ""; - tokenURI.text = ""; - isApproved.text = ""; - contractAddr.text = ""; - account = Web3Accessor.Web3.Signer.PublicAddress; - } - - // Start is called before the first frame update - private async void Start() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - playerAccount.text = account; - try - { - var response = await CSServer.GetMintedNFT(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, account); - - if (response[1].uri == null) - { - Debug.Log("Not Listed Items"); - return; - } - - if (response[1].uri.StartsWith("ipfs://")) - { - response[1].uri = response[1].uri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - } - - var webRequest = UnityWebRequest.Get(response[1].uri); - await webRequest.SendWebRequest(); - var data = JsonConvert.DeserializeObject(Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - description.text = data.description; - // parse json to get image uri - var imageUri = data.image; - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.chainsafe.io/ipfs/"); - StartCoroutine(DownloadImage(imageUri)); - } - else - { - StartCoroutine(DownloadImage(imageUri)); - } - - tokenURI.text = response[1].uri; - Debug.Log(response[1].uri); - contractAddr.text = response[1].nftContract; - Debug.Log("NFT Contract: " + response[1].nftContract); - isApproved.text = response[1].isApproved.ToString(); - _itemID = response[1].id; - _itemPrice = itemPrice.text; - Debug.Log("Token Type: " + response[1].tokenType); - _tokenType = response[1].tokenType; - } - catch (Exception e) - { - noListedItems.text = "NO LISTED ITEM for " + account; - Debug.Log("No Listed Items" + e); - } - } - - // ReSharper disable Unity.PerformanceAnalysis - private IEnumerator DownloadImage(string mediaUrl) - { - var request = UnityWebRequestTexture.GetTexture(mediaUrl); - yield return request.SendWebRequest(); - if (request.result == UnityWebRequest.Result.ProtocolError) - { - Debug.Log(request.error); - } - else - { - var webTexture = ((DownloadHandlerTexture)request.downloadHandler).texture; - var webSprite = SpriteFromTexture2D(webTexture); - textureObject.GetComponent().sprite = webSprite; - } - } - - private Sprite SpriteFromTexture2D(Texture2D texture) - { - return Sprite.Create(texture, new Rect(0.0f, 0.0f, texture.width, texture.height), new UnityEngine.Vector2(0.5f, 0.5f), 100.0f); - } - - public async void ListItem() - { - var chainConfig = Web3Accessor.Web3.ChainConfig; - var eth = float.Parse(_itemPrice); - float decimals = 1000000000000000000; // 18 decimals - var wei = eth * decimals; - Debug.Log("ItemID: " + _itemID); - var response = - await CSServer.CreateListNftTransaction(Web3Accessor.Web3, chainConfig.Chain, chainConfig.Network, account, _itemID, Convert.ToDecimal(wei).ToString(CultureInfo.InvariantCulture), - _tokenType); - var value = Convert.ToInt32(response.tx.value.hex, 16); - Debug.Log("Response: " + response); - try - { - var txRequest = new TransactionRequest - { - ChainId = HexBigIntUtil.ParseHexBigInt(chainConfig.ChainId), - To = response.tx.to, - Value = new HexBigInteger(value), - Data = response.tx.data, - GasLimit = HexBigIntUtil.ParseHexBigInt(response.tx.gasLimit), - GasPrice = HexBigIntUtil.ParseHexBigInt(response.tx.gasPrice), - }; - var responseNft = await Web3Accessor.Web3.TransactionExecutor.SendTransaction(txRequest); - Debug.Log(JsonConvert.SerializeObject(responseNft)); - } - catch (Exception e) - { - Debug.Log("Error: " + e); - } - } - } -} \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs.meta deleted file mode 100644 index ddab2f869..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c24d9e426ddb1c543acdff61a6589df2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: From a9708e0b7cf1682c3e4597f463ef188b8486771f Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Wed, 8 May 2024 04:12:31 +0000 Subject: [PATCH 43/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes .../Samples~/Web3.Unity/Prefabs/Minter.meta | 8 - .../Prefabs/Minter/ApproveTransaction.prefab | 363 -- .../Minter/ApproveTransaction.prefab.meta | 7 - .../Web3.Unity/Prefabs/Minter/BuyItem.prefab | 1106 ----- .../Prefabs/Minter/BuyItem.prefab.meta | 7 - .../Minter/GetListedCollections.prefab | 3620 --------------- .../Minter/GetListedCollections.prefab.meta | 7 - .../Prefabs/Minter/ListCollections.prefab | 4054 ----------------- .../Minter/ListCollections.prefab.meta | 7 - .../Web3.Unity/Prefabs/Minter/ListItem.prefab | 1334 ------ .../Prefabs/Minter/ListItem.prefab.meta | 7 - 26 files changed, 10520 deletions(-) delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/ApproveTransaction.prefab delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/ApproveTransaction.prefab.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/BuyItem.prefab delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/BuyItem.prefab.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/GetListedCollections.prefab delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/GetListedCollections.prefab.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/ListCollections.prefab delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/ListCollections.prefab.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/ListItem.prefab delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Prefabs/Minter/ListItem.prefab.meta diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 0b0a75ff38170d2d5d17f5c7e688e5d56eb81417..d1dc92da8f6e279b7ea569218983352fcbb5c742 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@+mrnKKjXfdJ0$X+;Klsz~vETkl-c9~2m*h5oh+fXEk(QX2WMFKZ zW?`9TVQi6RVVGu;Xl|5dWMY<>Y-Da?k(OeVm}r@3w0VE}TUM5ZPcLttydgJ0;8N)$ zrL`MNTsj{#h%Vq}m6|M&w?F|ZSi%Vv1gbW^bJq62`}Skf-rFr+Z@!SH!RnvJkjRk6 zki=lXU<`z53>FNQVA2@K0`UxiqzO=sIfD_9WdvlK0eQ(lmN}3OQj-E?Cjy}*5F2fF IFWJcq0B=T5-v9sr delta 238 zcmZqpz}WDCaY6@6MgrgbjXfdJ0-D-+i<36m`80T3{y3X2GxdNylP<6ojyl3$yyw8kI205PGd?8PR)!%}_oFSDV z8Azrvm@!xY$rOe}h9m}KFtz~lk{C>YqUJ!B8G|W9+|evgsy45goWdO-FlGM7t_OmQ zJ}b0E`2W<+NSb_vyGH>g_yQ^jQtfruw>;7M%(t(tQx*l;o{cQnhpeKRghPT>v^cy{Ptz>$_W z-gEBO%+ATs=FKAH(&c!x4D2vh1K7J!JHwLAsI-f zF_Hjhq= diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 88930379ff4941005cf6cc5adb54375374bbc218..789ed94edfffb7f4264acc1fe75b4300e1a0b3bb 100644 GIT binary patch delta 236 zcmZq3X~>z-!E&-eymw;{kBUHb*sr*x{Cgg|FZ{AhKD@(k^9q#%EE;KvX-Njg#%UIo zX%@y7X%>cQCW+=oX+|byiOELhCKhQaMu~}*iAI|zXm&8NINBWRo-CssAh2L+sY0E{ z4X;J*pMxe$w)-%-M!QD=D#-N+DhO1~ExUJ>MDWKIajzm5wQttY$zkOE75+WPx~wK+*)L#+<z-!LoMI?;9I?cvJ)$e!g-E+jQM|g2B-~j%2TMn^&kDV9~HJPfa#YGqXrb zNlY?MGPX!bGD$N}F*CI^FfdIsNHj@JG%+(aG&bBkL9>IAMb|;>)npm%00Ds`_P;r| zUiO>nx^6+)(G6cF*J$@BKn3MOp@JaQpBUf9D`v}NZd@<*ZL@|>4y(TfgE>PgLo$#| zV=!Z|0Fo&Ti3~{$#$ap#8fl4XNe0Ho zX%?1g7RDB77KUjiiRMOWMkZ#7$wuZT7HKI)iHVkpMw8df*WBDc_b3+&+x-i#Cr7LZ z5cqCkeYc%U(yzzr!&Co*)oGJ=tY}k!3ik0p1wpFSy_>hGWjieW&p+q-=D3x7EdFT> zi418BNel)I#z2_HV8LJsCXInC5YG@ungG?9GZ+C`MnJY1ke3W(nFHA%H7P)LA`n^v LvC-z;Yh9TD0j*N_ delta 242 zcmZp8z|`=7X+j6f1NM#oHui)}5McH^w#d(EpYNpbkKg{Bi2l9#!vsGb4GZ(sWb-sL zi?o!)B;zDwixblhi~LGh;(z!^vyrYi{nJdz6c%DaHKOZk!E3-W|C-blxAdNmY8g0Zeo#^Vw9L@nP@cmoJbPOPAUE;lTAbe1b!X)%*NfY z-FIL5yj8b3stPAh5uKp`6^w-mf>ba1^hW#c{%gnLCVsKm>?78~>Yv7t$dJa6#9+W+ z41{S677UhP(iq4B@eF~a2~dqWgAtHr1Z0~5dC5SQIgkxflLBNX0-+@k8*P@CdB_X^ DwRTPK delta 235 zcmZp0XmFU&!J-(&e0XEe13`g5o49A_O!D;Xs-4^OxM+>a<{BX_CJhVo)MWECGmEs8 z#3bV+V~dm|lQi=bGgC_g1Jg8vM3dA+6EkB&W5dbkM3PtzZZ7#f*+euz;DkBbm)LES zeOvq3u2pv23Yt7cbcO;{u+|kS2vl9o>#q4|yd(w_pr|>JWyWC2V98(rgr-0d1E4w+pk5GZ22^hd!kgt~ H9x?*}O|MD? diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 7449189da70993a2846edf899d9b8ed3b2e78d45..c95e350e1ea9f7eb1f73de724707a86ba9c3107e 100644 GIT binary patch delta 235 zcmZoLX)u}4!J_E8Z1%>U3Lb&Z*hR`bJ|g}zRoAYbXJ*H{S%kNPQ6nueEy=*xIL*Q` z&BE9s&B8FvB+=X`&B(+oG18Iz`nVHeen@Y z-Vc(7Am_SIT5o zr@n>L`#cucEu0*oxJdyj$m9nV1gXB;Dg0trREG7|jB7tPYbnXG`CBlUGo&&k1IaW7 zGX@JFnZl6Bki=jN#uh+c5`zg))Evk%V=!f~WH10iQ=o_eP@M@-FNib)sy77T&C@k9 FnE}7?Nmu{? diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index b93b0c824f5c41888b08e4eb29d66181c6fe70af..239a7869fab645fd4734463dda6863cb1f7f5afe 100644 GIT binary patch delta 253 zcmZoT!_;twX+kISy1TPB_W0-vTytrZ{@Up7*wyp4%PmM*a`Ov)BUY2N#Iz&>W8*Xn z%QOpPi!=+vG?PSgqckHEv&3X0a}$fS6r;pM%S0mv23AG}CI$v4Mh4r-6HN^^*O`W; zvHZ@@eL4BY>;Qp9)jrLv&96LHt>5j|pnf1~vc;SU3Q)n9Sx`Zc>X-Ke?q6S)V!ovO zf#>EIa}Kchr!gclq%kBh7%&(EVH$%4gC&?W2C_grLm+7aRAbIy1Y{Wj*=9gqGLU5s WWP{YC0NIH^XbHqdo4+sQWB~xLj8eA% delta 253 zcmZoT!_;twX+kG+%jI<&dwlc-R&%W}TR&OAb79?Q$MVbP3^%{fH)1uhFi%Z3PcySf zOG!*JPBOMgNis<@PcbvKG%zqtGe|T^O*AnxHZ(S5U|?lrU}9i!Vq~zLJkiu(bDe2e z8cX|fku{TV%nlGx;aJ#yu}s@@->J7*+6Gb{lP%^6jKP$_lEDB7 aO@Sf?Ky@ZSy&%#IsNN8SH-BHq$pQeV{Y}CE diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 7a00eb651c86498affd014f4d3f510309d0a52ce..21ce3d4eefbed230cd7c477ffc2e3806cbe555c8 100644 GIT binary patch delta 235 zcmZoDX(*Y{!SY{G_2kB$5KRH^-?gIO&Odfuw&+M!VcQCW+=oX+|byiOELhCKhQaMu~}*iAIy-^=`6kU@`eL*+xG=Kr3X?k=`z8 zuMIMbeqV~r%APz&f0_bR@RR{m5Tx4jg=nWk!q1u+*L1IK4l>AM^-p6+WJqI3VlZGZ z2EsH33kFLtX$)k6c!ogI1gOTG!3fAQ0o2l#gEnJ;YrY#A&2rOiPGS*-pR4CV}}49P$; zjlqn;0!XGXBr+s17=y6|ke9?@0u(g|vdkDv87vtLfY1~uVgOWU0@Mp4&4B6+L3lH_ H*;i%&^e0V< diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 4e76191a2f889465a9801d4aa5db27153ea68b8c..a6d9c62421196547cc7d9b1c1417c98e72467ef1 100644 GIT binary patch delta 235 zcmZqhY4DlQ!Lp2zY2L;j0SN)NV^dTY`WgB4G%EGKJh3r)^BRd?Od4s4X-Njg#%UIo zX%@y7X%>cQCW+=oX+|byiOELhCKhQaMu~}*iAIypNzYDYY!yTqeuK;-AKl$dJa6#9+W+ z41{S677UhP(iq4B@eF~a2~dqWgAtHr1Z0~5dC5SQIgkxflLBNX0-+@k8*M(XXvhKp D>}g57 delta 235 zcmZqhY4DlQ!LsX`)UJ&^0ulm$84Gx~YO=ZQiCXh8Le`6M^BRd?Od1yEsmbPPW)^8F ziAlyu#uh0_CTZp=W~P<~2Bv8Si6*IuCT7Nl#)gy6NzY=j@z>u!IY%Zy;Odr=S;u`6 zU1!NP7!)Kp#!NmV)1?3v{CW#22vS`rP;+7B>$_bQA&G}Jm&tOm_**cTGo&&k1IaW7 zGX@JFnZl6Bki=jN#uh+c5`zg))Evk%V=!f~WH10iQ=o_eP@M@-FNib)sy77T&F2*j FSpfA?N0k5o diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 310ae449339a0354943fc119ada529f54eb081e4..f56af2a200bcbd84bc079474f1291904341c0823 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)eNKhZ8+*3)Fn(Yc_#Iv{e>r=+N8^LKsk3*n1a0r(V4N{m!@@i@ z**wk6A}u8`$vDZ_A|=Tr%{;}-)Y8DfG|eEYqUJ!B8G|W60ktf+I$a(I13baF(=81AUhEVErHl*vwYM; FW&m&mOo0FZ delta 238 zcmZqJ!`QHgaY6^nhO*W*8+&fJ3rxQ2qp6y{$Zyjei7l!=Y)YF;JVZD&EX-4r&C|>* z(ozzWjFXHlQj$#4%u~!vEe#Az(+m<#QWH(gj17$qH*W}VVP?4@+jMI3kKh1-+`Tia zEBxlWtax-MptZOD@#Kh*Sqf0WEg4WjplYw1DsLBr-~T$(B>Cj?%|fC3So|#*%o$P{ zl7VCzgBgPbkW67nWJqE#24f2#FNwhfC~6L5nK76$STYy@p(#+r0I1Fcs24<<0o5CV K@Mig_hs*%i>rTc1 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index dbef1b2d583b8cbc9d24495523731dae52b6fd39..2f3d0d9e9bdab85edcf72cf9f67e3b1a8dabe60b 100644 GIT binary patch delta 236 zcmZpuXsDRb!E*AGf9u8`4JCnKyUfSmvR8ZVuIZSRR&Mce^AV-bEE;KvX-Njg#%UIo zX%@y7X%>cQCW+=oX+|byiOELhCKhQaMu~}*iAJ06tKZ~ev7YF*a`GOd009p}tvl(D zjoo*&g{EOLlT1l zgE0`MF<3BIf=Oc_3&b-7k|sbk<_tzamJyI`2IM6JS>`}CNKFcmod|@MKy0*mx1}o+ E0QK@qga7~l delta 236 zcmZpuXsDRb!Lt9_w{IJJG?WD1EA3j}>0Ii&C0=yyHXl*?%%Wjoo|m3MvRzy?2K5;Tip$-fW+jY(8MThSlGK!JHwLAsI-f zF_BJbUm?b6~nVVRor5Gh9S|%DXFt9Q*FflMRG%zw$PfqNXpFDq? z-{iVoJew=FUEyF6GikpvIbeT)fX8fc);|wd`gOBfg*0tDwrui-{Zka6f^pnXL7?i8 zmEV*^&ASwz8O1zk+njPBg4I8bA(0`CA&J3&!59eB7%Uhp!K5*e1>zY3NfV$Na|Rl_-Tg7i`VV;_7o@Qo| zmXercoMdc~l4O!*o?>QdX<%TQW{_x-nrLEXY-nuAz`)ALz{J4N(7?!0Jvp&ke)9Zn zev|8V@ocWxc7=n5|H010Xa7iWmUZnE>^INHd^%LlEA~ee5eU0F??^5dZ)H diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index a8f0fd9b34f36fdd486600d50acf3d9fa724a27a..44248cff4fea8845bf20a2889f4eace78f886aa0 100644 GIT binary patch delta 260 zcmZp;z}IkrZ$byla}m!^jXkYBj9Yt{MAivpzWDvy>(?dk1@~K2cxF3K*uG&Mlk@?N zw8XR|17qVf3(GVMV~aEk!!(mbbE7mP6SKr*BXbjrv=pPnM9V~@>F-LI#itiMVPxIT zpU*66z#=g7{f_Ax^O*w#t}m}z#&28a+w#M4jf42gqUjy;nJW~aqOvSdQJ{JY$&II? z<|ySYd=e^avt3~UvjD4q8bcyO8bcC;0fR9RrZHGBSb|AoAPdAZ1d=8|HRcRPK$a1Z eZ3g5e16k%kHb_khkevvGmOyN@y?!ZkBNG6Y5mOrg delta 260 zcmZp;z}IkrZ$bylg7=HoHukjkFmCN(5?LqE`q^`X=kndotF7k-tz)eDyM4ntCg}qj z7UrqR=4oaYX(@?G#!1E&DM==2<|$^TmIel{px zIZ140xbMukU10&U0IRPgLo$#|V=!Z|0Fo&Ti3~{$#$ap# Date: Wed, 8 May 2024 22:07:07 +0800 Subject: [PATCH 44/97] Marketplace API sample calls (#943) * Marketplace api calls functional * Cleanup * Abstraction layer * Update CSServer.cs * Updates * Serialized fields * Abstraction * Cleanup * Update * Update .gitignore --- .../ChainSafe.Gaming.Marketplace.dll.meta | 66 +- .../Runtime/Scripts/EVM/Marketplace.meta | 3 + .../Scripts/EVM/Marketplace/Marketplace.cs | 147 ++ .../EVM/Marketplace/Marketplace.cs.meta | 3 + .../Runtime/Scripts/EVM/Remote.meta | 2 +- .../Runtime/Scripts/EVM/Remote/CSServer.cs | 41 + .../Remote/CSServer.cs.meta} | 2 +- .../Scripts/EVM/Remote/TokenResponse.cs | 40 - .../Runtime/Scripts/Model/BuyNFT.cs | 40 - .../Runtime/Scripts/Model/BuyNFT.cs.meta | 11 - .../Runtime/Scripts/Model/CollectionsModel.cs | 44 - .../Scripts/Model/CreateApprovalModel.cs | 43 - .../Scripts/Model/CreateApprovalModel.cs.meta | 11 - .../Runtime/Scripts/Model/CreateMintModel.cs | 36 - .../Scripts/Model/CreateMintModel.cs.meta | 11 - .../Runtime/Scripts/Model/GetNftListModel.cs | 27 - .../Scripts/Model/GetNftListModel.cs.meta | 11 - .../Runtime/Scripts/Model/GetNftModel.cs | 36 - .../Runtime/Scripts/Model/GetNftModel.cs.meta | 11 - .../Runtime/Scripts/Model/GetRootNft.cs | 23 - .../Runtime/Scripts/Model/GetRootNft.cs.meta | 11 - .../Runtime/Scripts/Model/ListNFT.cs | 47 - .../Runtime/Scripts/Model/ListNFT.cs.meta | 11 - .../Runtime/Scripts/Model/MarketplaceModel.cs | 59 + .../Scripts/Model/MarketplaceModel.cs.meta | 3 + .../Runtime/Scripts/Model/MintedNFT.cs | 25 - .../Runtime/Scripts/Model/MintedNFT.cs.meta | 11 - .../Runtime/Scripts/Model/NftTokenModel.cs | 40 + .../Scripts/Model/NftTokenModel.cs.meta | 3 + .../Scenes/SampleMain.unity | 2125 +++++++++++++++-- .../Scenes/SampleMain/Marketplace.meta | 8 + .../Marketplace/MarketplaceCalls.cs | 126 + .../Marketplace/MarketplaceCalls.cs.meta | 2 +- .../DisableGameObjectIfServiceNotActive.cs | 5 +- .../LiberationSans SDF - Fallback.asset | 45 +- 35 files changed, 2487 insertions(+), 642 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{Model/CollectionsModel.cs.meta => EVM/Remote/CSServer.cs.meta} (83%) delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs.meta => src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta (83%) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta index 69e264fa7..64ab4343e 100644 --- a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta +++ b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta @@ -1,34 +1,34 @@ -fileFormatVersion: 2 -guid: 9dc796e51d1e40edbc2a3664283a4fb5 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 1 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 9dc796e51d1e40edbc2a3664283a4fb5 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta new file mode 100644 index 000000000..cb09d1a99 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c407fec31cb14d20a43ae85cf2b9ace5 +timeCreated: 1715161231 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs new file mode 100644 index 000000000..99aa31d73 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs @@ -0,0 +1,147 @@ +using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; +using Scripts.EVM.Remote; +using UnityEngine; + +namespace Scripts.EVM.Marketplace +{ + public class Marketplace + { + #region Methods + + #region MarketplaceCalls + + /// + /// Gets all items in a project. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/items + /// + /// MarketplaceModel.Root + public static async Task GetProjectItems() + { + string path = $"/items?chainId={Web3Accessor.Web3.ChainConfig.ChainId}"; + var response = await CSServer.GetData(path); + return response; + } + + /// + /// Gets all items in a marketplace. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/marketplaces/{marketplaceID}/items + /// + /// MarketplaceID to query + /// MarketplaceModel.Root + public static async Task GetMarketplaceItems(string marketplaceId) + { + string path = $"/marketplaces/{marketplaceId}/items"; + var response = await CSServer.GetData(path); + return response; + } + + /// + /// Gets items listed by token id. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/marketplaces/{marketplaceID}/items/{itemID} + /// + /// MarketplaceID to query + /// TokenID to query + /// MarketplaceModel.Item + public static async Task GetItem(string marketplaceId, string tokenId) + { + string path = $"/marketplaces/{marketplaceId}/items/{tokenId}"; + var response = await CSServer.GetData(path); + return response; + } + + #endregion + + #region TokenCalls + + /// + /// Gets all tokens in a project. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/tokens + /// + /// NftTokenModel.Root + public static async Task GetProjectTokens() + { + string path = $"/tokens?chainId={Web3Accessor.Web3.ChainConfig.ChainId}"; + var response = await CSServer.GetData(path); + return response; + } + + /// + /// Gets all tokens in a 721 collection. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/collections/{collectionID}/tokens + /// + /// CollectionID721 to query + /// NftTokenModel.Root + public static async Task GetCollectionTokens721(string collectionId721) + { + string path = $"/collections/{collectionId721}/tokens"; + var response = await CSServer.GetData(path); + return response; + } + + /// + /// Gets all tokens in a 1155 collection. + /// Path https://api.gaming.chainsafe.io/v1/projects/{projectID}/collections/{collectionID}/tokens + /// + /// CollectionID1155 to query + /// NftTokenModel.Root + public static async Task GetCollectionTokens1155(string collectionId1155) + { + string path = $"/collections/{collectionId1155}/tokens"; + var response = await CSServer.GetData(path); + return response; + } + + /// + /// Gets the information of a token in a collection via id. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/collections/{collectionID}/tokens/:tokenID + /// Token id is optional + /// + /// CollectionID to query + /// TokenID to query + /// NftTokenModel.Token + public static async Task GetCollectionToken(string collectionId, string tokenId) + { + string path = $"/collections/{collectionId}/tokens/{tokenId}"; + var response = await CSServer.GetData(path); + return response; + } + + /// + /// Gets the owners of a token id in a collection. + /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/collections/{collectionID}/tokens/{tokenID}/owners + /// + /// CollectionID to query + /// TokenID to query + /// NftTokenModel.Token + public static async Task GetTokenOwners(string collectionId, string tokenId) + { + string path = $"/collections/{collectionId}/tokens/{tokenId}/owners"; + var response = await CSServer.GetData(path); + return response; + } + + #region Utilities + + /// + /// Prints json properties in the console on new lines. + /// + /// The object to print out + public static void PrintObject(object obj) + { + var properties = obj.GetType().GetProperties(); + foreach (var property in properties) + { + var value = property.GetValue(obj); + Debug.Log($"{property.Name}: {value}"); + } + } + + #endregion + + #endregion + + #endregion + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs.meta new file mode 100644 index 000000000..af836158c --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3ab3c8bddd9446f7abfeaf76b325c2d7 +timeCreated: 1715161261 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote.meta index 6848e7050..ab44a3c67 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote.meta +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 10fc778db07814e47ad3970c831cfb32 +guid: a29b9c314e7272d4daaed8afb17e28e7 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs new file mode 100644 index 000000000..8ae036dc8 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs @@ -0,0 +1,41 @@ +using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; +using Newtonsoft.Json; +using UnityEngine; +using UnityEngine.Networking; + +namespace Scripts.EVM.Remote +{ + public class CSServer + { + #region Fields + + private static readonly string host = "https://api.gaming.chainsafe.io/v1/projects/"; + + #endregion + + #region Methods + + /// + /// Unity web request helper function to retrieve data. + /// + /// + /// + public static async Task GetData(string _path) + { + using UnityWebRequest webRequest = UnityWebRequest.Get($"{host}{Web3Accessor.Web3.ProjectConfig.ProjectId}{_path}"); + await webRequest.SendWebRequest(); + if (webRequest.result != UnityWebRequest.Result.Success) + { + Debug.LogError("Error: Your project ID doesn't have a marketplace or the token ID doesn't exist, please go to dashboard and create items " + webRequest.error); + return default; + } + var json = webRequest.downloadHandler.text; + var response = JsonConvert.DeserializeObject(json); + return response; + } + + #endregion + + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta index 82c51b814..f805a056c 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs.meta +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 5ce1e2d3fcedc224da34c62fb3741376 +guid: 8ea43c720228be347a5ecebba0c5a83e MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs deleted file mode 100644 index 9d1f90331..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace Scripts.EVM.Token -{ - /// - /// A response object detailing the details of an on chain token from the targeted network. - /// - public class TokenResponse - { - public string Contract { get; set; } - public string TokenId { get; set; } - public string Uri { get; set; } - public string Balance { get; set; } - - public override string ToString() - { - return $"{nameof(Contract)}: {Contract}, {nameof(TokenId)}: {TokenId}, {nameof(Uri)}: {Uri}, {nameof(Balance)}: {Balance}"; - } - - private sealed class TokenResponseEqualityComparer : IEqualityComparer - { - public bool Equals(TokenResponse x, TokenResponse y) - { - if (ReferenceEquals(x, y)) return true; - if (ReferenceEquals(x, null)) return false; - if (ReferenceEquals(y, null)) return false; - if (x.GetType() != y.GetType()) return false; - return x.Contract == y.Contract && x.TokenId == y.TokenId && x.Uri == y.Uri && x.Balance == y.Balance; - } - - public int GetHashCode(TokenResponse obj) - { - return HashCode.Combine(obj.Contract, obj.TokenId, obj.Uri, obj.Balance); - } - } - - public static IEqualityComparer TokenResponseComparer { get; } = new TokenResponseEqualityComparer(); - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs deleted file mode 100644 index 0d66e3ba3..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class BuyNFT - { - [Serializable] - public class Connection - { - public string rpc; - public string chain; - public string network; - } - - [Serializable] - public class Response - { - public string hashedUnsignedTx; - public Connection connection; - public Tx tx; - } - - [Serializable] - public class Root - { - public Response response; - } - - [Serializable] - public class Tx - { - public string account; - public string to; - public string value; - public string data; - public string gasPrice; - public string gasLimit; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs.meta deleted file mode 100644 index 983212ef5..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: df71889a9d1403c45bbe7d3edcfd07ea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs deleted file mode 100644 index 7d4d53ba1..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class CollectionModel - { - [Serializable] - - public class Collection - { - public string _id; - public string name; - public string slug; - public string network; - public string description; - public string chain; - public string creator; - public List items; - public string image; - public string headerImage; - - [Serializable] - public class Items - { - public string nftContract; - public string tokenId; - } - } - [Serializable] - - public class Response - { - public Collection collection; - public string status; - } - [Serializable] - - public class Root - { - public Response response; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs deleted file mode 100644 index 3ada17666..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class CreateApprovalModel : MonoBehaviour -{ - [Serializable] - public class Connection - { - public string rpc; - public string chain; - public string network; - } - [Serializable] - public class Response - { - public string hashedUnsignedTx; - public Connection connection; - public Tx tx; - } - [Serializable] - public class Root - { - public Response response; - } - [Serializable] - public class Tx - { - public string account; - public string to; - public Value value; - public string data; - public string gasPrice; - public string gasLimit; - } - [Serializable] - public class Value - { - public string type; - public string hex; - } -} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs.meta deleted file mode 100644 index edc1f4583..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateApprovalModel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 526000f61a82d2a41bf2cd16e84cc49a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs deleted file mode 100644 index 3bd1795ef..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class CreateMintModel - { - [Serializable] - public class Connection - { - public string chain; - public string network; - } - [Serializable] - public class Response - { - public string hashedUnsignedTx; - public Connection connection; - public string cid; - public Tx tx; - } - [Serializable] - public class Root - { - public Response response; - } - [Serializable] - public class Tx - { - public string account; - public string to; - public string value; - public string data; - public string gasPrice; - public string gasLimit; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs.meta deleted file mode 100644 index 701f650ca..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cde25d7e7ebad724ca4ceaad2f787daf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs deleted file mode 100644 index a19bf1075..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class GetNftListModel - { - [Serializable] - public class Response - { - public string itemId; - public string nftContract; - public string tokenId; - public string seller; - public string price; - public string listedPercentage; - public string uri; - public string tokenType; - } - [Serializable] - public class Root - { - public List response; - } - - } -} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs.meta deleted file mode 100644 index 2b2135e85..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2a50ed7057d1c7c41a6b7e3994916304 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs deleted file mode 100644 index dc054d743..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class GetNftModel - { - [Serializable] - public class Response - { - public string id; - public string uri; - public Balances balances; - public string owner; - public string seller; - public string balance; - public bool isApproved; - public string nftContract; - public string tokenType; - - [Serializable] - public class Balances - { - public string account; - public string amount; - } - } - - - [Serializable] - public class Root - { - public Response response; - } - } -} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs.meta deleted file mode 100644 index 89cb89ab9..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 719b09741ca69d2428a985bdea2fc433 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs deleted file mode 100644 index dfb1c3146..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - [Serializable] - public class Properties - { - public List additionalFiles; - } - - [Serializable] - public class RootGetNFT - { - public string description; - public string image; - public string name; - public Properties properties; - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs.meta deleted file mode 100644 index a002d42ea..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bb70ec7d815c62c4295d27d814eaf0b3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs deleted file mode 100644 index 40ea3d964..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class ListNFT - { - [Serializable] - public class Connection - { - public string rpc; - public string chain; - public string network; - } - [Serializable] - public class Response - { - public string hashedUnsignedTx; - public Connection connection; - public Tx tx; - } - [Serializable] - public class Root - { - public Response response; - } - [Serializable] - public class Tx - { - public string account; - public string to; - public Value value; - public string data; - public string gasPrice; - public string gasLimit; - } - [Serializable] - public class Value - { - public string type; - public string hex; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs.meta deleted file mode 100644 index 82823a382..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a158b64e679fa764698638bc50480f81 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs new file mode 100644 index 000000000..5592d1d29 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs @@ -0,0 +1,59 @@ +using System.Collections.Generic; +using BigInteger = System.Numerics.BigInteger; + +namespace ChainSafe.Gaming.UnityPackage.Model +{ + public class MarketplaceModel + { + public class Root + { + public int page_number { get; set; } + public int page_size { get; set; } + public int total { get; set; } + public string cursor { get; set; } + public List items { get; set; } + public List owners { get; set; } + } + + public class Item + { + public string id { get; set; } + public string chain_id { get; set; } + public string project_id { get; set; } + public string marketplace_id { get; set; } + public Token token { get; set; } + public string marketplace_contract_address { get; set; } + public string seller { get; set; } + public string buyer { get; set; } + public string price { get; set; } + public BigInteger listed_at { get; set; } + public string status { get; set; } + } + + public class Token + { + public string token_id { get; set; } + public string token_type { get; set; } + public string contract_address { get; set; } + public string uri { get; set; } + public Metadata metadata { get; set; } + } + + public class Metadata + { + public List attributes { get; set; } + } + + public class Attribute + { + public string trait_type { get; set; } + public string value { get; set; } + } + + public class Owners + { + public string owner { get; set; } + public string supply { get; set; } + } + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs.meta new file mode 100644 index 000000000..05e30bf8c --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MarketplaceModel.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8b5de94ee9424297983effcfc779c901 +timeCreated: 1715068192 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs deleted file mode 100644 index 329c96de0..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace ChainSafe.Gaming.UnityPackage.Model -{ - public class MintedNFT - { - [Serializable] - public class Response - { - public string creator; - public string owner; - public string id; - public string nftContract; - public bool isApproved; - public string tokenType; - public string uri; - } - [Serializable] - public class Root - { - public List response; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs.meta deleted file mode 100644 index fbaba00fd..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cef05d3dba9a98148ae38298be9d8b25 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs new file mode 100644 index 000000000..c669bc530 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs @@ -0,0 +1,40 @@ +using System.Collections.Generic; + +namespace ChainSafe.Gaming.UnityPackage.Model +{ + public class NftTokenModel + { + public class Root + { + public int page_number { get; set; } + public int page_size { get; set; } + public int total { get; set; } + public string cursor { get; set; } + public List tokens { get; set; } + } + + public class Token + { + public string token_id { get; set; } + public string chain_id { get; set; } + public string project_id { get; set; } + public string collection_id { get; set; } + public string token_type { get; set; } + public string contract_address { get; set; } + public string supply { get; set; } + public string uri { get; set; } + public Metadata metadata { get; set; } + } + + public class Metadata + { + public List attributes { get; set; } + } + + public class Attribute + { + public string trait_type { get; set; } + public string value { get; set; } + } + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs.meta new file mode 100644 index 000000000..3d45b4e2a --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/NftTokenModel.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8d98ded17fe3400c8c44af3470d14658 +timeCreated: 1715068836 \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity index 7fdea2c96..807af1ba3 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity @@ -708,6 +708,7 @@ Transform: - {fileID: 128166331} - {fileID: 108046415} - {fileID: 626054679} + - {fileID: 496534497} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -2212,6 +2213,200 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &246667300 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetMarketplaceItems + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetMarketplaceItems + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetMarketplaceItems + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &246667301 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 246667300} + m_PrefabAsset: {fileID: 0} +--- !u!114 &246667302 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 246667301} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1 &270218414 GameObject: m_ObjectHideFlags: 0 @@ -2333,7 +2528,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.22460453 + m_Size: 0.279476 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -3050,6 +3245,50 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &496534496 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 496534497} + - component: {fileID: 496534498} + m_Layer: 0 + m_Name: MarketplaceCalls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &496534497 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 496534496} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 67264514} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &496534498 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 496534496} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -3324,12 +3563,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &561629178 +--- !u!1001 &553675705 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -3341,7 +3580,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 8 + value: 4 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -3442,7 +3681,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3457,7 +3696,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: TransferErc20 + value: GetCollectionTokens721 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -3465,7 +3704,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -3481,30 +3720,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Transfer + value: Button - GetCollectionTokens721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Transfer + value: GetCollectionTokens721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &561629179 stripped +--- !u!1 &553675706 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 561629178} + m_PrefabInstance: {fileID: 553675705} m_PrefabAsset: {fileID: 0} ---- !u!114 &561629180 +--- !u!114 &553675707 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 561629179} + m_GameObject: {fileID: 553675706} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -3518,12 +3757,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &571694324 +--- !u!1001 &561629178 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1019211774} + m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -3535,7 +3774,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 2 + value: 8 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -3636,7 +3875,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 626054680} + objectReference: {fileID: 21975179} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3651,7 +3890,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: GelatoCallWithSyncFeeErc2771 + value: TransferErc20 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -3659,7 +3898,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: GelatoCalls, Samples + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -3675,18 +3914,212 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - 2771CallWithSyncFee + value: Button - Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: CallWithSyncFeeErc2771 + value: Transfer + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &571694325 stripped +--- !u!1 &561629179 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 571694324} + m_PrefabInstance: {fileID: 561629178} + m_PrefabAsset: {fileID: 0} +--- !u!114 &561629180 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 561629179} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &571694324 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1019211774} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 626054680} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GelatoCallWithSyncFeeErc2771 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: GelatoCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - 2771CallWithSyncFee + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: CallWithSyncFeeErc2771 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &571694325 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 571694324} m_PrefabAsset: {fileID: 0} --- !u!114 &571694327 MonoBehaviour: @@ -3914,26 +4347,854 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Native Balance Of + value: Button - Native Balance Of + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Native Balance Of + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &740305724 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 740305723} + m_PrefabAsset: {fileID: 0} +--- !u!114 &740305726 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740305724} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &741546195 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: EventTxData + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - EventViaReceipt + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Event Data Via Tx + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &741546196 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 741546195} + m_PrefabAsset: {fileID: 0} +--- !u!114 &741546197 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741546196} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 2 +--- !u!114 &741546198 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741546196} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &743188456 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1547239394} + m_Modifications: + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetProjectItems + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: Target + value: + objectReference: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 574 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2290226172473003671, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_text + value: GetProjectItems + objectReference: {fileID: 0} + - target: {fileID: 2290226172473003671, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Name + value: Button - GetProjectItems + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 743188459} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Select + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: SelectAssetInEditor, Samples + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_text + value: Chainsafe's marketplace can be used to create collections & game specific + marketplaces aswell as minting and trading NFTs within them. Along with the + various SDK functions to retrieve data, these NFTs can be traded on the marketplace + with other users. + objectReference: {fileID: 0} + - target: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Name + value: Category - Marketplace + objectReference: {fileID: 0} + - target: {fileID: 5880704299188231306, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_text + value: Marketplace Calls + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} +--- !u!224 &743188457 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} +--- !u!224 &743188458 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} +--- !u!114 &743188459 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &743188460 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} +--- !u!114 &743188461 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 1 +--- !u!114 &743188462 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &743188463 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: 550 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &772013269 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetProjectTokens + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetProjectTokens objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Native Balance Of + value: GetProjectTokens + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &740305724 stripped +--- !u!1 &772013270 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 740305723} + m_PrefabInstance: {fileID: 772013269} m_PrefabAsset: {fileID: 0} ---- !u!114 &740305726 +--- !u!114 &772013271 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 740305724} + m_GameObject: {fileID: 772013270} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -3947,12 +5208,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &741546195 +--- !u!1001 &846989431 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -3964,7 +5225,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 18 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4065,7 +5326,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 24448130} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4080,7 +5341,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: EventTxData + value: TransferErc721 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4088,7 +5349,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: Erc721Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4104,43 +5365,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - EventViaReceipt + value: Button - Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Event Data Via Tx + value: Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 18.85 + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &741546196 stripped +--- !u!1 &846989432 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 741546195} - m_PrefabAsset: {fileID: 0} ---- !u!114 &741546197 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_PrefabInstance: {fileID: 846989431} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 741546196} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} - m_Name: - m_EditorClassIdentifier: - serviceType: 2 ---- !u!114 &741546198 +--- !u!114 &846989433 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 741546196} + m_GameObject: {fileID: 846989432} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -4154,12 +5402,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &846989431 +--- !u!1001 &853126499 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -4171,7 +5419,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 5 + value: 3 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4272,7 +5520,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 21975179} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4287,7 +5535,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: TransferErc721 + value: Name objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4295,7 +5543,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4311,30 +5559,26 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Transfer + value: Button - Name objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Transfer - objectReference: {fileID: 0} - - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_fontSize - value: 17.9 + value: Name objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &846989432 stripped +--- !u!1 &853126500 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 846989431} + m_PrefabInstance: {fileID: 853126499} m_PrefabAsset: {fileID: 0} ---- !u!114 &846989433 +--- !u!114 &853126502 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 846989432} + m_GameObject: {fileID: 853126500} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -4348,12 +5592,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &853126499 +--- !u!1001 &871233354 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -4365,7 +5609,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4466,7 +5710,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4481,7 +5725,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: Name + value: GetCollectionTokens1155 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4489,7 +5733,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4505,26 +5749,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Name + value: Button - GetCollectionTokens1155 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Name + value: GetCollectionTokens1155 + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.3 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &853126500 stripped +--- !u!1 &871233355 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 853126499} + m_PrefabInstance: {fileID: 871233354} m_PrefabAsset: {fileID: 0} ---- !u!114 &853126502 +--- !u!114 &871233356 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853126500} + m_GameObject: {fileID: 871233355} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -6047,25 +7295,219 @@ CanvasRenderer: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1058195611} - m_CullTransparentMesh: 1 ---- !u!114 &1058195615 + m_GameObject: {fileID: 1058195611} + m_CullTransparentMesh: 1 +--- !u!114 &1058195615 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1058195611} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 1 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1060509507 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetTokenOwners + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetTokenOwners + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetTokenOwners + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1060509508 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1060509507} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1060509509 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1058195611} + m_GameObject: {fileID: 1060509508} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} m_Name: m_EditorClassIdentifier: - m_IgnoreLayout: 1 + m_IgnoreLayout: 0 m_MinWidth: -1 m_MinHeight: -1 m_PreferredWidth: -1 - m_PreferredHeight: -1 + m_PreferredHeight: 50 m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 @@ -7270,64 +8712,258 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1309352038} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 213321591} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1309352040 + m_GameObject: {fileID: 1309352038} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 213321591} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1309352040 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309352038} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 0.28235295, a: 0.101960786} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1309352041 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309352038} + m_CullTransparentMesh: 1 +--- !u!1001 &1312741003 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 876509801} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 24448130} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: MintErc721 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc721Calls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Mint + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Mint + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1312741004 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1312741003} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1312741005 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1309352038} + m_GameObject: {fileID: 1312741004} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} m_Name: m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 0.28235295, a: 0.101960786} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1309352041 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1309352038} - m_CullTransparentMesh: 1 ---- !u!1001 &1312741003 + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1379414670 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -7339,7 +8975,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 4 + value: 2 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -7440,7 +9076,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -7455,7 +9091,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: MintErc721 + value: GetItem objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -7463,7 +9099,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -7479,30 +9115,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Mint + value: Button - GetItem objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Mint + value: GetItem objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1312741004 stripped +--- !u!1 &1379414671 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1312741003} + m_PrefabInstance: {fileID: 1379414670} m_PrefabAsset: {fileID: 0} ---- !u!114 &1312741005 +--- !u!114 &1379414672 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1312741004} + m_GameObject: {fileID: 1379414671} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -7779,7 +9415,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_RootOrder - value: 7 + value: 8 objectReference: {fileID: 0} - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchorMax.x @@ -8500,6 +10136,7 @@ RectTransform: - {fileID: 1300152324561942831} - {fileID: 199502201} - {fileID: 1019211773} + - {fileID: 743188457} - {fileID: 1432457964} m_Father: {fileID: 213321591} m_RootOrder: 0 @@ -8743,6 +10380,200 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &1633924247 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1633924248 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1633924247} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1633924249 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1633924248} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1001 &1762398783 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta new file mode 100644 index 000000000..8866f7cff --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b7c5ee5d62f1b3647af14571b3f4225e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs new file mode 100644 index 000000000..7f8a45455 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -0,0 +1,126 @@ +using Scripts.EVM.Marketplace; +using UnityEngine; + +/// +/// Marketplace sample calls for use with the api documentation. +/// Marketplace Api: https://docs.gaming.chainsafe.io/marketplace-api/docs/marketplaceapi +/// Token Api: https://docs.gaming.chainsafe.io/token-api/docs/tokenapi +/// +public class MarketplaceCalls : MonoBehaviour +{ + #region fields + + #region Collections + + [SerializeField] private string collectionId721 = "d588268b-8a5b-486a-8ea1-4122b510d71e"; + [SerializeField] private string collectionId1155 = "ebeaaee5-f7c2-4561-abb9-60ba749db7cd"; + [SerializeField] private string marketplaceId = "4986983b-2bcc-4bb3-b0db-a3448fbdee2b"; + [SerializeField] private string tokenId = "0"; + + #endregion + + #endregion + + #region Methods + + #region MarketplaceCalls + + /// + /// Gets all items in a project. + /// + public async void GetProjectItems() + { + var response = await Marketplace.GetProjectItems(); + Debug.Log($"Total: {response.total}"); + foreach (var item in response.items) + { + Marketplace.PrintObject(item); + } + } + + /// + /// Gets all items in a marketplace. + /// + public async void GetMarketplaceItems() + { + var response = await Marketplace.GetMarketplaceItems(marketplaceId); + Debug.Log($"Total: {response.total}"); + foreach (var item in response.items) + { + Marketplace.PrintObject(item); + } + } + + /// + /// Gets items listed by token id. + /// + public async void GetItem() + { + var response = await Marketplace.GetItem(marketplaceId, tokenId); + Marketplace.PrintObject(response.token); + } + #endregion + + #region TokenCalls + + /// + /// Gets all tokens in a project. + /// + public async void GetProjectTokens() + { + var response = await Marketplace.GetProjectTokens(); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets all tokens in a 721 collection. + /// + public async void GetCollectionTokens721() + { + var response = await Marketplace.GetCollectionTokens721(collectionId721); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets all tokens in a 1155 collection. + /// + public async void GetCollectionTokens1155() + { + var response = await Marketplace.GetCollectionTokens1155(collectionId1155); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets the information of a token in a collection via id. Token id is optional. + /// + public async void GetCollectionToken() + { + var response = await Marketplace.GetCollectionToken(collectionId721, tokenId); + Marketplace.PrintObject(response); + } + + /// + /// Gets the owners of a token id in a collection. + /// + public async void GetTokenOwners() + { + var response = await Marketplace.GetTokenOwners(collectionId1155, tokenId); + foreach (var owner in response.owners) + { + Marketplace.PrintObject(owner); + } + } + + #endregion + + #endregion +} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta index 5e425370f..17b02f290 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/TokenResponse.cs.meta +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: cdbff94e2b4544d548b7e6f350cb0c96 +guid: d447d1e7a64b28a4295aca07791c5557 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index b2cd3f817..799e1bc5f 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -28,7 +28,10 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour private void Awake() { - gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(_typesDictionary[serviceType]) != null); + if (_typesDictionary.TryGetValue(serviceType, out var value)) + { + gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(value) != null); + } } diff --git a/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset index 22d431f3a..a797a3c0d 100644 --- a/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset +++ b/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset @@ -193,18 +193,45 @@ MonoBehaviour: m_StrikethroughOffset: 18 m_StrikethroughThickness: 6.298828 m_TabWidth: 24 - m_GlyphTable: [] - m_CharacterTable: [] + m_GlyphTable: + - m_Index: 271 + m_Metrics: + m_Width: 42 + m_Height: 59 + m_HorizontalBearingX: 3 + m_HorizontalBearingY: 58 + m_HorizontalAdvance: 48 + m_GlyphRect: + m_X: 10 + m_Y: 10 + m_Width: 42 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + m_ClassDefinitionType: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 333 + m_GlyphIndex: 271 + m_Scale: 1 m_AtlasTextures: - {fileID: 28268798066460806} m_AtlasTextureIndex: 0 m_IsMultiAtlasTexturesEnabled: 0 m_ClearDynamicDataOnBuild: 1 - m_UsedGlyphRects: [] - m_FreeGlyphRects: + m_UsedGlyphRects: - m_X: 0 m_Y: 0 + m_Width: 61 + m_Height: 78 + m_FreeGlyphRects: + - m_X: 0 + m_Y: 78 m_Width: 511 + m_Height: 433 + - m_X: 61 + m_Y: 0 + m_Width: 450 m_Height: 511 m_fontInfo: Name: Liberation Sans @@ -319,9 +346,9 @@ Texture2D: m_DownscaleFallback: 0 m_IsAlphaChannelOptional: 0 serializedVersion: 2 - m_Width: 0 - m_Height: 0 - m_CompleteImageSize: 0 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 m_MipsStripped: 0 m_TextureFormat: 1 m_MipCount: 1 @@ -345,8 +372,8 @@ Texture2D: m_LightmapFormat: 0 m_ColorSpace: 0 m_PlatformBlob: - image data: 0 - _typelessdata: + image data: 262144 + _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070a0d0f11121313131212100e0c0906060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c10131416191c1d1f1f20201f1e1d1b191613120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f12181c1f202326282a2b2c2c2c2c2b2a282523201f1c17110f0a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f161b1d23292c2d303335373839393939383635322f2d2b28221c1b150e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b151b21272c2f34383a3d40424445464646454543413f3c3938332d2b26201a150b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a111720262b323839404547494c4f50525253535251504e4c4946443f3837312b262017110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b141c222832373d43484b515356595b5d5e5f5f5f5f5e5d5b585653504a47433c373127221b140b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d262d333c43474f54555c606366686a6b6c6c6c6c6b69686562605b54534e47423c332d261d150d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151f272f383f444e54596063676d707375777879797978787674726f6c66625f58534d443f382f271f150d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e273139424a50585f626b6f75797d7f828385858686858483817f7c79746f6a625f575049413931271f150b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d273039434b545b606a6f767c8185898c8e90919292929291908e8b8985817c756e69605b534b433931271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18232e39434b555d666c737c83898e9298999b9d9e9f9f9f9f9e9c9b9897918d88827b736c655d554b43392f24180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2834404b555d676d78808790949b9fa2a9a29e9c9b9a9a9b9d9fa3a9a19e9a948f877f776d675d554b40352920170d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313a45515c676d79828d92999fa6a39f9a97928f8e8d8e8e9092989b9fa3a69e99928c82796d675d51453f32291e1408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a43505a606d79828f949fa3a7a099928e898583818181828386898e92999fa7a39f948f82796d605b51443b3025190e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56616c74818e949ea6a69f959087817c79767474747577797d818790959ea5a69e948e81756d62564c41362a1e140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d68717e8a939da6a89f948f837c746f6c6668676768666d70757c838f939ea7a69e938b7f72685e52463b3025190e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c55606d7a85929ea5aca0968f82796e6a62605b545a5b545c60636a6e78818f959faba59f92857a6e61564c41362a1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d6773808d97a1ada69e91847a6d675f5853504a4e4e4b5153585f666d79839099a3ada2978d8174685e5246392d2014090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a85929fa9aa9e94897d70685d554e46443f41414045464e545c676f7c87929faca99f92867a6e6154473c31261a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36424d5765727f8b98a2aea99c8f82756b60564c433c38332d2e34383c424b555f6a74818e9ba8aea3988c7f7266574d42372b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a46525e697683909daaada196897d7063594f433a312b282223282c3039434e58626f7c8895a0acaa9d908477695f53463a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b87959fabab9e9184786c6053463d31281f1c17181c1f27313c47535f6a7784919daaaca095887b6e6155483b2e221506000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a7b1a79a8e8174665b5044382b1f160f0b0c10151f2b37434e586773808d9aa6b1a7988b7e7165584b3e2d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2834414e5b6774818e9aa7b4aa978a7e7164544a3f3328190d040000040d1b26323d4a5764707d8a97aab4a79b8e81746853493f33271b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c566a7683909da9aea298887b6e6155483b2d221708000000000a15212e3b4854616e7b8798a2aeaa9d908377655b5044372b1f120500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e687885929fabac9f9285796c605346392d201306000000000714212d3a46535e697985929facac9f9285796c605346392d20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a8798a2aeaa9d918477665b5044382b1f12060000000005121e2a36424d576a7784919daaaea298877a6e6154473b2e21140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895aab4a99c8f837669544a3f33281c0f0300000000020e1a2531434f5c6976828f9ca9b4aa95887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0a89b8e8275685b4f422d22170b000000000000091c2835424f5b6875828e9ba8b0a396897d7063564a3d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a97a3b0a79a8e8174675b4e4134281b060000000000010e1b2834414e5b6774818e9aa7b0a3978a7d7064574a3d3124170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1a79a8d8174675a4e4134271b0e0100000000010e1b2734414e5a6774818d9aa7b0a4978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a4b1a79a8d8074675a4d4134271a0e0100000000010e1a2734414d5a6774808d9aa7b1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1a79a8d8174675a4e4134271b0e0100000000010e1b2734414e5a6774818d9aa7b1a4978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a97a3b0a79a8e8174675b4e4134281b0e0100000000010e1b2834414e5b6774818e9aa7b0a3978a7d7064574a3d3124170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0a89b8e8175685b4e4235281b090000000000020f1b2835424e5b6875818e9ba8b0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895aab4a99c8f8276695c4f4330251a0e0200000000030f1c2936424f5c6975828f9ca8b5ab95897c6f6256493c2f23160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b8798a3aeaa9d9084776a574d42362a1e12050000000005111d2935414c566a7783909daaafa399877b6e6154483b2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facab9f928578695e52463a2d201407000000000713202d3946525d687885929eabac9f9286796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667784909daaaea298877b6e6154483b2e21150a000000000714212e3a4754616d7a8797a1adaa9e918477665c5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546875818e9ba8b3aa978a7d7064574a3d32271b0d04000001081623303d495663707c8996a9b3a89c8f827569544b4034281c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3f4b5865727e8b98a8b2a69a8d807367584e43372b1f15100c090e131e2a36414c5666727f8c99a5b3aa998c7f7366594c402e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615222f3c4855626f7b8896a0acaa9d9184776a6054473c31271f1c181b1a1e242d3946525e6876838f9ca9aea298897c706356493d30231607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a7784919eabaca095887c6f62584e4339312c282327262b2f35414c56616d7a86929facab9f9285796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e586673808d99a3afa89b8e81756a5f554b433c38342e3431373a4145525d68737f8c99a3afa79b8e8175675c5145382c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a26313c4855616e7b87929faaac9f92877c6f675d554e46454041414142474c515b606d7a85929eabaca095897d7063554b4034281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15212d3a46535f6975818e98a3aea3999083796d675f5853514b4e4e4e4d53555d606d74818e97a1ada69d9083776b605443392e23180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d57616e7b86929fa6aba0958f82796f6a63605c555b5a5b575f62676d747f8c939ea9a99f948a7d7064594f4430271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b46535f69737f8c949fa7a79f948f837c75706d676867676869696e737a818c919ca5aaa1978f82766c6155473d331e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36424d57606d78828f959fa7a69f959087817d79777574747476787b80858e939ca3aaa29892857b6e615a5044352b210c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a26313b44505c666d7a8390959da5a7a099938e898683828181818385888c92979da5a7a09892867d70695e52483e3323190f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f28343f4a545e686d7a838e929d9fa7a49f9b9892908e8e8d8e8f9197999ea1a9a29e9590867d706b60574d42362c22110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b17232e38424c565e686d79818990959b9fa2aaa39f9d9b9a9a9b9c9ea1a9a49f9c97928c837b706b60594f453b30241a1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303a444c565e676d747d83898e9298999b9d9e9f9f9f9f9e9d9b999993908b857f786e6960594f473d33291f1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e28323a444c555c606b6f777d8185898c8e90919292929291908f8d8a86837e79726d665f574f473d352b20170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162029323a434b515960636b7075797c7f82838485868685858382807d7a76726d67605c544d453d352b23190e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029313940454f54596063676d70727576787879797878777573706d6865605d55514a423c332b231911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e171f272f343d44484f54555c606366686a6b6c6c6c6c6b6a686664615e5653514b444039302a2119110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d1527323b444a4f51534b515356595b5d5e5f5f5f5f5e5d5c5a5754524c534d4b4740382e1e180f0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e39444d555b5d606060606060606060606060606060606060606060605957524a40352a1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a27333f4a555f676a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2a36434f5b67717779797979797979797979797979797979797979797979736e63574b3f3226190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a778386868686868686868686868686868686868686868686807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77849093939393939393939393939393939393939393938c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a7784909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77849097979797979797979797979797979797979797978c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77838a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a807366594d4033261a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4854606b70717171717171717171717171717171717171717171716f6a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c38444f59606364646464646464646464646464646464646464646464625f584e43372b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333d474f54565757575757575757575757575757575757575757575755534e463c31261a0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4847433c342a20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a232b33383c3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3a37312a22180e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a21272c2f30313131313131313131313131313131313131313131312f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f161c2022232424242424242424242424242424242424242424242422211f1a150e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b10141617171717171717171717171717171717171717171717171515120f0a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b090806030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 m_StreamData: serializedVersion: 2 offset: 0 From 7c464ab9f5529c54b44f7dc6de9a03c96add046f Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Wed, 8 May 2024 14:11:43 +0000 Subject: [PATCH 45/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes .../Web3.Unity/Scenes/SampleMain.unity | 2125 +++++++++++++++-- .../Scenes/SampleMain/Marketplace.meta | 8 + .../Marketplace/MarketplaceCalls.cs | 126 + .../Marketplace/MarketplaceCalls.cs.meta | 11 + .../DisableGameObjectIfServiceNotActive.cs | 5 +- 20 files changed, 2127 insertions(+), 148 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index d1dc92da8f6e279b7ea569218983352fcbb5c742..66ffee1a8e0f61531657bcd74c8f5e9609bb4e25 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6^nmo;;GH}-@?3-CTZ@%O_b7mo!7C%>;fv?PA>hv?Tkqg#$d>h z!e9)9$qW_@mJCJ=ra%#MAkPHIHU^5B14UARVjxj7hE$*^NWBSACJ`u;3=~ZSVvtzs JX7`ev%mB=|OA7!1 delta 238 zcmZqpz}WDCaY6@+mrnKKjXfdJ0$X+;Klsz~vETkl-c9~2m*h5oh+fXEk(QX2WMFKZ zW?`9TVQi6RVVGu;Xl|5dWMY<>Y-Da?k(OeVm}r@3w0VE}TUM5ZPcLttydgJ0;8N)$ zrL`MNTsj{#h%Vq}m6|M&w?F|ZSi%Vv1gbW^bJq62`}Skf-rFr+Z@!SH!RnvJkjRk6 zki=lXU<`z53>FNQVA2@K0`UxiqzO=sIfD_9WdvlK0eQ(lmN}3OQj-E?Cjy}*5F2fF IFWJcq0B=T5-v9sr diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index b4476e175fa80d63360f609a57c3ad38e3adb144..9a41646299d36d1c21274615253eb31d06a9d76d 100644 GIT binary patch delta 235 zcmZqBY0#O_!IJeo{OHCW4Nie&Cl?z_f4}ata`(M8F7vkNY(By%$*5suW|(4ZoNQrf zWNK)hY+__=VQ!jYXlQPhYLsGZVv%T?Y@TSIVw^gel{=c{yKC5)$tm0c0^L^L4hD;U zdv2}X@${gh8O!7&+&v0V!Ih;@L6GXGt2{c}lp9Ug`~N$+xqwH7)!&H0jKPp0g~1pI zlNl@+EE$X#Oo1ZiK%NPZZ44AM2a2Qs#XzEF45>g-ka`oKOd?Pw87P_v#2~TM&5s3T FSpZ7FM<4(I delta 235 zcmZqBY0#O_!BSD-aC2ji2B*Nq<$Bv!mNofoQJmyold1S-^AS!-Mvb(@v?K##<1`D) zGz(*kGz-HtlSFf)G$RwU#AG9L6N|JIqr^nZM5D>9+|evgsy45goWdO-FlGM7t_OmQ zJ}b0E`2W<+NSb_vyGH>g_yQ^jQtfruw>;7M%(t(tQz-!Lq&d%kqsqJSqb5GDUYhG^aVQnY{nwwn;NDY+j*qfJMW|%rM2+IN8F| z$kfn0*~G}$!rU~)(9qm0)hNZ-#3Io&**wua#W;2I1kDacmH;lnd6Q+d0|X-fyb-!$ zwcTsa*Ot_{AI*-FYqWb5pn_e0pn@RPkFW02xe{l0@!SG6o6Qi2zFe delta 236 zcmZq3X~>z-!E&-eymw;{kBUHb*sr*x{Cgg|FZ{AhKD@(k^9q#%EE;KvX-Njg#%UIo zX%@y7X%>cQCW+=oX+|byiOELhCKhQaMu~}*iAI|zXm&8NINBWRo-CssAh2L+sY0E{ z4X;J*pMxe$w)-%-M!QD=D#-N+DhO1~ExUJ>MDWKIajzm5wQttY$zkOE75+WPx~wK+*)L#+<oeoql;9;NkM(T+Fu{*U!^q4q#n?F6 z!qUjp&^+11$k@W%G{w-++$_~7#n{9m(KOjS(LBXCb@H0|nw$IQ9_3JuwlPr594L|k6a$HxF{A=TLF!F_GKoN$WT0pw O5QD^0H}78S$^-ya-A-Kq delta 242 zcmZp8z|`=7X+j6f`^P(`Z|n(~ARsLLB$VY!vcu|M6Qo|9I=^D`hY5Z>8fl4XNe0Ho zX%?1g7RDB77KUjiiRMOWMkZ#7$wuZT7HKI)iHVkpMw8df*WBDc_b3+&+x-i#Cr7LZ z5cqCkeYc%U(yzzr!&Co*)oGJ=tY}k!3ik0p1wpFSy_>hGWjieW&p+q-=D3x7EdFT> zi418BNel)I#z2_HV8LJsCXInC5YG@ungG?9GZ+C`MnJY1ke3W(nFHA%H7P)LA`n^v LvC-z;Yh9TD0j*N_ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 3f28b79e9093b171648afa3214889f16ef6d3943..595973d1da545cbcc9508290eee248f370647499 100644 GIT binary patch delta 235 zcmZp0XmFU&!4hlUyJKU|13>|eq}=@iFE)Ai3$wpvU4Q!J<{BX_CJiGq!xUrVWD83p zQ$zD)6C+~_bJG+xwHv5RRu=*P@m@ybKq%ar* zVKRdSgC&CzgDFtN9LO^PvW;W4 GAu|BpHbo!+ delta 235 zcmZp0XmFU&!LnlW?jIX_9ta9Nzx;#In*WjWtn^(crm?Zk!E3-W|C-blxAdNmY8g0Zeo#^Vw9L@nP@cmoJbPOPAUE;lTAbe1b!X)%*NfY z-FIL5yj8b3stPAh5uKp`6^w-mf>ba1^hW#c{%gnLCVsKm>?78~>Yv7t$dJa6#9+W+ z41{S677UhP(iq4B@eF~a2~dqWgAtHr1Z0~5dC5SQIgkxflLBNX0-+@k8*P@CdB_X^ DwRTPK diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index c95e350e1ea9f7eb1f73de724707a86ba9c3107e..a10c8d326f7c296eb6af3bd0594a9704b9fe1e89 100644 GIT binary patch delta 235 zcmZoLX)u}4!SZHh+5L?@6+8kD`8N0$$o6_nU+(=c>Z`@|%_6)Vj2cE}hAGCz$rhGI zriSLpCPu~<=B6ozhUR9eMk&T77Kx_G=85Jh#;KE!@Wrs4e-h9!S%p79ptU0Wx8T$* z&Z|4M`Zm~wCQfeQ-=_c-RDKN=1gV}I*<2eh^QOMZJJxe^l7JGMzY&8OgCRo-gE0^$ zGgvTKG8i$K0!7S$JQE<>7${~A6iES!fke$1Qh}l%^(H`>M4(JEP&5&UL1L+!FN^6i F0|03QM?3%k delta 235 zcmZoLX)u}4!J_E8Z1%>U3Lb&Z*hR`bJ|g}zRoAYbXJ*H{S%kNPQ6nueEy=*xIL*Q` z&BE9s&B8FvB+=X`&B(+oG1`G-P)!0dvbw<79{ zoHqXOZkcy|#n;IZiklRmf<}f=L7-}@kf_O9^u8XbI2)$$e6yC49GkxpgBgP%Lkfd2 z5GFHNFjz7eF_;2H%z-=;Aln!yW)2id0g8b{%@|UFq9FAqK$%3KOfpb35r{!zshg*3 HWHJK)SNltd delta 235 zcmZpOXo#55!J;jh{bFO!5ov)*#c$eqZMfV!&iOl?le^KnIYDMAvqoBCT9SdWahio? znuW1NnuTGSNus$?nvscFVzQCBiA7q9QDUNHqS0hsh2t!(+jTo9|4;}JkUV#Jm8r-r z-~Q#lPG~VC%TJC_+@t^%?1c#eRdarklXJ{g6SrpBDa*TAOG%E+KaC-gA&nu4!GOUS z2-6rW7%ai0F^~n~83IWYpc-=qBOuEN$TkD=l7TF9ARDA61;|bWLQ5bv+B{t&lNkV6 C<3&CI diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 239a7869fab645fd4734463dda6863cb1f7f5afe..c9bf42677f946ba1d7ebb362154dfe153626108a 100644 GIT binary patch delta 254 zcmZoT!_;twX+j5!d3)N-jXgg40(~#}%hLL6JSGRUAO zmPV$A=E){T#unzLDTapTW~oLg#wHetrpe}s<|)Rh3=FJ{3``6RPK*q;lP8)QY_2m6 zOJng~9C2gvjoASLfqyo=<-H@~(*MwZ-lF1^RY%M@nZwJMx8_IY zo7xSVU(7kc;%~%Y#$d>h!e9)9$qW_@mJCJ=ra%#MAkPHIHU^5B14UARVjxj7hE$*^ ZNWBSACJ`u;3=~ZSVvtzs=I;wRSpX!zQ9=L! delta 254 zcmZoT!_;twX+j5!&$_#_Hum`F3tV$)l>XZ2?%37yw#zL@S#t9WeIr(rw8XR|17qVf z3(GVMV~aEk!!(mbbE7mP6SKr*BXbjrv=pPnM9V}Y1_o9}1||juCq@R_$rDWtHrJVk zrLp|Z&wV-h#_RxrMb$pdtj(`HSFPXe)}VeMYO=+g2?|ibmswCjkm{HB1MXj6mSVo7 z{DJ4@7jq7<_@^->GNdsiF&Hoy17RA21%oA+GzPLjJVPL90#swpU<70t0oi6iUNVqn X4rGJWqyX88KxhfXMw`DcLC40P5KVzfo~UE{--^3#t7urqNL6rcgAV~GK)VaO#?L~6_pH0Iz2N`6s`WrErF&HwWFc<@2 zGJ^$!C4&)zDNw{5$TI=5je%n3K#>%n7)aENAr&YJQf~s3Nd(Fy14R>o7$launcM6u FGXU$0N7DcR delta 235 zcmZoDX(*Y{!SY{G_2kB$5KRH^-?gIO&Odfuw&+M!VcQCW+=oX+|byiOELhCKhQaMu~}*iAIy-^=`6kU@`eL*+xG=Kr3X?k=`z8 zuMIMbeqV~r%APz&f0_bR@RR{m5Tx4jg=nWk!q1u+*L1IK4l>AM^-p6+WJqI3VlZGZ z2EsH33kFLtX$)k6c!ogI1gOTG!3fAQ0d5y#`CJiGq!xUrVWD83p zQ$zD)6C+~_bJG+sDL^rhs2M{lP!y!z1SpdTlt~7PCIT@?EOqmF HMMD+cQCW+=oX+|byiOELhCKhQaMu~}*iAIypNzYDYY!yTqeuK;-AKl$dJa6#9+W+ z41{S677UhP(iq4B@eF~a2~dqWgAtHr1Z0~5dC5SQIgkxflLBNX0-+@k8*M(XXvhKp D>}g57 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index f56af2a200bcbd84bc079474f1291904341c0823..4e82385c2d81ad5379e38ec346df6b77e402ecdd 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)gjKBbLs8hf_(Fn(Yc*x+L%`O0CE>+VaBm(?sNS+c!{gK@@O4I?wd z6l3FL3rizYL-S-4BV!A5(-cEPbF);V6k`*MMAKyRMDrBm)a^dY7-cwEg1&3+nVz$b zF+e~syTUy}>W#~;nNf#MR#-iler6rx1O=#Q2}~5I-o`TfiHaa=VE&JJKG(L_tY_3= z@i$^HV=!b$VK4^5WCjZcO9mqbQ=o`BkY@s98w176fg&kDF_5SkLn=@dq}~K5lL(Ya S28t#EF-R|RF zNp|>p&AZh3`^}9PhLa;gW+^}gU%>={s*7^}K6+odXN#<0w4>l=q0oIS{zeRD42BFT z48}m1%wWM_$za4_3KTI1@=SniW1yHhP$UH?1`;)6NCk?5)SCch5`i+wK+!}X28pF^ JmXCVK3;>lmO*Q}k delta 238 zcmZqJ!`QHgaY6@+nDWk58+&fJ3v6(B@kQoTvrF^4GpVcY6sc`4@etwANJ~shGB7qy zv#?CFFt$juFibN^G&f2!GBHa`HZnJ{NJ}wFOtefi+Popag_%WujpFIaKY{}UDt<({ zL>60ktf+I$a(I13baF(=81AUhEVErHl*vwYM; FW&m&mOo0FZ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 2f3d0d9e9bdab85edcf72cf9f67e3b1a8dabe60b..fb7b68d80b6920a238fb091b42a70796720e90e1 100644 GIT binary patch delta 236 zcmZpuXsDRb!LnOJXYzX8XNfh7w;DH-h9A#4XeKqgBgP%Lkfd2 z5GFHNFjz7eF_;2H%z-=;Aln!yW)2id0g8b{%@|UFq9FAqK$%3KOfpb35r{!zshf9O Hx-tO(MX5>; delta 236 zcmZpuXsDRb!E*AGf9u8`4JCnKyUfSmvR8ZVuIZSRR&Mce^AV-bEE;KvX-Njg#%UIo zX%@y7X%>cQCW+=oX+|byiOELhCKhQaMu~}*iAJ06tKZ~ev7YF*a`GOd009p}tvl(D zjoo*&g{EOLlT1l zgE0`MF<3BIf=Oc_3&b-7k|sbk<_tzamJyI`2IM6JS>`}CNKFcmod|@MKy0*mx1}o+ E0QK@qga7~l diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index da1d2a481b22e2e47e89d2dddd56956d522b7534..d6c79b9048ce4c3bdd65bb02b39794a7ac09d82d 100644 GIT binary patch delta 263 zcmZpe!rU;0c|r$^fw;hjjXf<(1#}pu#&R||yLZ&znbrH|vdw0NWvlp2jm!*FjE$2m zER9SJ&67=xj4jMfQw$Bw%~Fk0j7=;OO_R+N%~On185md@8JHLt8X6cGswXFQ%TJ!a z&2MtuE}qR5+pci1RJ$;pm>jS_Kwxj~@57xcgg-ka`oKOd?Pw87P_v#2~TM&D_VnG6Mjp>r)~C delta 263 zcmZpe!rU;0c|r%vaZTaIjXf<(1=Jq2riI2&cAO|?^}zeI^!m*T%U1E5rX{8&85kR< zSy-l77+a)S7^aydnj57VnV2Oe8=0F}q@@@oCR!#MF)*+)GB7bPG&C?WR8LOqmY+O- zo8RQRT|ApBwq4<15i@DOGC5#>fPlwran?T%SNe6cT7@)iJGN}{hW%3%pn`GSP(h&T zkd@z*M9sStpBcqGXxp4}AcECDjUkaCjUkD_fWa6D(-A)$$W8=8OCUDd%zf-DGXQRiQau0w diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 44248cff4fea8845bf20a2889f4eace78f886aa0..2122a1e4428381d0adb76708a1e6d27b5b4449f1 100644 GIT binary patch delta 260 zcmZp;z}IkrZ$bwPN5`wPjXkYBj9Yt{MAiw+zkBWC#g}@1`(rn~Vw@12vwg!lCg}qj zMrMX7#>UAOmPV$A=E){T#unzLDTapTW~oLg#wHetrpe}s<|)Rh)8Caai%&0j!pORv zKc89DfF(q3_vPst^O*w#Ca#`ZwR8Pm$4Rm+lJl9h!l!r4XRc6yiavyig490_Q~P+m z?b_qG;3T*03JaJ8SpAI{%oq$AQW%VZFqy%E!IHs(?dk1@~K2cxF3K*uG&Mlk@?N zw8XR|17qVf3(GVMV~aEk!!(mbbE7mP6SKr*BXbjrv=pPnM9V~@>F-LI#itiMVPxIT zpU*66z#=g7{f_Ax^O*w#t}m}z#&28a+w#M4jf42gqUjy;nJW~aqOvSdQJ{JY$&II? z<|ySYd=e^avt3~UvjD4q8bcyO8bcC;0fR9RrZHGBSb|AoAPdAZ1d=8|HRcRPK$a1Z eZ3g5e16k%kHb_khkevvGmOyN@y?!ZkBNG6Y5mOrg diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity index 7fdea2c96..807af1ba3 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity @@ -708,6 +708,7 @@ Transform: - {fileID: 128166331} - {fileID: 108046415} - {fileID: 626054679} + - {fileID: 496534497} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -2212,6 +2213,200 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &246667300 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetMarketplaceItems + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetMarketplaceItems + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetMarketplaceItems + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &246667301 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 246667300} + m_PrefabAsset: {fileID: 0} +--- !u!114 &246667302 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 246667301} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1 &270218414 GameObject: m_ObjectHideFlags: 0 @@ -2333,7 +2528,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.22460453 + m_Size: 0.279476 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -3050,6 +3245,50 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &496534496 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 496534497} + - component: {fileID: 496534498} + m_Layer: 0 + m_Name: MarketplaceCalls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &496534497 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 496534496} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 67264514} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &496534498 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 496534496} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -3324,12 +3563,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &561629178 +--- !u!1001 &553675705 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -3341,7 +3580,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 8 + value: 4 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -3442,7 +3681,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3457,7 +3696,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: TransferErc20 + value: GetCollectionTokens721 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -3465,7 +3704,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -3481,30 +3720,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Transfer + value: Button - GetCollectionTokens721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Transfer + value: GetCollectionTokens721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &561629179 stripped +--- !u!1 &553675706 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 561629178} + m_PrefabInstance: {fileID: 553675705} m_PrefabAsset: {fileID: 0} ---- !u!114 &561629180 +--- !u!114 &553675707 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 561629179} + m_GameObject: {fileID: 553675706} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -3518,12 +3757,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &571694324 +--- !u!1001 &561629178 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1019211774} + m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -3535,7 +3774,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 2 + value: 8 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -3636,7 +3875,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 626054680} + objectReference: {fileID: 21975179} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3651,7 +3890,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: GelatoCallWithSyncFeeErc2771 + value: TransferErc20 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -3659,7 +3898,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: GelatoCalls, Samples + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -3675,18 +3914,212 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - 2771CallWithSyncFee + value: Button - Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: CallWithSyncFeeErc2771 + value: Transfer + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &571694325 stripped +--- !u!1 &561629179 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 571694324} + m_PrefabInstance: {fileID: 561629178} + m_PrefabAsset: {fileID: 0} +--- !u!114 &561629180 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 561629179} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &571694324 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1019211774} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 626054680} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GelatoCallWithSyncFeeErc2771 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: GelatoCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - 2771CallWithSyncFee + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: CallWithSyncFeeErc2771 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &571694325 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 571694324} m_PrefabAsset: {fileID: 0} --- !u!114 &571694327 MonoBehaviour: @@ -3914,26 +4347,854 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Native Balance Of + value: Button - Native Balance Of + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Native Balance Of + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &740305724 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 740305723} + m_PrefabAsset: {fileID: 0} +--- !u!114 &740305726 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740305724} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &741546195 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: EventTxData + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - EventViaReceipt + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Event Data Via Tx + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &741546196 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 741546195} + m_PrefabAsset: {fileID: 0} +--- !u!114 &741546197 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741546196} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 2 +--- !u!114 &741546198 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741546196} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &743188456 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1547239394} + m_Modifications: + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetProjectItems + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: Target + value: + objectReference: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 574 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2290226172473003671, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_text + value: GetProjectItems + objectReference: {fileID: 0} + - target: {fileID: 2290226172473003671, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Name + value: Button - GetProjectItems + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 743188459} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Select + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: SelectAssetInEditor, Samples + objectReference: {fileID: 0} + - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3987575268489723521, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5508192653135270670, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_text + value: Chainsafe's marketplace can be used to create collections & game specific + marketplaces aswell as minting and trading NFTs within them. Along with the + various SDK functions to retrieve data, these NFTs can be traded on the marketplace + with other users. + objectReference: {fileID: 0} + - target: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_Name + value: Category - Marketplace + objectReference: {fileID: 0} + - target: {fileID: 5880704299188231306, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_text + value: Marketplace Calls + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} +--- !u!224 &743188457 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} +--- !u!224 &743188458 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} +--- !u!114 &743188459 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &743188460 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 743188456} + m_PrefabAsset: {fileID: 0} +--- !u!114 &743188461 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 1 +--- !u!114 &743188462 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &743188463 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: 550 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &772013269 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetProjectTokens + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetProjectTokens objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Native Balance Of + value: GetProjectTokens + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &740305724 stripped +--- !u!1 &772013270 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 740305723} + m_PrefabInstance: {fileID: 772013269} m_PrefabAsset: {fileID: 0} ---- !u!114 &740305726 +--- !u!114 &772013271 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 740305724} + m_GameObject: {fileID: 772013270} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -3947,12 +5208,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &741546195 +--- !u!1001 &846989431 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -3964,7 +5225,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 18 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4065,7 +5326,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 24448130} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4080,7 +5341,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: EventTxData + value: TransferErc721 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4088,7 +5349,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: Erc721Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4104,43 +5365,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - EventViaReceipt + value: Button - Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Event Data Via Tx + value: Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 18.85 + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &741546196 stripped +--- !u!1 &846989432 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 741546195} - m_PrefabAsset: {fileID: 0} ---- !u!114 &741546197 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_PrefabInstance: {fileID: 846989431} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 741546196} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} - m_Name: - m_EditorClassIdentifier: - serviceType: 2 ---- !u!114 &741546198 +--- !u!114 &846989433 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 741546196} + m_GameObject: {fileID: 846989432} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -4154,12 +5402,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &846989431 +--- !u!1001 &853126499 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -4171,7 +5419,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 5 + value: 3 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4272,7 +5520,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 21975179} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4287,7 +5535,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: TransferErc721 + value: Name objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4295,7 +5543,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4311,30 +5559,26 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Transfer + value: Button - Name objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Transfer - objectReference: {fileID: 0} - - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_fontSize - value: 17.9 + value: Name objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &846989432 stripped +--- !u!1 &853126500 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 846989431} + m_PrefabInstance: {fileID: 853126499} m_PrefabAsset: {fileID: 0} ---- !u!114 &846989433 +--- !u!114 &853126502 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 846989432} + m_GameObject: {fileID: 853126500} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -4348,12 +5592,12 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &853126499 +--- !u!1001 &871233354 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -4365,7 +5609,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4466,7 +5710,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4481,7 +5725,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: Name + value: GetCollectionTokens1155 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4489,7 +5733,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4505,26 +5749,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Name + value: Button - GetCollectionTokens1155 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Name + value: GetCollectionTokens1155 + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.3 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &853126500 stripped +--- !u!1 &871233355 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 853126499} + m_PrefabInstance: {fileID: 871233354} m_PrefabAsset: {fileID: 0} ---- !u!114 &853126502 +--- !u!114 &871233356 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853126500} + m_GameObject: {fileID: 871233355} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -6047,25 +7295,219 @@ CanvasRenderer: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1058195611} - m_CullTransparentMesh: 1 ---- !u!114 &1058195615 + m_GameObject: {fileID: 1058195611} + m_CullTransparentMesh: 1 +--- !u!114 &1058195615 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1058195611} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 1 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1060509507 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetTokenOwners + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetTokenOwners + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetTokenOwners + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1060509508 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1060509507} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1060509509 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1058195611} + m_GameObject: {fileID: 1060509508} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} m_Name: m_EditorClassIdentifier: - m_IgnoreLayout: 1 + m_IgnoreLayout: 0 m_MinWidth: -1 m_MinHeight: -1 m_PreferredWidth: -1 - m_PreferredHeight: -1 + m_PreferredHeight: 50 m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 @@ -7270,64 +8712,258 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1309352038} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 213321591} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1309352040 + m_GameObject: {fileID: 1309352038} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 213321591} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1309352040 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309352038} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 0.28235295, a: 0.101960786} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1309352041 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1309352038} + m_CullTransparentMesh: 1 +--- !u!1001 &1312741003 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 876509801} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 24448130} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: MintErc721 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc721Calls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Mint + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Mint + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1312741004 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1312741003} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1312741005 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1309352038} + m_GameObject: {fileID: 1312741004} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} m_Name: m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 0.28235295, a: 0.101960786} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1309352041 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1309352038} - m_CullTransparentMesh: 1 ---- !u!1001 &1312741003 + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1379414670 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -7339,7 +8975,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 4 + value: 2 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -7440,7 +9076,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -7455,7 +9091,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: MintErc721 + value: GetItem objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -7463,7 +9099,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -7479,30 +9115,30 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Mint + value: Button - GetItem objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Mint + value: GetItem objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1312741004 stripped +--- !u!1 &1379414671 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1312741003} + m_PrefabInstance: {fileID: 1379414670} m_PrefabAsset: {fileID: 0} ---- !u!114 &1312741005 +--- !u!114 &1379414672 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1312741004} + m_GameObject: {fileID: 1379414671} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -7779,7 +9415,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_RootOrder - value: 7 + value: 8 objectReference: {fileID: 0} - target: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchorMax.x @@ -8500,6 +10136,7 @@ RectTransform: - {fileID: 1300152324561942831} - {fileID: 199502201} - {fileID: 1019211773} + - {fileID: 743188457} - {fileID: 1432457964} m_Father: {fileID: 213321591} m_RootOrder: 0 @@ -8743,6 +10380,200 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &1633924247 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1633924248 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1633924247} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1633924249 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1633924248} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1001 &1762398783 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta new file mode 100644 index 000000000..8866f7cff --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b7c5ee5d62f1b3647af14571b3f4225e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs new file mode 100644 index 000000000..7f8a45455 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -0,0 +1,126 @@ +using Scripts.EVM.Marketplace; +using UnityEngine; + +/// +/// Marketplace sample calls for use with the api documentation. +/// Marketplace Api: https://docs.gaming.chainsafe.io/marketplace-api/docs/marketplaceapi +/// Token Api: https://docs.gaming.chainsafe.io/token-api/docs/tokenapi +/// +public class MarketplaceCalls : MonoBehaviour +{ + #region fields + + #region Collections + + [SerializeField] private string collectionId721 = "d588268b-8a5b-486a-8ea1-4122b510d71e"; + [SerializeField] private string collectionId1155 = "ebeaaee5-f7c2-4561-abb9-60ba749db7cd"; + [SerializeField] private string marketplaceId = "4986983b-2bcc-4bb3-b0db-a3448fbdee2b"; + [SerializeField] private string tokenId = "0"; + + #endregion + + #endregion + + #region Methods + + #region MarketplaceCalls + + /// + /// Gets all items in a project. + /// + public async void GetProjectItems() + { + var response = await Marketplace.GetProjectItems(); + Debug.Log($"Total: {response.total}"); + foreach (var item in response.items) + { + Marketplace.PrintObject(item); + } + } + + /// + /// Gets all items in a marketplace. + /// + public async void GetMarketplaceItems() + { + var response = await Marketplace.GetMarketplaceItems(marketplaceId); + Debug.Log($"Total: {response.total}"); + foreach (var item in response.items) + { + Marketplace.PrintObject(item); + } + } + + /// + /// Gets items listed by token id. + /// + public async void GetItem() + { + var response = await Marketplace.GetItem(marketplaceId, tokenId); + Marketplace.PrintObject(response.token); + } + #endregion + + #region TokenCalls + + /// + /// Gets all tokens in a project. + /// + public async void GetProjectTokens() + { + var response = await Marketplace.GetProjectTokens(); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets all tokens in a 721 collection. + /// + public async void GetCollectionTokens721() + { + var response = await Marketplace.GetCollectionTokens721(collectionId721); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets all tokens in a 1155 collection. + /// + public async void GetCollectionTokens1155() + { + var response = await Marketplace.GetCollectionTokens1155(collectionId1155); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets the information of a token in a collection via id. Token id is optional. + /// + public async void GetCollectionToken() + { + var response = await Marketplace.GetCollectionToken(collectionId721, tokenId); + Marketplace.PrintObject(response); + } + + /// + /// Gets the owners of a token id in a collection. + /// + public async void GetTokenOwners() + { + var response = await Marketplace.GetTokenOwners(collectionId1155, tokenId); + foreach (var owner in response.owners) + { + Marketplace.PrintObject(owner); + } + } + + #endregion + + #endregion +} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta new file mode 100644 index 000000000..17b02f290 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d447d1e7a64b28a4295aca07791c5557 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index b2cd3f817..799e1bc5f 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -28,7 +28,10 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour private void Awake() { - gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(_typesDictionary[serviceType]) != null); + if (_typesDictionary.TryGetValue(serviceType, out var value)) + { + gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(value) != null); + } } From e2417ae968dbc5ec1c276539157af3adbc6eedba Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Thu, 9 May 2024 17:09:27 +0800 Subject: [PATCH 46/97] Easy sample calls (#945) --- .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 76 +++++++++++-------- .../Scenes/SampleMain/Erc1155/Erc1155Calls.cs | 41 +++++----- .../Scenes/SampleMain/Erc20/Erc20Calls.cs | 18 +++-- .../Scenes/SampleMain/Erc721/Erc721Calls.cs | 35 +++++---- .../Marketplace/MarketplaceCalls.cs | 7 +- 5 files changed, 105 insertions(+), 72 deletions(-) diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index a680fb5b4..0f05786df 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -19,35 +19,29 @@ public class EvmCalls : MonoBehaviour { #region Fields - - #region IPFS - - private string apiKey = "YOUR_CHAINSAFE_STORE_API_KEY"; - private string data = "YOUR_DATA"; - private string bucketId = "BUCKET_ID"; - private string path = "/PATH"; - private string filename = "FILENAME.EXT"; - - #endregion + [Header("Change the fields below for testing purposes")] #region Contract Send - - private string methodSend = "addTotal"; - private int increaseAmountSend = 1; + + [Header("Contract Send")] + [SerializeField] private string methodSend = "addTotal"; + [SerializeField] private int increaseAmountSend = 1; #endregion #region Contract Call - - private string methodCall = "myTotal"; + + [Header("Contract Call")] + [SerializeField] private string methodCall = "myTotal"; #endregion #region Get Send Array - - private string methodArrayGet = "getStore"; - private string methodArraySend = "setStore"; - private string[] stringArraySend = + + [Header("Array Calls")] + [SerializeField] private string methodArrayGet = "getStore"; + [SerializeField] private string methodArraySend = "setStore"; + [SerializeField] private string[] stringArraySend = { "0xFb3aECf08940785D4fB3Ad87cDC6e1Ceb20e9aac", "0x92d4040e4f3591e60644aaa483821d1bd87001e3" @@ -56,37 +50,53 @@ public class EvmCalls : MonoBehaviour #endregion #region Sign Verify Sha3 - - private string messageSign = "The right man in the wrong place can make all the difference in the world."; - private string messageSignVerify = "A man chooses, a slave obeys."; - private string messageSha = "It’s dangerous to go alone, take this!"; + + [Header("Sign Verify SHA3 calls")] + [SerializeField] private string messageSign = "The right man in the wrong place can make all the difference in the world."; + [SerializeField] private string messageSignVerify = "A man chooses, a slave obeys."; + [SerializeField] private string messageSha = "It’s dangerous to go alone, take this!"; #endregion #region Send Transaction - - private string toAddress = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; + + [Header("Send Transaction Call")] + [SerializeField] private string toAddress = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; #endregion #region Registered Contract - - private string registeredContractName = "CsTestErc20"; + + [Header("Registered Contract Call")] + [SerializeField] private string registeredContractName = "CsTestErc20"; #endregion #region ECDSA - - private string ecdsaKey = "0x78dae1a22c7507a4ed30c06172e7614eb168d3546c13856340771e63ad3c0081"; - private string ecdsaMessage = "This is a test message"; - private string transactionHash = "0x123456789"; - private string chainId = "11155111"; + + [Header("ECDSA Calls")] + [SerializeField] private string ecdsaKey = "0x78dae1a22c7507a4ed30c06172e7614eb168d3546c13856340771e63ad3c0081"; + [SerializeField] private string ecdsaMessage = "This is a test message"; + [SerializeField] private string transactionHash = "0x123456789"; + [SerializeField] private string chainId = "11155111"; #endregion #region Multi Call + + [Header("MutliCall")] + [SerializeField] private string Erc20Account = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; - private string Erc20Account = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; + #endregion + + #region IPFS + + [Header("IPFS VALUES")] + [SerializeField] private string apiKey = "YOUR_CHAINSAFE_STORE_API_KEY"; + [SerializeField] private string data = "YOUR_DATA"; + [SerializeField] private string bucketId = "BUCKET_ID"; + [SerializeField] private string path = "/PATH"; + [SerializeField] private string filename = "FILENAME.EXT"; #endregion diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs index 7604b48b6..29d8b1d43 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs @@ -13,45 +13,52 @@ public class Erc1155Calls : MonoBehaviour { #region Fields + [Header("Change the fields below for testing purposes")] #region Balance Of - - private string accountBalanceOf = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; - private string tokenIdBalanceOf = "1"; + + [Header("Balance Of Call")] + [SerializeField] private string accountBalanceOf = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; + [SerializeField] private string tokenIdBalanceOf = "1"; #endregion #region Balance Of Batch - - private string[] accountsBalanceOfBatch = { "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2", "0xE51995Cdb3b1c109E0e6E67ab5aB31CDdBB83E4a" }; - private string[] tokenIdsBalanceOfBatch = { "1", "2" }; + + [Header("Balance Of Batch Call")] + [SerializeField] private string[] accountsBalanceOfBatch = { "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2", "0xE51995Cdb3b1c109E0e6E67ab5aB31CDdBB83E4a" }; + [SerializeField] private string[] tokenIdsBalanceOfBatch = { "1", "2" }; #endregion #region Uri - - private string tokenIdUri = "1"; + + [Header("URI Call")] + [SerializeField] private string tokenIdUri = "1"; #endregion #region Mint - - private BigInteger idMint = 1; - private BigInteger amountMint = 1; + + [Header("Mint Call")] + [SerializeField] private BigInteger idMint = 1; + [SerializeField] private BigInteger amountMint = 1; #endregion #region Transfer - - private string toAccountTransfer = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; - private BigInteger tokenIdTransfer = 1; - private BigInteger amountTransfer = 1; + + [Header("Transfer Call")] + [SerializeField] private string toAccountTransfer = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; + [SerializeField] private BigInteger tokenIdTransfer = 1; + [SerializeField] private BigInteger amountTransfer = 1; #endregion #region Texture - - private string tokenIdTexture = "0"; + + [Header("Token ID for IPFS texture")] + [SerializeField] private string tokenIdTexture = "0"; public RawImage rawImage; #endregion diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs index 33824b325..0bf845a89 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs @@ -9,23 +9,27 @@ public class Erc20Calls : MonoBehaviour { #region Fields + [Header("Change the fields below for testing purposes")] #region Balance Of - - private string accountBalanceOf = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; + + [Header("Balance Of Call")] + [SerializeField] private string accountBalanceOf = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; #endregion #region Mint - - private BigInteger amountMint = 1000000000000000000; + + [Header("Mint Call")] + [SerializeField] private BigInteger amountMint = 1000000000000000000; #endregion #region Transfer - - private const string toAccount = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; - private BigInteger amountTransfer = 1000000000000000; + + [Header("Transfer Call")] + [SerializeField] private string toAccount = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; + [SerializeField] private BigInteger amountTransfer = 1000000000000000; #endregion diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs index 584ef849b..6dc30bee4 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs @@ -13,42 +13,49 @@ public class Erc721Calls : MonoBehaviour { #region Fields + [Header("Change the fields below for testing purposes")] #region Balance Of - - private string accountBalanceOf = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; + + [Header("Balance Of Call")] + [SerializeField] private string accountBalanceOf = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; #endregion #region Owner Of - - private string tokenIdOwnerOf = "1"; + + [Header("Owner Of Call")] + [SerializeField] private string tokenIdOwnerOf = "1"; #endregion - + + [Header("Balance Of Batch Call")] #region Owner Of Batch - private string[] tokenIdsOwnerOfBatch = { "4", "50", "6" }; + [SerializeField] private string[] tokenIdsOwnerOfBatch = { "4", "50", "6" }; #endregion #region Uri - - private string tokenIdUri = "0x01559ae4021a565d5cc4740f1cefa95de8c1fb193949ecd32c337b03047da501"; + + [Header("URI Call")] + [SerializeField] private string tokenIdUri = "0x01559ae4021a565d5cc4740f1cefa95de8c1fb193949ecd32c337b03047da501"; #endregion #region Mint - - private string uriMint = "1"; + + [Header("Mint Call")] + [SerializeField] private string uriMint = "1"; #endregion #region Transfer - - private string contractTransfer = "0x358AA13c52544ECCEF6B0ADD0f801012ADAD5eE3"; - private string toAccountTransfer = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; - private int tokenIdTransfer = 0; + + [Header("Transfer Call")] + [SerializeField] private string contractTransfer = "0x358AA13c52544ECCEF6B0ADD0f801012ADAD5eE3"; + [SerializeField] private string toAccountTransfer = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; + [SerializeField] private int tokenIdTransfer = 0; #endregion diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs index 7f8a45455..2095b526d 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -9,12 +9,17 @@ public class MarketplaceCalls : MonoBehaviour { #region fields - + [Header("Change the fields below for testing purposes")] + #region Collections + [Header("721 Collection Call")] [SerializeField] private string collectionId721 = "d588268b-8a5b-486a-8ea1-4122b510d71e"; + [Header("1155 Collection Call")] [SerializeField] private string collectionId1155 = "ebeaaee5-f7c2-4561-abb9-60ba749db7cd"; + [Header("Marketplace Calls")] [SerializeField] private string marketplaceId = "4986983b-2bcc-4bb3-b0db-a3448fbdee2b"; + [Header("Token Calls")] [SerializeField] private string tokenId = "0"; #endregion From 57b6765f3bfaae4664600e7fe7da2e37eb98fbe9 Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Thu, 9 May 2024 09:12:38 +0000 Subject: [PATCH 47/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 76 ++++++++++-------- .../Scenes/SampleMain/Erc1155/Erc1155Calls.cs | 41 ++++++---- .../Scenes/SampleMain/Erc20/Erc20Calls.cs | 18 +++-- .../Scenes/SampleMain/Erc721/Erc721Calls.cs | 35 ++++---- .../Marketplace/MarketplaceCalls.cs | 7 +- 20 files changed, 105 insertions(+), 72 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 66ffee1a8e0f61531657bcd74c8f5e9609bb4e25..d21ac4ef544cafa16433dedc6c90d74d1d041611 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@+!Htd`8+$^c1$>Ttz1VLN=)6k4gYne;*P5F@L@(#oNHsDsG*3*m zG_y!aN;XYRHcU1$H#0T1G&D6&Ofyad3Yw*+rX(e9-k<)Kl_k%#_R-`Gxd8%2b~khT zc3Hcwf3j)bs@}hxlLhh?C_n|b!UTb;lP=_}s}kNX8pg;ap|<%#o(8LbDuWS&34UcPyhe` delta 238 zcmZqpz}WDCaY6^nmo;;GH}-@?3-CTZ@%O_b7mo!7C%>;fv?PA>hv?Tkqg#$d>h z!e9)9$qW_@mJCJ=ra%#MAkPHIHU^5B14UARVjxj7hE$*^NWBSACJ`u;3=~ZSVvtzs JX7`ev%mB=|OA7!1 diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 9a41646299d36d1c21274615253eb31d06a9d76d..8379e5631b8f817459965a9114e62f4816f0f2dc 100644 GIT binary patch delta 235 zcmZqBY0#O_!IIl3xNu{S2B$!{OHET|&OXZqeiNciJ^I7s->Al zN>Z|EYO-Onk-3?vv8AD@d19JzB2dsQH8mwEaWX4+G>ct?(#6Rs+yMexcUfNX`=al< zen;-Sp4DDPlaFxsC_n|jzK03|RRlMGa04iqg-ka`oKOd?Pw87P_v#2~TM&5s3T FSpZ7FM<4(I diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 085e4c99cfd4a42606fba08b0286d6b5cc636b2f..edeb920eca5ecb9fd5934ce78b6ee4dd42d3d500 100644 GIT binary patch delta 236 zcmZq3X~>z-!E$6?^T&-nJSqY;e?9Ysp3m{0oaggTNqFhi%_~$6uxO+jnHZWUrdpa= zq$DMqrY0LE8=0G#8e1BgnkS|iCjte{Qd3is5;srK>|kW!Hc0w7Sw=fRz&Lc;>`g9R z9xIz-!Lq&d%kqsqJSqb5GDUYhG^aVQnY{nwwn;NDY+j*qfJMW|%rM2+IN8F| z$kfn0*~G}$!rU~)(9qm0)hNZ-#3Io&**wua#W;2I1kDacmH;lnd6Q+d0|X-fyb-!$ zwcTsa*Ot_{AI*-FYqWb5pn_e0pn@RPkFW02xe{l0@!SG6o6Qi2zFe diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index af5b362aeff7fb6b8386e7363b7de33cae1ace2c..9e5f932a796bc98e32e7db4e347133c66cb7b09f 100644 GIT binary patch delta 242 zcmZp8z|`=7X+j4}p!Ahz8+$?~2*`__V(J!r?!0K@X5+YBU;8(InBd2wk!oaOXr7pA zX=agoeoql;9;NkM(T+Fu{*U!^q4q#n?F6 z!qUjp&^+11$k@W%G{w-++$_~7#n{9m(KOjS(LBXCb@H0|nw$IQ9_3JuwlPr594L|k6a$HxF{A=TLF!F_GKoN$WT0pw O5QD^0H}78S$^-ya-A-Kq diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 595973d1da545cbcc9508290eee248f370647499..3d8b801d4340f6d42fbe2f4a84d264d0ac31e287 100644 GIT binary patch delta 235 zcmZp0XmFU&!P3z?WBtaS2Z91?wulubcXK!`|2mJae2>t>%{4+=Od6?1CWhvTsg`CI zDM`tusmX@PM&@Rw#+HVr=80*>i9kWK)YO!u#L4GGl30%aJJmATL^MDk>EpizP5QBZ zQ~oeDSlu;GnLI^wh5}UZUIgE3Iv5J-d6rU7}0P?cstm8oEM;%0f7 Ghs*#xxJ#k{ delta 235 zcmZp0XmFU&!4hlUyJKU|13>|eq}=@iFE)Ai3$wpvU4Q!J<{BX_CJiGq!xUrVWD83p zQ$zD)6C+~_bJG+xwHv5RRu=*P@m@ybKq%ar* zVKRdSgC&CzgDFtN9LO^PvW;W4 GAu|BpHbo!+ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index a10c8d326f7c296eb6af3bd0594a9704b9fe1e89..0f6b2e083cfef4ae519185beff5dcd3a011986c6 100644 GIT binary patch delta 235 zcmZoLX)u}4!7}OefyoFMvYV>6GQXFR7*39 zl%!C~nGN43swn(jc{IKwctLr5R9VDwv(P`LdWU FGXU{2OSAw0 delta 235 zcmZoLX)u}4!SZHh+5L?@6+8kD`8N0$$o6_nU+(=c>Z`@|%_6)Vj2cE}hAGCz$rhGI zriSLpCPu~<=B6ozhUR9eMk&T77Kx_G=85Jh#;KE!@Wrs4e-h9!S%p79ptU0Wx8T$* z&Z|4M`Zm~wCQfeQ-=_c-RDKN=1gV}I*<2eh^QOMZJJxe^l7JGMzY&8OgCRo-gE0^$ zGgvTKG8i$K0!7S$JQE<>7${~A6iES!fke$1Qh}l%^(H`>M4(JEP&5&UL1L+!FN^6i F0|03QM?3%k diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 7baeb2d4264c2e82d6f153e37142fa5286e1253f..69c6f701437acf6f286fa3c4e7b9976a16d5630a 100644 GIT binary patch delta 235 zcmZpOXo#55!IJ0l;nc>SBhmsJPx@{s@BQF7tIdIPTjzV1%?UC~nKe?4ObpEvQ!ULb zQj(HQQ7fAGMi-J7+PC~pX)L2A>0yhNx;FgtPcbd5}A E09P7G8~^|S delta 235 zcmZpOXo#55!Q%3JUf0H+BhmsVER{a={Mh8Qn%P5fE<;<}<^-9g%o;{!hAGCz$rhGI zriSLpCPu~<=B6ozhUR9eMk&T77Kx_G=85Jh#;KEa6^^qs#U0%>`G-P)!0dvbw<79{ zoHqXOZkcy|#n;IZiklRmf<}f=L7-}@kf_O9^u8XbI2)$$e6yC49GkxpgBgP%Lkfd2 z5GFHNFjz7eF_;2H%z-=;Aln!yW)2id0g8b{%@|UFq9FAqK$%3KOfpb35r{!zshg*3 HWHJK)SNltd diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index c9bf42677f946ba1d7ebb362154dfe153626108a..dfbe1b9f7c59737bb7c83d7ec111a882eb77d9c7 100644 GIT binary patch delta 254 zcmZoT!_;twX+j4J$EuT;Hum`F3pDyN&X>Q`?X>Pl*!;@#Zjzf{=o_(`q#BtRnkS}O znpvbIC7Y%u8zvi>o0%G08k(9XrWq#!13wG7#VCQPc${yTxS}V z#v)#++&}ro>;Qp%Mj36tb|m|EomUAO zmPV$A=E){T#unzLDTapTW~oLg#wHetrpe}s<|)Rh3=FJ{3``6RPK*q;lP8)QY_2m6 zOJng~9C2gvjoASLfqyo=<-H@~(*MwZ-lF1^RY%M@nZwJMx8_IY zo7xSVU(7kc;%~%Y#$d>h!e9)9$qW_@mJCJ=ra%#MAkPHIHU^5B14UARVjxj7hE$*^ ZNWBSACJ`u;3=~ZSVvtzs=I;wRSpX!zQ9=L! diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index a61bbf1d32fbae6dd44ba5ef615d6238b32c7cfc..d0c1a4336b9fdb247c90edcfbd1bfc51cd36304e 100644 GIT binary patch delta 235 zcmZoDX(*Y{!E*LW)2WR;A({dqjFL>{>l<7*KP+W=bgk;;<`0_gEE=gsCWhvTsg`CI zDM`tusmX@PM&@Rw#+HVr=80*>i9kWK)YO!u#L4k`H(6MCmM@rWqaPq3w`X?p+htc> zIxQwF+#+6MJ9&=&GzF-jiYHVMq?&(O!q*Ak${Z>yI)7{qGRR`}Ph~J-FkvucFlR_) zNM*2OFk`S_NMT4~NM^R FnE^IbONsyh delta 235 zcmZoDX(*Y{!Lq(>LC40P5KVzfo~UE{--^3#t7urqNL6rcgAV~GK)VaO#?L~6_pH0Iz2N`6s`WrErF&HwWFc<@2 zGJ^$!C4&)zDNw{5$TI=5je%n3K#>%n7)aENAr&YJQf~s3Nd(Fy14R>o7$launcM6u FGXU$0N7DcR diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index a6b3ec5e80160f8182890b49c44393eef220fb7e..2c89d47b759f69d75f4cb7e4aa2859f76f3d330a 100644 GIT binary patch delta 235 zcmZqhY4DlQ!J=7`-n+3!Kte$4RoS~q$9&x;q|O#Ru$pbv<~0((m^4z2ObpEvQ!ULb zQj(HQQC~nGN43swn(jc{IKwctLr5R9VDwv(P`Mjbb F3jkm{NFM+I delta 235 zcmZqhY4DlQ!Sd&O_1TR*0uln7B^d5y#`CJiGq!xUrVWD83p zQ$zD)6C+~_bJG+sDL^rhs2M{lP!y!z1SpdTlt~7PCIT@?EOqmF HMMD++)$)>5vhRH_eW~RoLhNk9;X~u~_L9^7reKP*JIKP*ITj3kT=c`c5pl->AG+c6-fwMjaOa zR0bmk69z*DbB08QR0c~1GX@KW6ow>*WCl|pKN%>K3{+tb6gOos2Fe=(X^`49ATJTB S(hR6F70gcD{(UneCkp^vnolJF delta 247 zcmZqpz}E1AZ9)gjKBbLs8hf_(Fn(Yc*x+L%`O0CE>+VaBm(?sNS+c!{gK@@O4I?wd z6l3FL3rizYL-S-4BV!A5(-cEPbF);V6k`*MMAKyRMDrBm)a^dY7-cwEg1&3+nVz$b zF+e~syTUy}>W#~;nNf#MR#-iler6rx1O=#Q2}~5I-o`TfiHaa=VE&JJKG(L_tY_3= z@i$^HV=!b$VK4^5WCjZcO9mqbQ=o`BkY@s98w176fg&kDF_5SkLn=@dq}~K5lL(Ya S28t#EF-RC{XlkCAW}FBVG)qlQNlM(jA;5*1h3#tl_sKtk0|XlSJjzQx zDY|!PF_(QiU3Xz}M93@!s9?DVR1l>4cmGBs_Q<}8$~g{mHw%UCWARUAFk&!aFk~=i zNMuN5uw*b}uwY1GNMcB4Fa`3HfilTJ73M&3QwC$8ydjVVsZ9g&5}_*1fGShL?8MFT HQ4g5`l^#nW delta 238 zcmZqJ!`QHgaY6^n^$3ac8+&fJ3oKpV9ihEri}M!Ym0BGISMxWQc!+Rl7?~NS7#k;B zSQ?ocnkSnW8C#f}rWhKUo24417@JrmnkJhknx`12Zr%{!!ptIbMB~%sAHe|vZ>|RF zNp|>p&AZh3`^}9PhLa;gW+^}gU%>={s*7^}K6+odXN#<0w4>l=q0oIS{zeRD42BFT z48}m1%wWM_$za4_3KTI1@=SniW1yHhP$UH?1`;)6NCk?5)SCch5`i+wK+!}X28pF^ JmXCVK3;>lmO*Q}k diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index fb7b68d80b6920a238fb091b42a70796720e90e1..4f1933c4615d726cdcaef76ab2c37c3c4303f695 100644 GIT binary patch delta 235 zcmZpuXsDRb!4h4Nb!KCahLXUA|Cfz#JdyEQHMLTA65q{Pn~x}cX3bUYIOn+@b&#OxJ}90u`?gta-k3c1?V{&~An+n-3VTVf9aCFk&!aFk~=i zNMuN5uw*b}uwY1GNMcB4Fa`3HfilTJ73M&3QwC$8ydjVVsZ9g&5}_*1fGShL?8MEx HEnS%aG+I#{ delta 235 zcmZpuXsDRb!LnOJXYzX8XNfh7w;DH-h9A#4XeKqgBgP%Lkfd2 z5GFHNFjz7eF_;2H%z-=;Aln!yW)2id0g8b{%@|UFq9FAqK$%3KOfpb35r{!zshf9O Hx-tO(!(B;Z diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index d6c79b9048ce4c3bdd65bb02b39794a7ac09d82d..3a1f75cf059dee02f6281fa6d0b3d9cdffdf0d9c 100644 GIT binary patch delta 263 zcmZpe!rU;0c|r#ZtM;C`8+%%o3Y?mMXoCCh=Z^Ezm#^5&eR|?%g=MSwO;e3b49yc$ zEzK-al9EkRlMR!N%*{-VEe%c06Vr?nfr4hKsVPZ`3=FJ{3``6R4GoM8)sqvujS_Kwxj~@57xcgg-ka`oKOd?Pw87P_v#2~TM&D_VnG6Mjp>r)~C diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 2122a1e4428381d0adb76708a1e6d27b5b4449f1..70e703a355af49f3c578f8624deba70d16d1c897 100644 GIT binary patch delta 260 zcmZp;z}IkrZ$bx)=>@gNjXkYBj9Yt{MAiu`yby4Pqd3>6L&WpN+`kXsZQrntN&0|B zs*#DId19)inMF!cvT16vVX~3AnW?d*p{aRdnsFjf&@44IB`I<<1S-11& zGm9Fq9DdArWxB?E<^X|I>DH>&{V^VG%U(zyjNANcddGa`3I(X>4mPMLNd58?uKyb} z4F8>3SH!bjVF9xMtA8qk5rYYXA%i(XB10;JC4(7*1w#r$5<@bBDUhEGlt~7vFb9g8 gG8hBp4S_UBZ5oi52vunYRGA89CvLA_%G}5V075NS`Tzg` delta 260 zcmZp;z}IkrZ$bwPN5`wPjXkYBj9Yt{MAiw+zkBWC#g}@1`(rn~Vw@12vwg!lCg}qj zMrMX7#>UAOmPV$A=E){T#unzLDTapTW~oLg#wHetrpe}s<|)Rh)8Caai%&0j!pORv zKc89DfF(q3_vPst^O*w#Ca#`ZwR8Pm$4Rm+lJl9h!l!r4XRc6yiavyig490_Q~P+m z?b_qG;3T*03JaJ8SpAI{%oq$AQW%VZFqy%E!IHs Date: Thu, 9 May 2024 22:44:59 +0800 Subject: [PATCH 48/97] Updating readme (#946) * Update README.md * Update README.md * Update ServerSettings.cs --- .../Editor/ServerSettings.cs | 2 +- README.md | 22 +++++++++++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs index 63a628bb7..3bed2b18b 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs @@ -118,7 +118,7 @@ private async void FetchSupportedChains() } // Initializes window - [MenuItem("Window/ChainSafe SDK/Server Settings")] + [MenuItem("Window/ChainSafe SDK/Server Settings", false, 1)] public static void ShowWindow() { // Show existing window instance. If one doesn't exist, make one. diff --git a/README.md b/README.md index 98344b639..c4c6cfd5a 100644 --- a/README.md +++ b/README.md @@ -6,12 +6,30 @@ ## Notices -After **June 15, 2023** all users of the SDK will be required to have their projects registered. Please ensure that you have a valid project ID to avoid any service interruptions by this time. If you need help getting a project ID, we've put together a tutorial to guide you through the process: https://docs.gaming.chainsafe.io/current/project-id-registration. +After **June 15, 2023** all users of the SDK will be required to have their projects registered. Please ensure that you have a valid project ID to avoid any service interruptions by this time. If you need help getting a project ID, we've put together a tutorial to guide you through the process: https://docs.gaming.chainsafe.io/current/getting-started As always, we're here to help, so feel free to message us in ⁠🕹web3unity-gaming-general or ⁠🕹gaming-help if you're stuck and need help! ## Documentation -https://docs.gaming.chainsafe.io/ +You can access the docs here: https://docs.gaming.chainsafe.io/ + +Our codebase is quite easy to use. This is an example of a contract call from the SDK within unity. + +``` +public async void ContractCall() + { + object[] args = + { + Web3Accessor.Web3.Signer.PublicAddress + }; + var data = await Evm.ContractCall(Web3Accessor.Web3, method, abi, contractAddress, args); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"Output: {response}"); + // You can make additional changes after this line + } +``` + +Additional prefab scripts can be found here https://docs.gaming.chainsafe.io/current/prefab-scripts#contract-call ## Support - Need help with web3.unity or found a bug? Be sure to read the documentation above, then review existing issues or create a new one [here](https://github.com/ChainSafe/web3.unity/issues). This is the best way to get help from the ChainSafe Gaming team. From e6cfac4ca045061186e198d4a11ef8c375f0c455 Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Thu, 9 May 2024 14:48:47 +0000 Subject: [PATCH 49/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes 15 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index d21ac4ef544cafa16433dedc6c90d74d1d041611..b23888208ea09f8937e78037ec6edd0884ac37e7 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6?R*V`988+$^c1!A;*Z2k58jmw+^0dr=|l?>SYA$mEthH0vyg@u8! ziJ7H|nQ@|pp_zqwT53|Fp+RDbXE`|EZ&_JZJzsx+@`l_1fvZQ} z$lm-m%e#d`Bp}Z|$9b|q-U0=vp!5-_AW(I@R(HbJSC;OJZmQll-+UoYgVo=ZA(g?9 z!2$>k7>pTA7|a+f!K5)mB2df_$hTlHXGjC8N&<=)0#zk4q%fF*MJ#}H3XqiyRAUNM NX~Ttz1VLN=)6k4gYne;*P5F@L@(#oNHsDsG*3*m zG_y!aN;XYRHcU1$H#0T1G&D6&Ofyad3Yw*+rX(e9-k<)Kl_k%#_R-`Gxd8%2b~khT zc3Hcwf3j)bs@}hxlLhh?C_n|b!UTb;lP=_}s}kNX8pg;ap|<%#o(8LbDuWS&34UcPyhe` diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 8379e5631b8f817459965a9114e62f4816f0f2dc..d1b1312c1a8b48863d5329137c262a78d02c21f4 100644 GIT binary patch delta 234 zcmZqBY0#O_!IHgs?z4?O8k_>G-yIrXP0#b_X>5~n-fot@`3R>ZqlRg!p@oHkv5A?b ziJ5Vtg`t^+d0J{xqM<=zifLM^g=tD!vW2Ocq3L8+?r3I@ANM9Fa|a4+vAAh-?zgwY z0?j#+TSY~JCLiJMQGg06C_n{)iZ6!GJnG1`HE#jCwY2)?0v;7se^Z83215o5AT(ew zW-wteW3U91#tex-F+(8Vg29|24X7#!C}IdymB^67UZqeiNciJ^I7s->Al zN>Z|EYO-Onk-3?vv8AD@d19JzB2dsQH8mwEaWX4+G_zfV(&S|BK!L5hEU)-|(RW?H zBX?fUYA>V7N4R?wpn_lDLj{3~1CJRzvoH{ptvV?3$a!-Cj|!`QDuWS&34@< F0sx=rN1Ffu diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index edeb920eca5ecb9fd5934ce78b6ee4dd42d3d500..1e935c2823a2586158a8467626f0b03a40ff9cd8 100644 GIT binary patch delta 236 zcmZq3X~>z-!Q$h6;`YWK9u)zvn!MS{4l?d7!FRj&lrL-Dyh7ywi-u{cp@oHkv5A?b ziJ5Vtg`t^+d0J{xqM<=zifLM^g=tD!vW2Ocq3PxcnjMTR^S3Y_o-CssAaMFcq0C1A z&o1+>Sw+cLOZ!c((e6=z3WmT0L8=ROY&`c={%M$9*0t`<8ag?w{-zA642BFAKxn{V z%wWP`#$X91jTsVwVunDz1%o+58cz-!E$6?^T&-nJSqY;e?9Ysp3m{0oaggTNqFhi%_~$6uxO+jnHZWUrdpa= zq$DMqrY0LE8=0G#8e1BgnkS|iCjte{Qd3is5;srK>|kW!Hc0w7Sw=fRz&Lc;>`g9R z9xIb87Ep8npv2qr6wgB8YHHerlne#rlciXn3@@yPF^!#b94XPqg*UHCuTpL9I+xm zATnX*_bYfvOT2QW#9ZA{Ib81;|PU RsxbwsG-NQ{ynC%H69742Q33z} delta 242 zcmZp8z|`=7X+j4}p!Ahz8+$?~2*`__V(J!r?!0K@X5+YBU;8(InBd2wk!oaOXr7pA zX=agbxHQFA^##Z~3d%DNAmeZ*Q={Y@EC84MXLfY5-! zn8Ad>jKLC28Z#sU#SDRb3kGwBG@z;^pok$*RU$(QgDF_V0!XI-S;;^(ra+a345pjq IWgapE0C7r1FaQ7m delta 235 zcmZp0XmFU&!P3z?WBtaS2Z91?wulubcXK!`|2mJae2>t>%{4+=Od6?1CWhvTsg`CI zDM`tusmX@PM&@Rw#+HVr=80*>i9kWK)YO!u#L4GGl30%aJJmATL^MDk>EpizP5QBZ zQ~oeDSlu;GnLI^wh5}UZUIgE3Iv5J-d6rU7}0P?cstm8oEM;%0f7 Ghs*#xxJ#k{ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 0f6b2e083cfef4ae519185beff5dcd3a011986c6..25ccea9bdcfff98dfac08c4c981895f75cd74459 100644 GIT binary patch delta 235 zcmZoLX)u}4!Q#BdY4ygQ3Lb$|^_%!KZwtAvtu|U|cw>3NW)a>FMh(+cLkkN7V-qt= z6EovP3qvyt^R(2YL_>qb6w|a+3)7UeWD8R>L(|De_+nV1j5}{lR^bm25Sucg(xIow zWtGi-8FlHoy^~w`_bEUHOI|?*fvThU%vPOWvR(SusxN-WHzx@wvH6=aq%s&XSOB2` zgE4~%gBgP*m^5Zc1d15~`4$Z33~4}BNk9=ppsGZM6b4hUhy{>N0kV>TYD|GD4H--~ JUl!A41^^=jL|Xs= delta 235 zcmZoLX)u}4!7}OefyoFMvYV>6GQXFR7*39 zl%!C~nGN43swn(jc{IKwctLr5R9VDwv(P`LdWU FGXU{2OSAw0 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 69c6f701437acf6f286fa3c4e7b9976a16d5630a..90c8ae2afd31c2d1d4aa335bf2512a8f3d063320 100644 GIT binary patch delta 235 zcmZpOXo#55!LoYihNl~Qjz|k+$4u*9US{I7Z-vI==tt){HYdm|W!5lFHMFoWFg7u> zG%+(yv@kTYFi%TON;EV`OfgMMwJ=RdOSUjIGc=v7t8ko!_1D_flYb}#2)G43^?hH^ zrhCo$`3@HqzU=a%-odRSf1J#%URT?sw KZl11@$qWF3E=^nj delta 235 zcmZpOXo#55!IJ0l;nc>SBhmsJPx@{s@BQF7tIdIPTjzV1%?UC~nKe?4ObpEvQ!ULb zQj(HQQ7fAGMi-J7+PC~pX)L2A>0yhNx;FgtPcbd5}A E09P7G8~^|S diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index dfbe1b9f7c59737bb7c83d7ec111a882eb77d9c7..8d15114f7052785ac368d2d6bdfb7331dd0576ac 100644 GIT binary patch delta 254 zcmZoT!_;twX+j6fH`4{HHum`F3rM;x^EF|;;l8tPy71%Wd$wM=$Vw!4bVPRlw zVrFS#W}IkYXl7xamYS4kXpopo8Bj=%rpz0YKeITIA1g6lM)f*{rG`a8IlBUpYU z@2#4#`NfmgV9a2`V8&nxCXE>qfntV0z6FChLmE(35>Uhts49^m dg~1doVgaO6fUIPo8dIQ3Lk82$-xqSS0041kQAYp( delta 254 zcmZoT!_;twX+j4J$EuT;Hum`F3pDyN&X>Q`?X>Pl*!;@#Zjzf{=o_(`q#BtRnkS}O znpvbIC7Y%u8zvi>o0%G08k(9XrWq#!13wG7#VCQPc${yTxS}V z#v)#++&}ro>;Qp%Mj36tb|m|Eom{>l<7*KP+W=bgk;;<`0_gEE=gsCWhvTsg`CI zDM`tusmX@PM&@Rw#+HVr=80*>i9kWK)YO!u#L4k`H(6MCmM@rWqaPq3w`X?p+htc> zIxQwF+#+6MJ9&=&GzF-jiYHVMq?&(O!q*Ak${Z>yI)7{qGRR`}Ph~J-FkvucFlR_) zNM*2OFk`S_NMT4~NM^R FnE^IbONsyh diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 2c89d47b759f69d75f4cb7e4aa2859f76f3d330a..3ee7c95084244031eed75e286d32eb6306d477cc 100644 GIT binary patch delta 235 zcmZqhY4DlQ!D1G}GIe8*fP?@;b-lNl>MozjT8l0;`c`^xUL)~~Ny9YN(89vN*u>1z z#LPI+!qCjZJS{aT(a<0<#WXF|!Zal<*}~M!&~)-S=~*mpe|~(NoFfw;5PEoDR+8jB z#}%(KW@^sgIwH=$wWVu-UO&L-d3>hqd(15|1 z!Gyt#!4gawGb94V41s(L26KiqpsFOGh#^o_B0~y;DOkh;NT&c<$v`!xK$V6Jrkl?z H8nOTY9d}5u delta 235 zcmZqhY4DlQ!J=7`-n+3!Kte$4RoS~q$9&x;q|O#Ru$pbv<~0((m^4z2ObpEvQ!ULb zQj(HQQC~nGN43swn(jc{IKwctLr5R9VDwv(P`Mjbb F3jkm{NFM+I diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 2436ddbd1db815d1d7939164698d647249909f43..13348395567460c66c33a4b86c97e3cabfbae772 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f&zw@cfjXhg?7(cKJG|YaW{i|Nucd`E4yR!~%64~Cv!8l{ChH0vy zg@u8!iJ7H|nQ@|pp_zqwT53|Fp+RDbX2{xGj4~W7$I^bTn4Yta zF+gDJWK*}pmzVi3c{TH-mVs{i^fT)iCn!Kg&!<2|LF#!0rXG4ClKDjZo5zmrHR~C5 zSo}>HQW*>xEP&8}!I;5>!HmHYOd2yJ0>uo0d+)$)>5vhRH_eW~RoLhNk9;X~u~_L9^7reKP*JIKP*ITj3kT=c`c5pl->AG+c6-fwMjaOa zR0bmk69z*DbB08QR0c~1GX@KW6ow>*WCl|pKN%>K3{+tb6gOos2Fe=(X^`49ATJTB S(hR6F70gcD{(UneCkp^vnolJF diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index aeb9d480bc5f2562a6571f9479b91b8e2e62d0eb..46818f8344ff01873b73d45ac7b38729642260a7 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6^n^2H8&H}>3c7dZQ%S!SK-KG(&)yK{7IPx`&N#6yHb!!*^%6zG%eM_G$k$B!qm*rbn}J)7iJdY*t2^k{|F8c_$9el zT+%JrsYAikWMC{XlkCAW}FBVG)qlQNlM(jA;5*1h3#tl_sKtk0|XlSJjzQx zDY|!PF_(QiU3Xz}M93@!s9?DVR1l>4cmGBs_Q<}8$~g{mHw%UCWARUAFk&!aFk~=i zNMuN5uw*b}uwY1GNMcB4Fa`3HfilTJ73M&3QwC$8ydjVVsZ9g&5}_*1fGShL?8MFT HQ4g5`l^#nW diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 4f1933c4615d726cdcaef76ab2c37c3c4303f695..2f4cf9052ac7edab0009cef52d315522dca808d8 100644 GIT binary patch delta 236 zcmZpuXsDRb!LoP8z9$=dG?WCi_b=^icoE>%v}CjA zG%+(yv@kTYFi%TON;EV`OfgMMwJ=RdOSUjIGc?_NU;QQ*%V+W1XD0743J`ep{TtV{ zJ~zLn$(w#mQ&TdZEMwfF02S0@f(imv`@A{4-cfU1&!B8EU!i3}+WreF~ZAe{naB?Hx%0#zC^ Lm~P%}>Bb87Ep8npv2qr6wgB8YHHerlne#rlciXn3@@yGBB_*GB7bPG&C?WR8LOqmY+O- zo8RQRT|ApBwq4<1IbJxoX>!2+0D(nGXPPQ nP*oC8#1N<|ks*b_6f9x^q*H*bWS|;Tph`mq)6Lw+zA^&<&rei# delta 263 zcmZpe!rU;0c|r#ZtM;C`8+%%o3Y?mMXoCCh=Z^Ezm#^5&eR|?%g=MSwO;e3b49yc$ zEzK-al9EkRlMR!N%*{-VEe%c06Vr?nfr4hKsVPZ`3=FJ{3``6R4GoM8)sqvubDQU?Tre=nw)8Caai%&0j!pORv zKc89DfaUoew(HY1<}(KfB+Y+4XWIHG_lchmD22C$*-h`5&s?DZ6}=7<1*#8!aZl#| z(?U_dr;N;6+Z7ft3$Xf|GNdvXGFSki0fRAv34FDh(M-x7ROaZe#)g@gNjXkYBj9Yt{MAiu`yby4Pqd3>6L&WpN+`kXsZQrntN&0|B zs*#DId19)inMF!cvT16vVX~3AnW?d*p{aRdnsFjf&@44IB`I<<1S-11& zGm9Fq9DdArWxB?E<^X|I>DH>&{V^VG%U(zyjNANcddGa`3I(X>4mPMLNd58?uKyb} z4F8>3SH!bjVF9xMtA8qk5rYYXA%i(XB10;JC4(7*1w#r$5<@bBDUhEGlt~7vFb9g8 gG8hBp4S_UBZ5oi52vunYRGA89CvLA_%G}5V075NS`Tzg` From 8dcc9ed12ff7455907897f54b3eb26813c7a5442 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Mon, 13 May 2024 21:02:43 +0800 Subject: [PATCH 50/97] IPFS upload fix (#949) * Janky fix * Still janky * Still janky Still janky * Cleanup * Cleanup Cleanup * Abstracting functions * Class cleanup * Class cleanup Class cleanup * marketplace dll * Update .gitignore * Delete Scriptable Objects.meta * Update EditorBuildSettings.asset --- .../Runtime/Scripts/EVM/IPFS/IPFS.cs | 155 ++++- .../Runtime/Scripts/EVM/Token/Evm.cs | 12 +- .../Scripts/Model/IPFSUploadRequestModel.cs | 35 + .../Model/IPFSUploadRequestModel.cs.meta | 3 + .../Runtime/Scripts/Samples/IpfsSample.cs | 25 - .../Scripts/Samples/IpfsSample.cs.meta | 3 - .../Scenes/SampleLogin - WalletConnect.unity | 56 +- .../Scenes/SampleMain.unity | 609 +++++++++++++++++- .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 32 +- .../SampleMain/IPFS.meta} | 2 +- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 84 +++ .../Scenes/SampleMain/IPFS/IPFSCalls.cs.meta | 11 + 12 files changed, 885 insertions(+), 142 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs.meta rename src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/{Scriptable Objects.meta => Scenes/SampleMain/IPFS.meta} (77%) create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs index b0bb27498..e275a6628 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs @@ -1,43 +1,162 @@ +using System; using System.Collections.Generic; using System.Net; +using System.Text; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage.Model; +using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; namespace Web3Unity.Scripts.Library.IPFS { - public class Ipfs + public static class IPFS { - private string _apiKey; + #region Fields + private static readonly string host = "https://api.chainsafe.io"; - [System.Serializable] - public class GetFileInfoResponse + #endregion + + #region Methods + + /// + /// Creates a list of attributes + /// + /// List of display types + /// List of trait types + /// List of trait values + /// List of IPFSUploadRequestModel.Attributes + public static List CreateAttributesList(List display_types, List trait_types, List values) { - [System.Serializable] - public class Content + // Create a list to store attributes + var attributeList = new List(); + for (int i = 0; i < display_types.Count; i++) { - public string cid; + // Create a new instance of Attributes and set its properties + var attribute = new IPFSUploadRequestModel.Attributes + { + Display_types = new List { display_types[i] }, + Trait_types = new List { trait_types[i] }, + Values = new List { values[i] } + }; + // Add the attribute to the list + attributeList.Add(attribute); } - - public Content content; + return attributeList; } - - public Ipfs(string apiKey) + + /// + /// Converts & uploads an image from file to IPFS + /// + /// + /// CID containing an image + public static async Task UploadImage(IPFSUploadRequestModel request) { - _apiKey = apiKey; + try + { + // Upload image from file & convert to byte[] + var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); + if (string.IsNullOrEmpty(imagePath)) return null; + var www = await new WWW("file://" + imagePath); + var imageData = www.texture.EncodeToPNG(); + // Upload metadata with image + var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); + return imageCid; + } + catch (Exception e) + { + Console.WriteLine($"Error uploading image: {e}"); + throw; + } } - - public async Task Upload(string bucketId, string path, string filename, byte[] content, string contentType) + + /// + /// Uploads a metadata file to IPFS + /// + /// IPFSUploadRequestModel + /// CID containing metadata + public static async Task UploadMetaData(IPFSUploadRequestModel request) + { + try + { + var metaDataObj = new IPFSUploadRequestModel + { + Description = request.Description, + External_url = request.External_url, + Image = $"https://ipfs.chainsafe.io/ipfs/{request.Image}", + Name = request.Name, + attributes = request.attributes + }; + // Serialize + var metaData = JsonConvert.SerializeObject(metaDataObj, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); + var data = Encoding.UTF8.GetBytes(metaData); + var cid = await Upload(request.ApiKey, request.BucketId, request.FileNameMetaData, data, "application/octet-stream"); + return cid; + } + catch (Exception e) + { + Console.WriteLine($"Error uploading metadata: {e}"); + throw; + } + } + + /// + /// Converts & uploads an image from file to IPFS + /// + /// IPFSUploadRequestModel + /// CID containing metadata & image + public static async Task UploadImageAndMetadata(IPFSUploadRequestModel request) + { + try + { + // Upload image from file & convert to byte[] + var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); + if (string.IsNullOrEmpty(imagePath)) return null; + var www = await new WWW("file://" + imagePath); + var imageData = www.texture.EncodeToPNG(); + // Upload metadata with image + var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); + var metaDataObj = new IPFSUploadRequestModel + { + Description = request.Description, + External_url = request.External_url, + Image = $"https://ipfs.chainsafe.io/ipfs/{imageCid}", + Name = request.Name, + attributes = request.attributes + }; + // Serialize + var metaData = JsonConvert.SerializeObject(metaDataObj, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); + var data = Encoding.UTF8.GetBytes(metaData); + var cid = await Upload(request.ApiKey, request.BucketId, request.FileNameMetaData, data, "application/octet-stream"); + return cid; + } + catch (Exception e) + { + Console.WriteLine($"Error uploading image & metadata: {e}"); + throw; + } + } + + /// + /// Uploads a file to IPFS + /// + /// Chainsafe API key + /// Chainsafe bucket ID from the dashboard + /// Name of the file being uploaded + /// The data content in bytes + /// The type of content being uploaded + /// The CID of the file uploaded + /// Web request error + private static async Task Upload(string apiKey, string bucketId, string filename, byte[] content, string contentType) { var formUpload = new List { - new MultipartFormDataSection("path=" + path), new MultipartFormFileSection("file", content, filename, contentType) }; using var requestUpload = UnityWebRequest.Post(host + "/api/v1/bucket/" + bucketId + "/upload", formUpload); - requestUpload.SetRequestHeader("Authorization", "Bearer " + _apiKey); + requestUpload.SetRequestHeader("Authorization", "Bearer " + apiKey); await requestUpload.SendWebRequest(); if (requestUpload.result != UnityWebRequest.Result.Success) @@ -49,7 +168,7 @@ public async Task Upload(string bucketId, string path, string filename, var jsonFile = "{\"path\": \"" + filename + "\", \"source\": \"" + bucketId + "\"}"; using var requestFile = new UnityWebRequest(host + "/api/v1/bucket/" + bucketId + "/file", "POST"); - requestFile.SetRequestHeader("Authorization", "Bearer " + _apiKey); + requestFile.SetRequestHeader("Authorization", "Bearer " + apiKey); requestFile.SetRequestHeader("Content-Type", "application/json"); requestFile.uploadHandler = new UploadHandlerRaw(new System.Text.UTF8Encoding().GetBytes(jsonFile)); requestFile.downloadHandler = new DownloadHandlerBuffer(); @@ -63,5 +182,7 @@ public async Task Upload(string bucketId, string path, string filename, var data = JsonUtility.FromJson(requestFile.downloadHandler.text); return data.content.cid; } + + #endregion } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs index 36985b9e9..1ede53ad2 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs @@ -6,7 +6,7 @@ using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using ChainSafe.Gaming.Web3; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Hex.HexTypes; @@ -14,7 +14,6 @@ using Nethereum.Util; using UnityEngine; using Web3Unity.Scripts.Library.IPFS; -using Web3Unity.Scripts.Prefabs; namespace Scripts.EVM.Token { @@ -177,14 +176,5 @@ public static string EcdsaSignMessage(string _privateKey, string _message) string signature = signer.HashAndSign(_message, _privateKey); return signature; } - - // IPFS upload - public static async Task Upload(IpfsUploadRequest request) - { - var rawData = System.Text.Encoding.UTF8.GetBytes(request.Data); - var ipfs = new Ipfs(request.ApiKey); - var cid = await ipfs.Upload(request.BucketId, request.Path, request.Filename, rawData, "application/octet-stream"); - return cid; - } } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs new file mode 100644 index 000000000..6ae5b9635 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs @@ -0,0 +1,35 @@ +using System.Collections.Generic; + +namespace ChainSafe.Gaming.UnityPackage.Model +{ + public class IPFSUploadRequestModel + { + public string ApiKey { get; set; } + public string BucketId { get; set; } + public string FileNameMetaData { get; set; } + public string FileNameImage { get; set; } + public string Description { get; set; } + public string External_url { get; set; } + public string Image { get; set; } + public string Name { get; set; } + public List attributes { get; set; } + + public class Attributes + { + public List Display_types { get; set; } + public List Trait_types { get; set; } + public List Values { get; set; } + } + } + + public class GetFileInfoResponse + { + [System.Serializable] + public class Content + { + public string cid; + } + + public Content content; + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs.meta new file mode 100644 index 000000000..16cb853d7 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 422bfec682e241a180e98b3edb83481d +timeCreated: 1715297132 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs deleted file mode 100644 index e20e2fc4e..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System.Threading.Tasks; -using Web3Unity.Scripts.Library.IPFS; - -namespace Web3Unity.Scripts.Prefabs -{ - public class IpfsUploadRequest - { - public string ApiKey { get; set; } - public string Data { get; set; } - public string BucketId { get; set; } - public string Path { get; set; } - public string Filename { get; set; } - } - - public class IpfsSample - { - public async Task Upload(IpfsUploadRequest request) - { - var rawData = System.Text.Encoding.UTF8.GetBytes(request.Data); - var ipfs = new Ipfs(request.ApiKey); - var cid = await ipfs.Upload(request.BucketId, request.Path, request.Filename, rawData, "application/octet-stream"); - return cid; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs.meta deleted file mode 100644 index 8c8b076f1..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/IpfsSample.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d61a1e7c98424af8b0ed86a6516bbcc0 -timeCreated: 1692280714 \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - WalletConnect.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - WalletConnect.unity index d22b3414f..328c09cab 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - WalletConnect.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - WalletConnect.unity @@ -104,7 +104,7 @@ NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 3 + serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -117,7 +117,7 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - buildHeightMesh: 0 + accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: @@ -154,6 +154,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 920270120} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0.25, y: 1} @@ -230,6 +231,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1701305867} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -361,6 +363,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 920270120} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.25, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -497,6 +500,7 @@ RectTransform: - {fileID: 2126730552} - {fileID: 1491563362} m_Father: {fileID: 1701305867} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -573,6 +577,7 @@ RectTransform: m_Children: - {fileID: 1900245909} m_Father: {fileID: 724612375} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0.25, y: 0.5} @@ -642,13 +647,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 492023254} - serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &492023256 MonoBehaviour: @@ -718,6 +723,7 @@ RectTransform: - {fileID: 787012149} - {fileID: 724612375} m_Father: {fileID: 2036998554} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -797,6 +803,7 @@ RectTransform: - {fileID: 351786045} - {fileID: 1791429089} m_Father: {fileID: 654334440} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -902,6 +909,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1491563362} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -955,7 +963,6 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - serializedVersion: 3 m_TransformParent: {fileID: 654334440} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1055,12 +1062,6 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: - - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - insertIndex: -1 - addedObject: {fileID: 787012152} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &787012149 stripped RectTransform: @@ -1134,6 +1135,7 @@ RectTransform: - {fileID: 23680381} - {fileID: 253290329} m_Father: {fileID: 1880270956} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.725} m_AnchorMax: {x: 1, y: 1} @@ -1166,13 +1168,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1334079840} - serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1334079842 MonoBehaviour: @@ -1249,6 +1251,7 @@ RectTransform: - {fileID: 786896301} - {fileID: 8930114541282302188} m_Father: {fileID: 279245843} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1287,6 +1290,7 @@ RectTransform: m_Children: - {fileID: 2036998554} m_Father: {fileID: 1880270956} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.725} @@ -1365,6 +1369,7 @@ RectTransform: - {fileID: 108583392} - {fileID: 279245843} m_Father: {fileID: 1880270956} + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1415,6 +1420,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 724612375} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.25, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1594,9 +1600,7 @@ Canvas: m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 - m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 25 - m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 @@ -1616,6 +1620,7 @@ RectTransform: - {fileID: 1621534068} - {fileID: 1701305867} m_Father: {fileID: 0} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -1653,6 +1658,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 351786045} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1728,6 +1734,7 @@ RectTransform: m_Children: - {fileID: 654334440} m_Father: {fileID: 1621534068} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -1785,6 +1792,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 279245843} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -1873,17 +1881,9 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 - m_Iso: 200 - m_ShutterSpeed: 0.005 - m_Aperture: 16 - m_FocusDistance: 10 - m_FocalLength: 50 - m_BladeCount: 5 - m_Curvature: {x: 2, y: 11} - m_BarrelClipping: 0.25 - m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -1917,13 +1917,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2132619529} - serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &4374818084218070658 MonoBehaviour: @@ -2111,6 +2111,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 8930114541282302188} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2131,17 +2132,10 @@ RectTransform: m_Children: - {fileID: 8875635999967305692} m_Father: {fileID: 1491563362} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 50} m_Pivot: {x: 0.5, y: 0} ---- !u!1660057539 &9223372036854775807 -SceneRoots: - m_ObjectHideFlags: 0 - m_Roots: - - {fileID: 2132619532} - - {fileID: 492023255} - - {fileID: 1334079841} - - {fileID: 1880270956} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity index 807af1ba3..39fa80006 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity @@ -361,6 +361,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 94b4d6797e7b43ccb4b381dee6898199, type: 3} m_Name: m_EditorClassIdentifier: + accountBalanceOf: 0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2 + toAccount: 0xdD4c825203f97984e7867F11eeCc813A036089D1 --- !u!1 &24448129 GameObject: m_ObjectHideFlags: 0 @@ -390,6 +392,17 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 97d1351707be484c82d2ffcdce1f3aa7, type: 3} m_Name: m_EditorClassIdentifier: + accountBalanceOf: 0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2 + tokenIdOwnerOf: 1 + tokenIdsOwnerOfBatch: + - 4 + - 50 + - 6 + tokenIdUri: 0x01559ae4021a565d5cc4740f1cefa95de8c1fb193949ecd32c337b03047da501 + uriMint: 1 + contractTransfer: 0x358AA13c52544ECCEF6B0ADD0f801012ADAD5eE3 + toAccountTransfer: 0xdD4c825203f97984e7867F11eeCc813A036089D1 + tokenIdTransfer: 0 --- !u!4 &24448131 Transform: m_ObjectHideFlags: 0 @@ -405,6 +418,202 @@ Transform: m_Father: {fileID: 67264514} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &32227533 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 199502202} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 2077011804} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: IPFSUploadImageAndMetadata + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: IPFSCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Upload (2) + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: 'Upload Image & Metadata + +' + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.25 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &32227534 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 32227533} + m_PrefabAsset: {fileID: 0} +--- !u!114 &32227535 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 32227534} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1 &37375164 GameObject: m_ObjectHideFlags: 0 @@ -709,6 +918,7 @@ Transform: - {fileID: 108046415} - {fileID: 626054679} - {fileID: 496534497} + - {fileID: 2077011803} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -955,6 +1165,25 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 85a6ee44e24097943a5a4641d2c7062e, type: 3} m_Name: m_EditorClassIdentifier: + methodSend: addTotal + increaseAmountSend: 1 + methodCall: myTotal + methodArrayGet: getStore + methodArraySend: setStore + stringArraySend: + - 0xFb3aECf08940785D4fB3Ad87cDC6e1Ceb20e9aac + - 0x92d4040e4f3591e60644aaa483821d1bd87001e3 + messageSign: The right man in the wrong place can make all the difference in the + world. + messageSignVerify: A man chooses, a slave obeys. + messageSha: "It\u2019s dangerous to go alone, take this!" + toAddress: 0xdD4c825203f97984e7867F11eeCc813A036089D1 + registeredContractName: CsTestErc20 + ecdsaKey: 0x78dae1a22c7507a4ed30c06172e7614eb168d3546c13856340771e63ad3c0081 + ecdsaMessage: This is a test message + transactionHash: 0x123456789 + chainId: 11155111 + Erc20Account: 0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2 --- !u!1 &128166330 GameObject: m_ObjectHideFlags: 0 @@ -999,6 +1228,17 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 3aacd24d26ec5f74795e403ddba7a46f, type: 3} m_Name: m_EditorClassIdentifier: + accountBalanceOf: 0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2 + tokenIdBalanceOf: 1 + accountsBalanceOfBatch: + - 0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2 + - 0xE51995Cdb3b1c109E0e6E67ab5aB31CDdBB83E4a + tokenIdsBalanceOfBatch: + - 1 + - 2 + tokenIdUri: 1 + toAccountTransfer: 0xdD4c825203f97984e7867F11eeCc813A036089D1 + tokenIdTexture: 0 rawImage: {fileID: 450191116} --- !u!1001 &177765169 PrefabInstance: @@ -1407,7 +1647,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 2077011804} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -1422,7 +1662,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: IPFSUpload + value: IPFSUploadImage objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -1430,7 +1670,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: IPFSCalls, Samples objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -1447,7 +1687,7 @@ PrefabInstance: - target: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: Target value: - objectReference: {fileID: 11500000, guid: d61a1e7c98424af8b0ed86a6516bbcc0, type: 3} + objectReference: {fileID: 11500000, guid: 9a86b695c20675b43ba7a0f0a496749c, type: 3} - target: {fileID: 1196625356310129404, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchoredPosition.x value: 134 @@ -1536,9 +1776,23 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 1438947642840759288, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: -135 + objectReference: {fileID: 0} + - target: {fileID: 2068160274303812336, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: -131 + objectReference: {fileID: 0} - target: {fileID: 2290226172473003671, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_text - value: Upload + value: 'Upload Image + +' + objectReference: {fileID: 0} + - target: {fileID: 2290226172473003671, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_fontSize + value: 18.85 objectReference: {fileID: 0} - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_Name @@ -1546,31 +1800,31 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchorMax.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchorMin.y - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_SizeDelta.x - value: 245 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_SizeDelta.y - value: 50 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchoredPosition.x - value: 122.5 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2597086131278812474, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchoredPosition.y - value: -25 + value: 0 objectReference: {fileID: 0} - target: {fileID: 2966402704676899854, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size @@ -1604,6 +1858,10 @@ PrefabInstance: propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: -0.00036621094 + objectReference: {fileID: 0} - target: {fileID: 3777435202905068912, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_IgnoreLayout value: 0 @@ -1658,15 +1916,40 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_text - value: InterPlanetary File System is a decentralized protocol and network designed - to create a more resilient and distributed method of storing and sharing - data on the internet. It uses a content-addressable system, where files are - identified and retrieved based on their cryptographic hashes rather than - their location. This enables faster and more efficient data retrieval, reduces - reliance on central servers, and promotes greater data availability and censorship - resistance. IPFS aims to revolutionize how information is stored, accessed, - and shared across the internet by creating a peer-to-peer, decentralized - web of content. + value: 'InterPlanetary File System is a decentralized protocol and network + designed to create a more resilient and distributed method of storing and + sharing data on the internet. It uses a content-addressable system, where + files are identified and retrieved based on their cryptographic hashes rather + than their location. This enables faster and more efficient data retrieval. + Our example script will allow you to upload an image from your device and + metadata via the SDK. You can then add these CIDs to the URI fields of your + NFTs to make them dynamic. + + + Please remember to set your API & bucket + keys in the IPFSCalls object in the hierarchy to the left. As you receive + the CID from each call you can visit them in the browser to see their contents + or check the marketplace package to see them deserialized into classes.' + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_fontSize + value: 12.95 + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_margin.w + value: 52.193153 + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_margin.z + value: -2.6824493 + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_VerticalAlignment + value: 512 + objectReference: {fileID: 0} + - target: {fileID: 5575651454046172251, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_HorizontalAlignment + value: 1 objectReference: {fileID: 0} - target: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_Name @@ -1682,7 +1965,15 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 5880704299188231306, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_HorizontalAlignment - value: 2 + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607616083152500082, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607616083152500082, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: -2 objectReference: {fileID: 0} - target: {fileID: 8309710637256427594, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchorMax.y @@ -1704,6 +1995,14 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 8349020101940296388, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.x + value: -129 + objectReference: {fileID: 0} + - target: {fileID: 8349020101940296388, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: -2 + objectReference: {fileID: 0} - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -1735,6 +2034,11 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} m_PrefabInstance: {fileID: 199502200} m_PrefabAsset: {fileID: 0} +--- !u!224 &199502202 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 199502200} + m_PrefabAsset: {fileID: 0} --- !u!114 &199502203 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -2528,7 +2832,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.279476 + m_Size: 0.1924044 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -3289,6 +3593,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} m_Name: m_EditorClassIdentifier: + collectionId721: d588268b-8a5b-486a-8ea1-4122b510d71e + collectionId1155: ebeaaee5-f7c2-4561-abb9-60ba749db7cd + marketplaceId: 4986983b-2bcc-4bb3-b0db-a3448fbdee2b + tokenId: 0 --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -7908,6 +8216,200 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: serviceType: 2 +--- !u!1001 &1133733956 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 199502202} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 2077011804} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: IPFSUploadMetadata + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: IPFSCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Upload (1) + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Upload Metadata + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1133733957 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1133733956} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1133733958 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133733957} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1 &1170271242 GameObject: m_ObjectHideFlags: 0 @@ -12242,6 +12744,67 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 7978786051816279264, guid: 0bece0d54c82072478aba621b52f134f, type: 3} m_PrefabInstance: {fileID: 7978786053810957039} m_PrefabAsset: {fileID: 0} +--- !u!1 &2077011802 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2077011803} + - component: {fileID: 2077011804} + m_Layer: 0 + m_Name: IPFSCalls + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2077011803 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2077011802} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 67264514} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2077011804 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2077011802} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9a86b695c20675b43ba7a0f0a496749c, type: 3} + m_Name: + m_EditorClassIdentifier: + apiKey: Fill In Your API Key From Storage + bucketId: Fill In Your Bucket ID From Storage + fileNameImage: Logo.png + fileNameMetaData: MetaData.json + name: Name of the NFT + description: An NFT description + externalUrl: The URL that appears below your assets image + display_types: + - Stamina + - Boost Number + trait_types: + - Health + - Thunder Power + values: + - 5 + - 20 + imageCID: Enter your image CID from storage or upload call --- !u!1001 &2092108891 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 0f05786df..39fc1b3ef 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -1,20 +1,17 @@ -using System; using System.Collections.Generic; using System.Linq; using System.Numerics; using ChainSafe.Gaming.Evm.Contracts.Extensions; using ChainSafe.Gaming.MultiCall; using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.ABI.FunctionEncoding.Attributes; -using Nethereum.BlockchainProcessing.BlockStorage.Entities; using Nethereum.Contracts.QueryHandlers.MultiCall; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.RPC.Eth.DTOs; using Newtonsoft.Json; using Scripts.EVM.Token; using UnityEngine; -using Web3Unity.Scripts.Prefabs; -using TransactionReceipt = ChainSafe.Gaming.Evm.Transactions.TransactionReceipt; public class EvmCalls : MonoBehaviour { @@ -87,17 +84,6 @@ public class EvmCalls : MonoBehaviour [Header("MutliCall")] [SerializeField] private string Erc20Account = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; - #endregion - - #region IPFS - - [Header("IPFS VALUES")] - [SerializeField] private string apiKey = "YOUR_CHAINSAFE_STORE_API_KEY"; - [SerializeField] private string data = "YOUR_DATA"; - [SerializeField] private string bucketId = "BUCKET_ID"; - [SerializeField] private string path = "/PATH"; - [SerializeField] private string filename = "FILENAME.EXT"; - #endregion #region EventData @@ -334,22 +320,6 @@ public void EcdsaGetAddress() SampleOutputUtil.PrintResult(result, nameof(Evm), nameof(Evm.EcdsaGetAddress)); } - /// - /// Uploads to IPFS - /// - public async void IPFSUpload() - { - var cid = await Evm.Upload(new IpfsUploadRequest - { - ApiKey = apiKey, - Data = data, - BucketId = bucketId, - Path = path, - Filename = filename - }); - SampleOutputUtil.PrintResult(cid, nameof(IpfsSample), nameof(IpfsSample.Upload)); - } - /// /// Makes multiple calls /// diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scriptable Objects.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS.meta similarity index 77% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scriptable Objects.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS.meta index dc7294ade..379f2d5e5 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scriptable Objects.meta +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 705dbcc9b94ae4160a6c90657ec44bc2 +guid: b70d421e7223b8049aaf18e07497da9b folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs new file mode 100644 index 000000000..ab6ad9577 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -0,0 +1,84 @@ +using System.Collections.Generic; +using ChainSafe.Gaming.UnityPackage.Model; +using UnityEngine; +using Web3Unity.Scripts.Library.IPFS; + +public class IPFSCalls : MonoBehaviour +{ + #region Fields + + [Header("IPFS VALUES")] + [SerializeField] private string apiKey = "Fill In Your API Key From Storage"; + [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; + [SerializeField] private string fileNameImage = "Logo.png"; + [SerializeField] private string fileNameMetaData = "MetaData.json"; + [SerializeField] private string name = "Name of the NFT"; + [SerializeField] private string description = "An NFT description"; + [SerializeField] private string externalUrl = "The URL that appears below your assets image"; + [SerializeField] private List display_types = new List { "Stamina", "Boost Number" }; + [SerializeField] private List trait_types = new List { "Health", "Thunder Power" }; + [SerializeField] private List values = new List { "5", "20" }; + [Header("Required for image only upload")] + [SerializeField] private string imageCID = "Enter your image CID from storage or upload call"; + + #endregion + + #region Methods + + /// + /// Uploads an image selected by the user to IPFS + /// + public async void IPFSUploadImage() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiKey, + BucketId = bucketId, + FileNameImage = fileNameImage + }; + var cid = await IPFS.UploadImage(uploadRequest); + Debug.Log($"Image uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + /// + /// Uploads metadata to IPFS + /// + public async void IPFSUploadMetadata() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiKey, + BucketId = bucketId, + Image = imageCID, + FileNameMetaData = fileNameMetaData, + Name = name, + Description = description, + External_url = externalUrl, + attributes = IPFS.CreateAttributesList(display_types, trait_types, values) + }; + var cid = await IPFS.UploadMetaData(uploadRequest); + Debug.Log($"Metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + /// + /// Uploads an image selected by the user including metadata to IPFS + /// + public async void IPFSUploadImageAndMetadata() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiKey, + BucketId = bucketId, + FileNameImage = fileNameImage, + FileNameMetaData = fileNameMetaData, + Name = name, + Description = description, + External_url = externalUrl, + attributes = IPFS.CreateAttributesList(display_types, trait_types, values) + }; + var cid = await IPFS.UploadImageAndMetadata(uploadRequest); + Debug.Log($"Image & metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + #endregion +} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta new file mode 100644 index 000000000..dfa434674 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9a86b695c20675b43ba7a0f0a496749c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From 8a24bba1a6085939528e85f36543afb8419e8fbc Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Mon, 13 May 2024 13:07:12 +0000 Subject: [PATCH 51/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes .../Scenes/SampleLogin - WalletConnect.unity | 56 +- .../Web3.Unity/Scenes/SampleMain.unity | 609 +++++++++++++++++- .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 32 +- .../SampleMain/IPFS.meta} | 2 +- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 84 +++ .../Scenes/SampleMain/IPFS/IPFSCalls.cs.meta | 11 + 21 files changed, 708 insertions(+), 86 deletions(-) rename Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/{Scriptable Objects.meta => Scenes/SampleMain/IPFS.meta} (77%) create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index b23888208ea09f8937e78037ec6edd0884ac37e7..8471a660d53e12a437b57578778c676a73f4d46b 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@+_0gKO8+$^c1z7U8smZ^n_np=8RE{s>oZsdT(aX6tEK-t_EmKnr zjndN0O-xNK4a_Yp&C^Uxl8jT6jLa+yjg!q2O-)RUHt$b=%gU0yq<;S74Y>gVW=m)P zDed0ivgFxEmu|sBxswI*7AQakpQu0ufvV*#*RUL{-I^wNY?fB)<_mcmto{}ZDGbR# zXvvTYWEnCTF{A;ZIfDsSYA$mEthH0vyg@u8! ziJ7H|nQ@|pp_zqwT53|Fp+RDbXE`|EZ&_JZJzsx+@`l_1fvZQ} z$lm-m%e#d`Bp}Z|$9b|q-U0=vp!5-_AW(I@R(HbJSC;OJZmQll-+UoYgVo=ZA(g?9 z!2$>k7>pTA7|a+f!K5)mB2df_$hTlHXGjC8N&<=)0#zk4q%fF*MJ#}H3XqiyRAUNM NX~?oogWHoydds%7G-yIrXP0#b_X>5~n-fot@`3R>ZqlRg!p@oHkv5A?b ziJ5Vtg`t^+d0J{xqM<=zifLM^g=tD!vW2Ocq3L8+?r0W|ANMX!PT>v^*kW@ zhXtB*B)5u+1Wi7|-J<{%R8W8lf>ejkJnG1`HE#jCwY2)?0v;7se^Z83215o5AT(ew zW-wteW3U91#tex-F+(8Vg29|24X7#!C}IdymB^67Uz-!E)W8<@?4S9uksj<#;>5U83*nK$TU+{~l==j0x2R@cd8^|xS1VMqo-ONLY+ z%aFl{Aq@!48B7>VfzXn{0LZog(&j)>Q=n)PgE3HL5>TBPP}~s6O9sj%g5^vYj5a?u Hlw|<`-K$8` delta 235 zcmZq3X~>z-!Q$h6;`YWK9u)zvn!MS{4l?d7!FRj&lrL-Dyh7ywi-u{cp@oHkv5A?b ziJ5Vtg`t^+d0J{xqM<=zifLM^g=tD!vW2Ocq3PxcnjMTR^S3Y_o-CssAaMFcq0C1A z&o1+>Sw+cLOZ!c((e9Cl3WmT0L8=ROY&`c={%M$9*0s&*I=QU=rVObJh71-!Xux31 zV8UR=UPQP*oC8#1N<|ks*b_6f9x^q*H*bWS|;Tph`mq)6I_! GWmy0@S4aK; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index b9c459e10802f9a29c0930fa14c6058dff9f8418..a2444026a0e62b4cdabd2e98bfbedfea46f940b6 100644 GIT binary patch delta 242 zcmZp8z|`=7X+j4}^uP8)8+$?~2rLk`bL4kF>NVkB(!kup(mc)7B*{26$;iyY&^XyV(bUAmX!4r*nw$IQ9_3;=R@1s~a>R-N zf$N#!o4=UFIIq+-vSRWf*{oupA6>6R_Lu>J?C!D=D3x7EdCY@DGbR# zXvvTYWEnCTF{A;ZIfDsb87Ep8npv2qr6wgB8YHHerlne#rlciXn3@@yPF^!#b94XPqg*UHCuTpL9I+xm zATnX*_bYfvOT2QW#9ZA{Ib81;|PU RsxbwsG-NQ{ynC%H69742Q33z} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 8e9ac765a1696c6bb46b690aac8e877c343b18a9..f3d0d3606214303de45bc029bcbea94d39ee980b 100644 GIT binary patch delta 235 zcmZp0XmFU&!Lp+@u4`k@13>}bbq5_5GpzOB^=~J?tdrrs%{4+=Od1v`$;p?78~>Tki2!jKGvmJF#t zmLY=?LmCj8Gng=#0-+^?0g!D0q|Je%ra;jo24kSgB%nGoptvEBmkg9k1k0H)7;To9 HdB_X^y2nac delta 235 zcmZp0XmFU&!NM?I_U6W(2Z90u8Xm$$(+hp~ZOAG-d&Z}6bB&M|lZI)kp@oHkv5A?b ziJ5Vtg`t^+d0J{xqM<=zifLM^g=tD!vW2Ocq3PsvB1tSoc~;9On}`MoG?~xxP`&!s zbC0-o^yJ_xOD9heouL2~bxHQFA^##Z~3d%DNAmeZ*Q={Y@EC84MXLfY5-! zn8Ad>jKLC28Z#sU#SDRb3kGwBG@z;^pok$*RU$(QgDF_V0!XI-S;;^(ra+a345pjq IWgapE0C7r1FaQ7m diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 25ccea9bdcfff98dfac08c4c981895f75cd74459..9e42ef7440dd5e4d7c480005329b77c5aadb19bf 100644 GIT binary patch delta 235 zcmZoLX)u}4!D97Ir*~sd1&=`TrEAB2{PK5b{2MlXZlwOA%_6)Vj2adx$;p8Iz%F+8nc++I z{nzDn{s@?~_T}Uj{(TBi!F)ZaAV~EL>G=7d%{Fr#Q!K9EoFt&c=5N7}!jKGvmJF#t zmLY=?LmCj8Gng=#0-+^?0g!D0q|Je%ra;jo24kSgB%nGoptvEBmkg9k1k0H)7;U~R HrppWfz(Prn delta 235 zcmZoLX)u}4!Q#BdY4ygQ3Lb$|^_%!KZwtAvtu|U|cw>3NW)a>FMh(+cLkkN7V-qt= z6EovP3qvyt^R(2YL_>qb6w|a+3)7UeWD8R>L(|De_+nV1j5}{lR^bm25Sucg(xIow zWtGi-8FlHoy^~w`_bEUHOI|?*fvThU%vPOWvR(SusxN-WHzx@wvH6=aq%s&XSOB2` zgE4~%gBgP*m^5Zc1d15~`4$Z33~4}BNk9=ppsGZM6b4hUhy{>N0kV>TYD|GD4H--~ JUl!A41^^=jL|Xs= diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 90c8ae2afd31c2d1d4aa335bf2512a8f3d063320..a4284dbfc944df6958bc26a57c4cc1f7f0ab5919 100644 GIT binary patch delta 235 zcmZpOXo#55!E(MVdgsQTBhmu*zqmW~JT`aVByp{8ns$le<^-9g%o-Lc$;pi?IrL50) z`Og#P$Xc+O>HFje#Z3xO!F)NWAW(H`7Gt>ytD!=?Lh!TR&00!wZ2lGuDGbR#XvvTY zWEnCTF{A;ZIfDs zG%+(yv@kTYFi%TON;EV`OfgMMwJ=RdOSUjIGc=v7t8ko!_1D_flYb}#2)G43^?hH^ zrhCo$`3@HqzU=a%-odRSf1J#%URT?sw KZl11@$qWF3E=^nj diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 8d15114f7052785ac368d2d6bdfb7331dd0576ac..54ef8b1c5bd019dd3513c658b0409c75f275ba02 100644 GIT binary patch delta 254 zcmZoT!_;twX+j6f)h_9i8+&~81+JzCWZjZVb=dveiGN9>_sPvK^o>|eEK-t_EmKnr zjndN0O-xNK4a_Yp&C^Uxl8jT6jLa+yjg!q2O-)RU7#LU?8JHLtoERBwCr>mr*j#5C zmd3KLGU4Uq8?yrhPKz%HEV<3^*=$-rbMus=a+59QOi+Ld?t}>fRcAgi%G%sErDfCm zGb$aMU(7kc;%~u_!jKGvmJF#tmLY=?LmCj8Gng=#0-+^?0g!D0q|Je%ra;jo24kSg bB%nGoptvEBmkg9k1k0H)7;XN(kdp-f`X^8_ delta 254 zcmZoT!_;twX+j6fH`4{HHum`F3rM;x^EF|;;l8tPy71%Wd$wM=$Vw!4bVPRlw zVrFS#W}IkYXl7xamYS4kXpopo8Bj=%rpz0YKeITIA1g6lM)f*{rG`a8IlBUpYU z@2#4#`NfmgV9a2`V8&nxCXE>qfntV0z6FChLmE(35>Uhts49^m dg~1doVgaO6fUIPo8dIQ3Lk82$-xqSS0041kQAYp( diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 6ba5747739754ef145bcde3954de7f506ae748d6..6eaa24d4715898f2c9499382e32233d0ae4fa94e 100644 GIT binary patch delta 235 zcmZoDX(*Y{!6L=edVgb2h^D}D3AR47JzZXHlHb8~>WV#ffg2I=efMozjT8l0;`c`^xUL)~~Ny9YN(89vN*u>1z z#LPI+!qCjZJS{aT(a<0<#WXF|!Zal<*}~M!&~)-S=~*mpe|~(NoFfw;5PEoDR+8jB z#}%(KW@^sgIwH=$wWVu-UO&L-d3>hqd(15|1 z!Gyt#!4gawGb94V41s(L26KiqpsFOGh#^o_B0~y;DOkh;NT&c<$v`!xK$V6Jrkl?z H8nOTY9d}5u diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 13348395567460c66c33a4b86c97e3cabfbae772..7681221ff8779c91eadfa3f0126763f7c1e4ee2e 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f&+qbkIjXhg?7(cKJ==YT-9rro!x@>{fBHrY@58Hb<7-!7Yut-Tx zwoFYiG)hY|H!(G}G%&ZYG*2@%Nit4NGBUF;G)^{8G&M0X+U~QAQHFzM@tnym({t7_ z1_&(WcwJYfrQkTHC}#f2FP7J*pIOH^K>;eN2onXWXE}Q2)T81W-KUBh)TFo9tY_3= z@wZ?|VMqo-ONLY+%aFl{Aq@!48B7>VfzXn{0LZog(&j)>Q=n)PgE3HL5>TBPP}~s6 UO9sj%g5^vYjJAK@%*e?C0JA?&OaK4? delta 247 zcmZqpz}E1AZ9)f&zw@cfjXhg?7(cKJG|YaW{i|Nucd`E4yR!~%64~Cv!8l{ChH0vy zg@u8!iJ7H|nQ@|pp_zqwT53|Fp+RDbX2{xGj4~W7$I^bTn4Yta zF+gDJWK*}pmzVi3c{TH-mVs{i^fT)iCn!Kg&!<2|LF#!0rXG4ClKDjZo5zmrHR~C5 zSo}>HQW*>xEP&8}!I;5>!HmHYOd2yJ0>uo0dR* zMrmp0CZ?vA2Idx)=4qxTNye#3MrIa<#>wW1rY0svn>PfwFtdC$T5@6XkKh1-gG*~C zlw_ND&T`p5y?({#w8;@6vlO6$JENe2K-B>T0ryJQ1f7@{&UIdXvry_6bLOD41jD4AZ-p5H3f<$F&G0?CIQu%0mTi0ykwwUB3RCZ L!DzF5)I(+ff9Feo delta 238 zcmZqJ!`QHgaY6^n^2H8&H}>3c7dZQ%S!SK-KG(&)yK{7IPx`&N#6yHb!!*^%6zG%eM_G$k$B!qm*rbn}J)7iJdY*t2^k{|F8c_$9el zT+%JrsYAikWMHM!8cG84lG59x5_Y(4FkwjDUKf$D`H0eI77dG( J&ATmKnE;s%OnLwS delta 236 zcmZpuXsDRb!LoP8z9$=dG?WCi_b=^icoE>%v}CjA zG%+(yv@kTYFi%TON;EV`OfgMMwJ=RdOSUjIGc?_NU;QQ*%V+W1XD0743J`ep{TtV{ zJ~zLn$(w#mQ&TdZEMwfF02S0@f(imv`@A{4-cfU1&!B8EU!i3}+WreF~ZAe{naB?Hx%0#zC^ Lm~P%}>BeW#qN$0A5d#A&BLfoyLqh{2L-pjuZu!ac zxA{%3+r_iFV%rrCmXnh!zE2L=A0Qy}c2C(^m#1#)mu&o!TIc*{@`n9W6rh4(`A|Wi z>hkT=Z~Zy0q?VU|Zqbg-DF-50{Vf<$7?Od|k|7nyGGs7fNCQH11``HTAhcvK0J1HB nv^h}J6eya+U<_251XO1R6gLF&l7VuGU^x>8qs`pMzA^&b87Ep8npv2qr6wgB8YHHerlne#rlciXn3@@yGBB_*GB7bPG&C?WR8LOqmY+O- zo8RQRT|ApBwq4<1IbJxoX>!2+0D(nGXPPQ nP*oC8#1N<|ks*b_6f9x^q*H*bWS|;Tph`mq)6Lw+zA^&<&rei# diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index aa927d74f4eabe9a1e579caf57dcda1ca7e7db21..1e0ed06fda6ff7c5a3756bef347e78cc5bc32f5a 100644 GIT binary patch delta 260 zcmZp;z}IkrZ$bylCGoO*jXkYBj9Yt{MAiw+S==>C;FP@2^n2Pbm(+RB-M(QRlk@=% ziF-LI#itiMVPxIT zpU*66z%sqHZSHi9`OEGgl};MJHW@iMF=MuK!h= z_j`>l8%I`f&31(a%mS?b77Qs2$v|kykP2iOG8i$W0iijA34bDQU?Tre=nw)8Caai%&0j!pORv zKc89DfaUoew(HY1<}(KfB+Y+4XWIHG_lchmD22C$*-h`5&s?DZ6}=7<1*#8!aZl#| z(?U_dr;N;6+Z7ft3$Xf|GNdvXGFSki0fRAv34FDh(M-x7ROaZe#)g - /// Uploads to IPFS - ///
- public async void IPFSUpload() - { - var cid = await Evm.Upload(new IpfsUploadRequest - { - ApiKey = apiKey, - Data = data, - BucketId = bucketId, - Path = path, - Filename = filename - }); - SampleOutputUtil.PrintResult(cid, nameof(IpfsSample), nameof(IpfsSample.Upload)); - } - /// /// Makes multiple calls /// diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scriptable Objects.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scriptable Objects.meta rename to Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta index dc7294ade..379f2d5e5 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scriptable Objects.meta +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 705dbcc9b94ae4160a6c90657ec44bc2 +guid: b70d421e7223b8049aaf18e07497da9b folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs new file mode 100644 index 000000000..ab6ad9577 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -0,0 +1,84 @@ +using System.Collections.Generic; +using ChainSafe.Gaming.UnityPackage.Model; +using UnityEngine; +using Web3Unity.Scripts.Library.IPFS; + +public class IPFSCalls : MonoBehaviour +{ + #region Fields + + [Header("IPFS VALUES")] + [SerializeField] private string apiKey = "Fill In Your API Key From Storage"; + [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; + [SerializeField] private string fileNameImage = "Logo.png"; + [SerializeField] private string fileNameMetaData = "MetaData.json"; + [SerializeField] private string name = "Name of the NFT"; + [SerializeField] private string description = "An NFT description"; + [SerializeField] private string externalUrl = "The URL that appears below your assets image"; + [SerializeField] private List display_types = new List { "Stamina", "Boost Number" }; + [SerializeField] private List trait_types = new List { "Health", "Thunder Power" }; + [SerializeField] private List values = new List { "5", "20" }; + [Header("Required for image only upload")] + [SerializeField] private string imageCID = "Enter your image CID from storage or upload call"; + + #endregion + + #region Methods + + /// + /// Uploads an image selected by the user to IPFS + /// + public async void IPFSUploadImage() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiKey, + BucketId = bucketId, + FileNameImage = fileNameImage + }; + var cid = await IPFS.UploadImage(uploadRequest); + Debug.Log($"Image uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + /// + /// Uploads metadata to IPFS + /// + public async void IPFSUploadMetadata() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiKey, + BucketId = bucketId, + Image = imageCID, + FileNameMetaData = fileNameMetaData, + Name = name, + Description = description, + External_url = externalUrl, + attributes = IPFS.CreateAttributesList(display_types, trait_types, values) + }; + var cid = await IPFS.UploadMetaData(uploadRequest); + Debug.Log($"Metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + /// + /// Uploads an image selected by the user including metadata to IPFS + /// + public async void IPFSUploadImageAndMetadata() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiKey, + BucketId = bucketId, + FileNameImage = fileNameImage, + FileNameMetaData = fileNameMetaData, + Name = name, + Description = description, + External_url = externalUrl, + attributes = IPFS.CreateAttributesList(display_types, trait_types, values) + }; + var cid = await IPFS.UploadImageAndMetadata(uploadRequest); + Debug.Log($"Image & metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + #endregion +} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta new file mode 100644 index 000000000..dfa434674 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9a86b695c20675b43ba7a0f0a496749c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From 570037df82499209f9573688d7430dda1067eb02 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Wed, 15 May 2024 00:47:37 +0800 Subject: [PATCH 52/97] Ipfs upload duplicate fix (#954) * Duplicate upload fixed * webgl workaround webgl workaround * Web3Exception --- .../ChainSafe.Gaming.Marketplace.dll.meta | 34 ------------------- .../Runtime/Scripts/EVM/IPFS/IPFS.cs | 18 ++++++++++ .../Scripts/Model/IPFSUploadRequestModel.cs | 18 ++++++++++ .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 8 ++--- 4 files changed, 40 insertions(+), 38 deletions(-) delete mode 100644 Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta deleted file mode 100644 index 64ab4343e..000000000 --- a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 9dc796e51d1e40edbc2a3664283a4fb5 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 1 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: - diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs index e275a6628..acedaac02 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs @@ -1,9 +1,11 @@ using System; using System.Collections.Generic; using System.Net; +using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage.Model; +using ChainSafe.Gaming.Web3; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; @@ -55,11 +57,16 @@ public static async Task UploadImage(IPFSUploadRequestModel request) { try { + // TODO: Fix for webgl + #if UNITY_WEBGL && !UNITY_EDITOR + byte[] imageData = null; + #else // Upload image from file & convert to byte[] var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); if (string.IsNullOrEmpty(imagePath)) return null; var www = await new WWW("file://" + imagePath); var imageData = www.texture.EncodeToPNG(); + #endif // Upload metadata with image var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); return imageCid; @@ -110,11 +117,16 @@ public static async Task UploadImageAndMetadata(IPFSUploadRequestModel r { try { + // TODO: Fix for webgl + #if UNITY_WEBGL && !UNITY_EDITOR + byte[] imageData = null; + #else // Upload image from file & convert to byte[] var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); if (string.IsNullOrEmpty(imagePath)) return null; var www = await new WWW("file://" + imagePath); var imageData = www.texture.EncodeToPNG(); + #endif // Upload metadata with image var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); var metaDataObj = new IPFSUploadRequestModel @@ -163,6 +175,12 @@ private static async Task Upload(string apiKey, string bucketId, string { throw new WebException(requestUpload.error); } + + var uploadResponse = JsonConvert.DeserializeObject(requestUpload.downloadHandler.text); + if (uploadResponse.files_details[0].status == "failed") + { + throw new Web3Exception($"Upload Failed: {uploadResponse.files_details[0].message}"); + } // var jsonFile ="{\"path\": \""+path+"/"+filename+"\", \"source\": \""+bucketId+"\"}"; var jsonFile = "{\"path\": \"" + filename + "\", \"source\": \"" + bucketId + "\"}"; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs index 6ae5b9635..25b4f2e5c 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/IPFSUploadRequestModel.cs @@ -32,4 +32,22 @@ public class Content public Content content; } + + public class FilesDetail + { + public string path { get; set; } + public string cid { get; set; } + public string content_type { get; set; } + public int size { get; set; } + public string status { get; set; } + public int error_code { get; set; } + public string message { get; set; } + public string suggestion { get; set; } + } + + public class Path + { + public string path { get; set; } + public List files_details { get; set; } + } } \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs index ab6ad9577..3100d8eaa 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -8,7 +8,7 @@ public class IPFSCalls : MonoBehaviour #region Fields [Header("IPFS VALUES")] - [SerializeField] private string apiKey = "Fill In Your API Key From Storage"; + [SerializeField] private string apiSecretKey = "Fill In Your API Secret Key From Storage"; [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; [SerializeField] private string fileNameImage = "Logo.png"; [SerializeField] private string fileNameMetaData = "MetaData.json"; @@ -32,7 +32,7 @@ public async void IPFSUploadImage() { var uploadRequest = new IPFSUploadRequestModel { - ApiKey = apiKey, + ApiKey = apiSecretKey, BucketId = bucketId, FileNameImage = fileNameImage }; @@ -47,7 +47,7 @@ public async void IPFSUploadMetadata() { var uploadRequest = new IPFSUploadRequestModel { - ApiKey = apiKey, + ApiKey = apiSecretKey, BucketId = bucketId, Image = imageCID, FileNameMetaData = fileNameMetaData, @@ -67,7 +67,7 @@ public async void IPFSUploadImageAndMetadata() { var uploadRequest = new IPFSUploadRequestModel { - ApiKey = apiKey, + ApiKey = apiSecretKey, BucketId = bucketId, FileNameImage = fileNameImage, FileNameMetaData = fileNameMetaData, From 171fbaf9c356b4de9283cfbd7cdb2ea576c275cb Mon Sep 17 00:00:00 2001 From: juans-chainsafe Date: Tue, 14 May 2024 16:51:01 +0000 Subject: [PATCH 53/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 8 ++++---- 16 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 8471a660d53e12a437b57578778c676a73f4d46b..79df86fccd84c1878cc1038d50b27bd1dc0b38d0 100644 GIT binary patch delta 235 zcmZqpz}WDCaY6@+dXwOUjXfdJ0)b@=SC`tablmur>6_mlH?_?lqL*{4o0=OK7@Mc0 zSs0mES{fNxrdgVr8=F~Jq?nr+8>FNp8XB0HrzRO}-k1K4l_jZ8e$(U)xd8(23f3fu zofh|o delta 235 zcmZqpz}WDCaY6@+_0gKO8+$^c1z7U8smZ^n_np=8RE{s>oZsdT(aX8jEmD$`EmKnr zjndN0O-xNK4a_Yp&C^Uxl8jT6jLa+yjg!q2O-)QT?@NEj%96dLe*WYQxd8%ZOK1Nn z?cU(Bz7`BA49P%f z$&drX$w0Y8u$;+e I*OJ}L06&RMBLDyZ diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 704b07a121f01b2061c2e21ef5922c26b4f1440f..b79e09b1944ad8a009e8cdb12c45698388e805ea 100644 GIT binary patch delta 232 zcmZqBY0#O_!SaBy?Bm8B4NifR%Ra8>dGW-z@9>9{ecH>#Hy`1YWK=gbH!v_ZPf4>d zGO@HYGO$duG&MIiv#>}pH!(IyNl7#`Ff&h0GMLQ59mBHX?U6&1Q@8^J)KXq(K3|^d z-QYFZO!<7w)5%A;dlaC8+6SP5Al0wyPV-z8t9ckLw#9980gno+uPK8$g8>j41L+io zGzJR>BL))&OCU4?idq6iEEzy*j2X;;auz@}=0JI4pj-+NCNdZTS!O`7RE8u5gUt^G Gz-!4jwEynka4kBWe#28qzi=RC^9q#%Eb6A_1_s9FDQOl) zCYF{)29{}-rsl?G78WVyCdLLSDT#ۆ$2AlgeI~iHh%o6TQmeCFnSazTPo730b z?#mVW8;ySQU!Po~-J<{%d=3)?sot2jZpMQRtLC)LJH@qGLnnvT*ObAW!2k%2fpiK( z8iNIc5rYYXB@h|`MJ<6MmJA>@#tddaISZf~bD+F2P%Z@s6B!JFEHj{3Dnk;3!RCjC G@+<(A1xbVe delta 233 zcmZq3X~>z-!E)W8<@?4S9u8mb&em1#AyGH>kI2|SkRL!Hz8+0;m=28B0au2#UYv|;#`dTogFeC$^B||EZ zWyoN}kOqY23?>YwKxoNe0AyPLX>*{cDNrBtC~gSkB?ILW!Ez>>9~#QD F004jANcaE% diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index a2444026a0e62b4cdabd2e98bfbedfea46f940b6..6256cc90e938cdc2a8436d7d189782443304f277 100644 GIT binary patch delta 240 zcmZp8z|`=7X+j4}>(4j4Hui)}5Kwr3`?{uszT1v>CFj0AKeKf6hY5Z>8m8t32FB(o zX%dnlF|uUYF;r-W<1*kHy!N z!JNSW2#tYs3PT!$1%nZT34NVkB(!kup(mc)7B*{26$;iyY&^XyV(bUAmX!4r*nw$IQ9_3;=R@1s~a>R-N zf$N#!o4=UFIIq+-vSRWf*{oupA6>6R_Lu>J?C!D=D3x7EWQ>DDGbR# zXvvTYWEnCTF{A;ZIfDs!8&mQ@)R$0wVJ1_@{?ti5G@r3ZKWM(MK6-RvXQ!s=_vV9sCwgvLNRg&~c> zg29NvguxOBjew$-KoLs@kQ!qKGoYLWP>nfI-WVvC0)&YShCr4XP%M=piNRpAtjuF( E0GJv_3IG5A delta 231 zcmZp0XmFU&!Lp+@u4`k@13`Y@bq5_5GpzOB^=~J?tdrs9Y9VbVb&HhbWXsePL!-1b za}!fjO9OKYOY<~SlO*HRBqK8mL*r!gL{k%!$!A59S^nO7IAgMjXn?>g3-RRS4+~wV zO?`Uhj*+R|gfRuOhA&J3Y^F=Xz FW&ok8Nc#W) delta 231 zcmZoLX)u}4!D97Ir*~sd1&=`TrEAB2{PK5b{2MlXZlwOA%_6)VjOrFC$;pRDYR^|3V#6qE_U~s;Y;=X z*X4Eo2$-~Xax?#a1*llQ9z^UVNbwBm`1zmBHgg?QEUw?2B%s9RYr&AhkPL*D45>ht zA%hV^8W5T@m@t?Ep(TR>kZl2^&4Hq(K+z-yW1z|;pgJ?4xFL|243tX*%b9GxD5lR0 E09boSJ^%m! diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index a4284dbfc944df6958bc26a57c4cc1f7f0ab5919..c1a4e684eab3d95840a069b0a6b1509585b0e9bf 100644 GIT binary patch delta 232 zcmZpOXo#55!J;DbX6447Bhmt92TaY%9lM<8Fa4t~-^tpyIYDMAv%0Cdfq}7kN}7d{ ziKV5Hfn}PdskyP4g++?FiLpUSN}{2GnR#lG!DJnU6D*cI8dE3#PzVsXxWACO)5OSa z@BOB#E}hDnC~655v19dFfpRH8n8;uVWSIfQQW=sM3^q^I H$YurrRgptf delta 232 zcmZpOXo#55!E(MVdgsQTBhmu*zqmW~JT`aVByp{8ns$le<^-9g%<2{?$;prX$w0Y8u$;-}sT$eL E0605D>Hq)$ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 54ef8b1c5bd019dd3513c658b0409c75f275ba02..c0ef5845e9c6542aac65d8a2838814da1416ec73 100644 GIT binary patch delta 235 zcmZoT!_;twX+j5!&C*pZ8+&~81)d*kuP+z&cI)`Eeof^6qWPO&=o_)Bo0=OK7@Mc0 zSs0mES{fNxrdgVr8=F~Jq?nr+8>FNp8XB0HrzRO}b~K%w#&Tu8{<6t8W(Np3cgro! zJ9o!xyHCnXr^zcbCtJ*!pa2!j`VJKYs#as$_Up0Bt=biz-`ria`NfpQ97%YL%2q0OKuBWdHyG delta 235 zcmZoT!_;twX+j6f)h_9i8+&~81+JzCWZjZVb=dveiGN9>_sPvK^o>~6EmD$`EmKnr zjndN0O-xNK4a_Yp&C^Uxl8jT6jLa+yjg!q2O-)QTJDN^TW7$`k@N)8v*#QEl#TNvY z+~)UeHm#qzdCF0_$rf`aC_n{w!UTb;GoKh`ZEl;=vg!R9m5$9X<{V)0wO~kLNCrYn zhEyQSkim!{4G7H{Oc+do(2~Ib$hH8|=0H(XplA|00qZQt^fc4 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 6eaa24d4715898f2c9499382e32233d0ae4fa94e..20e52cc3dc7fb896365f53c9161b7eed2de83ec3 100644 GIT binary patch delta 232 zcmZoDX(*Y{!4fdLc*Dk?5KV#quG;JpZ!S7dbKzTLS-bVw<`0_gEb6A_1_s9FDQOl) zCYF{)29{}-rsl?G78WVyCdLLSDT#ۆ$29x9TZn0dKoOyGyjedYYR91CxhQLg} z#h(KDzFN#{o;*i?ngUetA50LaIx^?uZ+}y^bvyqD$Y*R0GRR`}HDxeoFaSbhAf3XH z#$dr<#9+c;34}&KQA?nRB?Cx}F@qUU&H|{$94K!LluH4^LZzDK11 delta 232 zcmZoDX(*Y{!6L=edVgb2h^D}D3AR47JzZXHlHbwTW zzN4#uq?fG>oIFQ=ngUcXiw`OYR2?Yuq5QsI)1{})U9Su_2N`6s`dTogFeC$^B||EZ zWyoN}kOqY23?>YwKxoNe0AyPLX>*{cDNrBtC~gSkB?ILW!Ez>>InBN^ F0|48cOn(3X diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index cc3ffae587931c836d476dbfc86254866bba9615..1b29d706e56ebfa053eaa61f93a67012510cd9be 100644 GIT binary patch delta 232 zcmZqhY4DlQ!BX{C^Yg|Y0SSS_k0kn+X;!%IH;d@I`e7OC<~0((nAA7GF~aa|Qz-GzQWs z3~3A&3`Ptl431QfLdidZs$)EG0E0p%=!YRrN1#z46gAWUR11hUM4VyO&C37GDd76ozCVv}8yH zvJ4rF7}9{yoWX>_6bLOD41jD4AZ-p5H3f<$F&G0?CIQu%0mTi0ykwwUB3RC3^I1h> F767$wN_YSO diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 7681221ff8779c91eadfa3f0126763f7c1e4ee2e..d40202e6b894349c4c2dc1bfcf85a259a9c2df97 100644 GIT binary patch delta 244 zcmZqpz}E1AZ9)gjB&X_CjXhg?7(cKJMCBCLH>}*?y6!f|>)PMH4sP$^V4N{m-PGK` zz}P$`&BDmU($dJlGR@M|+}O;*BE{Uq*dQe((a^xmJT=K+yZ16iSq_#jqHpF+&soP9 zATT5H%Zs{;+Wspg&aJz?;zP>xGwT>9C_qK$XF^4R>g7DoGk^N|>frb9&r)7*uUXHi z!{TeoV9sCwgvLNRg&~c>g29NvguxOBjew$-KoLs@kQ!qKGoYLWP>nfI-WVvC0)&YS VhCr4XP%M=piNRp|*UgOFECAd{fBHrY@58Hb<7-!5?w@67& zwoFYiG)hY|H!(G}G%&ZYG*2@%Nit4NGBUF;G)^{8G&M2V?!AmrmV;&SoXIWIbJj5i z2rT7zU00^1;5er!X8y@9me;4BS;sg*0V=8p69uYgIeO;Qqv9Ifr-~cYq_@|sXVhWw zwO~kLNCrYnhEyQSkim!{4G7H{Oc+do(2~Ib$hH8|=0H(XplA|WPUQdq diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 4263e0344d33820cfc61c6ac6f5360e84148c484..c8c74cdde445425727eaa4634bcadadc9244400e 100644 GIT binary patch delta 235 zcmZqJ!`QHgaY6^nswm}s8+&fJ3xtWN7}QMYbM5@>C>~XARkFFnLxe-!)ZD zbl1J}mcFjz)a~~sM}*8$fC^qe2^9pYj$l!_zI{RU{x3VV<`iuf3f;%zYsz5GU;u>1 zKstpXjlqJ!h{1%x5(tfeqLx4rO9qe{V+J#zoCQ#gIZ)mhD3=0+i42B7mKjhil_812 KV6$x0V`cyt07lmU delta 235 zcmZqJ!`QHgaY6^nWNy2jjXgKq1&oW?&TK5|_L+Oup7pe!$ivMg9wHp-7AeWemZ>R* zMrmp0CZ?vA2Idx)=4qxTNye#3MrIa<#>wW1rY0tv*9W*VvwSsLa$)k1-~fSxOKT^T zWSe--a@jwl0V(tyyM!GysS2rU^5fNTpOZ4MMQ1&Ssy7z0%%0o9oS#SMYHWT0FkSk7d# IY}8|B0I^j|7ytkO diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 5151edb80a908f7a2e93efd2da7345d4035643a3..2cbf8f798828c00631a2dfb1304bc4c0ac1aa634 100644 GIT binary patch delta 233 zcmZpuXsDRb!Sc{iGgaH!v_ZPf4>d zGO@HYGO$duG&MIiv#>}pH!(IyNl7#`Ff&h0GT3}i{T3I?>J^N~C+{%|5SZlfx2@^e z4Tp&?(ogm_w|Y;OF>XHM!8cG84lG59x5_Y(4FkwjDUKf$D`H0eI7Ill1fYWD#PV^M7){{s4i$hgTh$ zvbM=_=el|Km#QdpOy016iUL$n&=M*LR9&CASZWd5yHCZOwVd3WQw~J1`kFGBGZ+A& zF_2DSNMo>IFk&!aumnOQpr|EK#F7D|#+bnjC}#mwV-A!z2Fj%XVIqSekYxrGOJzu6 LFxbp_>^n06;w4E{ delta 235 zcmZpe!rU;0c|r$E)xAGoH}eW#qN$0==8s#WIay9luJ}GVV1Iys%-cO> zXI-AUtzWY7OKP3-pUE5cPf>shhUG&AfvU^5Prvo&xRP34{<%dvHm4kjVD+_NNMT3@ zLQ95JAj^=!h#?IK%^6G>Oo7mn!2rm%0Mh0_QB$C35`!^NWfD-G8Bp91$V&#wC4%Kl KHgg{P&I|zl8dO#Q diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 1e0ed06fda6ff7c5a3756bef347e78cc5bc32f5a..34247dc7f923ba2461d32b5395b67b0ea8edfe14 100644 GIT binary patch delta 258 zcmZp;z}IkrZ$bx)=bM8w8hcuM7`OH?iL4WdPkz6&RpYDIlns}6t-SmF=k^Wjn4}MA zn3@|H7@Mc0Ss0mES{fNxrdgVr8=F~Jq?nr+8>FNp8XB0HrzRN~O@CLyEIz&92_x%v z{(NRp1C|qyzHFSXF`qd=AS+=LgU81Gjx*;j*8TQ#Leun)`OFmxFi}aUC{Vqj&=emv z4u0_|owGjN+ODvGS%B5ol);?A00@nNbP7Wng9U>Tg9(Er5E=nRErBAI3?Mbe3}!$% i3!oZvpu90qE(Hh^84Q6eGoV;1LlT3*_S&V)%}fA+*i{Dr delta 258 zcmZp;z}IkrZ$bylCGoO*jXkYBj9Yt{MAiw+S==>C;FP@2^n2Pbm(+RB-M(QRlk@=% ziF-LI#itiMVPxIT zpU*66z%sqHZSHi9`OEGgl};MJHW@iMF=MuK!h= z_j`>l8%I`f&31(a%mS>w77Qs2$v|kykP2iOG8i$W0iijA34 Date: Wed, 15 May 2024 10:52:10 +0200 Subject: [PATCH 54/97] Fixing ramp popup showing up even tho ramp itself is not being used. (#953) * Fixing ramp popup showing up even tho ramp itself is not being used. * Making a proper placement. * Cleaning the code. * More fixes. * Removed --- .../Runtime/Scripts/RampExchangerUniversal.cs | 4 +++- .../Web3.Unity Ramp Samples/RampSample.cs | 1 - src/UnitySampleProject/Assets/Plugins.meta | 8 +++++++ .../Web3.Unity Ramp Samples/RampSample.cs | 1 - .../DisableGameObjectIfServiceNotActive.cs | 21 ++++++++----------- 5 files changed, 20 insertions(+), 15 deletions(-) create mode 100644 src/UnitySampleProject/Assets/Plugins.meta diff --git a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs index 1b1446933..12d3b4e5d 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs @@ -1,4 +1,6 @@ -using System; +#define RAMP_AVAILABLE + +using System; using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Web3.Core; diff --git a/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs b/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs index 77dae4f12..000f2703e 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs @@ -1,4 +1,3 @@ -#define RAMP_AVAILABLE using ChainSafe.Gaming.Evm.JsonRpc; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.Wallets; diff --git a/src/UnitySampleProject/Assets/Plugins.meta b/src/UnitySampleProject/Assets/Plugins.meta new file mode 100644 index 000000000..d6aee3f43 --- /dev/null +++ b/src/UnitySampleProject/Assets/Plugins.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 417e8c78dd05ca5428a1d30e8ffefc0a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs index d8e1de83b..8f69670fc 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs @@ -1,4 +1,3 @@ -#define RAMP_AVAILABLE using ChainSafe.Gaming.Evm.JsonRpc; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.Wallets; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index 799e1bc5f..d75da834e 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -7,11 +7,9 @@ public enum ServiceType { - #if RAMP_AVAILABLE - Ramp, - #endif - Gelato, - Multicall + Ramp = 0, + Gelato = 1, + Multicall = 2 } public class DisableGameObjectIfServiceNotActive : MonoBehaviour @@ -19,20 +17,19 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour [SerializeField] private ServiceType serviceType; private readonly Dictionary _typesDictionary = new() { - #if RAMP_AVAILABLE +#if RAMP_AVAILABLE {ServiceType.Ramp, typeof(ChainSafe.Gaming.Exchangers.Ramp.IRampExchanger)}, - #endif +#endif {ServiceType.Gelato, typeof(IGelato)}, {ServiceType.Multicall, typeof(IMultiCall)} }; private void Awake() { - if (_typesDictionary.TryGetValue(serviceType, out var value)) - { - gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(value) != null); - } + ShouldGameObjectBeDisabled(); } - + private void ShouldGameObjectBeDisabled() => gameObject.SetActive( + _typesDictionary.TryGetValue(serviceType, out var value) + && Web3Accessor.Web3.ServiceProvider.GetService(value) != null); } \ No newline at end of file From 39a8bfe2932ad399320b1808135191ee5b007cb9 Mon Sep 17 00:00:00 2001 From: kantagara Date: Wed, 15 May 2024 08:56:42 +0000 Subject: [PATCH 55/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes .../DisableGameObjectIfServiceNotActive.cs | 21 ++++++++---------- 16 files changed, 9 insertions(+), 12 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 79df86fccd84c1878cc1038d50b27bd1dc0b38d0..0bd44201aedc5fa42f453c820906a9a5a9e79b83 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@6Y3h@U8+$^c1w21TN>AG9>bU!|L5I@m+=$H|qL*`Pq#0Y7TN;=c zCL3FtC0V2-C7GEdnI{@0S|p_=TUe&0CM6rEBqb&pZ{DB&mX+mw*!Po@H{=Eg=yvrj z?mfT9q1|-1?XxPqo0A3d7AQak8;(N-L8?o(X6_mlH?_?lqL*`Pn3@|H7@Mc0 zSs0mES{fNxrdgVr8=F~Jq?nr+8>FNp8XB0HrzRN~ZQh^$mX#%`PJYwm4Y>gV?+Vr= zh@BSqoqxLhxcqkGos$Lf7AQakYhi*w)kgE5NO$_^9GSb{dd>RH7xFY%{Y@Fn84Q5X z7)Yluq%l}97%`YISOTFDP}CAAV#xqfW6WR%l(PV;F$c;U1LabHFp^|Kbdeyk_#Bb$)NgdDbH(n~!ixGHRq5TbNrKm>4D- zTbdb{CCK*p=<&I`qYdGW-z@9>9{ecH>#Hy`1YWYjPd zGO@HYGO$duG&MIiv#>}pH!(IyNl7#`Ff&h0GBBFV${o$J;_Z<`lT)|@1k_SqXg*(_ z>fPWq*-ZI-%+tw7xO)_!g4ze5f*{qe>rV4r6svg{Ew;sNa{-SEtG_9OIfDTZ8UyJR zhBO8X1|tR&21_6`0*YD!MJyRWYK$4ofN~Zz-!NL_>{%B(lkBUIZOYVb{Rj2qZVvw1BMny$s^9q#%EE;LX7Uq@)CWgtz zmS#y7DM?9YCQ0UrMu`?lsmT_WX{kxc#wkgONyeKeXm&8N1kKf5KUqdQKp^*%ji+!$ zs(+9FvVH#jSFTR3(e6=z3g+`b1wpDa=SC;H-RkADHC>{$Swkm>)jy5Fn8AX)hfK(;|vGL}| HhO#UGUf4$- delta 236 zcmZq3X~>z-!4jwEynka4kBWe#28qzi=RC^9q#%EE=Zf1_s9FDQOl) zCYF{)29{}-rsl?G78WVyCdLLSDT#ۆ$21c7FXm&8Nq?sk$nJl9nAh7H{|2Lw>i_@% diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index 6256cc90e938cdc2a8436d7d189782443304f277..4c3df16d7990437c761a252a64879fb02f41baa0 100644 GIT binary patch delta 242 zcmZp8z|`=7X+j5!$6KlI8+$?~2)JCj`SQ{E7{`6>QkmAr7+-GwFu{*UBhA>t+|t0r zFxlABEXg7zDap(v$vn|0(IP1|*}^g{H7VIRB`Gnj0@t1Y+aOyVtrh0RXAhQtAKz delta 242 zcmZp8z|`=7X+j4}>(4j4Hui)}5Kwr3`?{uszT1v>CFj0AKeKf6hY5Z>8m8t32FB(o zX%dnlF|uUYF;r-W<1*kHz1V z!JNSW2#tYs3PT!$1%nZT34y6G>tzFZtL!*+euzpyK2_m4oL! zJlB^$K7Y9```_d#qB9hrf}HQ6fG+av>I#Hyy4s2*W5-0UOP!s?&KV9a2_V9sF4 zV8CF)V91aRq(HRO*!Q(JNkm^}`%lb+W?)Ht+Wt+R%N34a_-;}|e!2k%2fpiK( z8iNIc5rYYXB@h|`MJ<6MmJA>@#tddaISZf~bD+F2P%Z@s6B!JFEHj{3Dnk;GWwcpd H<{>ix0JTUk diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 13f8d1e6977436c38164f2a961f7ebffcfeb53f7..22ad8a36fcefe5ecb14725b685f123bfc282035e 100644 GIT binary patch delta 235 zcmZoLX)u}4!Lr0q_vFT&3LXJ(Zn3;K=}UaJD*tksTFCTkvj}eoqehysg}J4HiD9y_ zrCE|iN>Y-UNs@V@QKCgsYO;l8T53|VaY|BRlJVptd@(F9mN9Lbtim545Pp@R#=7CA z!wOX)RwuRG^^;rp_bI>xUqA&xsz1$XRStNTkR#~G=)XBhK#9#ijlr0~g29}@lEHw% zgu##@8OXO}Fk?spilzX`Bp}-aNSZSwG8h4|1(2NzRAm8Fl?G%bfpvgXCIYeX=F4Kb F%m59JL}UN} delta 235 zcmZoLX)u}4!E*fStN$B&DtH70zU_}&u`t4S_oub&o-cHwHjD6fFlv~Z8yFayr=(dJ znOIsH8Ca%SnwlG%Sy-f)n;09Uq$C;|n3<<085m7I!WYBhE8VnVvI>8IK+Crto2nDP z92Y-owq!b!^m1|w|2_q%;6<1qNOfax?CzIspQqKmX3^Z7B%s9RZ^~fKU;u>1KstpX zjlqJ!h{1%x5(tfeqLx4rO9qe{V+J#zoCQ#gIZ)mhD3=0+i42B7mKjhil_3epGTMAu HOqUq|3D`4D- zTbdb{CCK*rGRXEPFOUdiao95B`Zbdy6gMeA1-Xww1%aw_4l=IPpa1B%F~jwP+c#?|$+7vTF&HygFqkt~ zG8izJFc>l<1NoK=W(-L{(G(z=1Z0~4Nppro1|uN00J2kosw{x2(txZaunv&QL?AZa JJY6G`835k5OvC^H delta 235 zcmZpOXo#55!J;DbX6447Bhmt92TaY%9lM<8Fa4t~-^tpyIYDMAvxcd;fq}7kN}7d{ ziKV5Hfn}PdskyP4g++?FiLpUSN}{2GnR#lGfzf1Lh2t!iJQ`Cc|4;}JxVXQNxzohR zZSVc2sxF=0b(13$Hz_~`uhl{YfvQFC@?DmnUm4sw>2}zS&00!wZ2qPU<_rcvXbhxN z7}6Ll7>pQ97%YL%2q8^o>|e(u^(4Ee%Wz zlZ`FSk}Oh^lFUq!%oB|gEs|1`EiBVglah^7k`j}Q85md@8JHLtoERBwCr>mr*j#5C zmd4^W``)6-H)aP2EIMNQ*+Aoy!(@l)SyM_Yl_y)wnVFNp8XB0HrzRN~F)*+)GB7bPI59HVPM&CLu({4O zERE&LeEnsUZ_Ex5aPF2{ns@Gw*LI(jmrj#cW=^)4GeH3=nDreh2vn`cw(Zwrms_uqZCLrCv`GclAi$Y-UNs@V@QKCgsYO;l8T53|VaY|BRlJVqty_+m0Hj$er+vo=f6#RI9FS&D< zPZMK%yu^`ZTPM%apQZp6yu$<)1gYM~x9-HGinz%>dd|$7gAB4*{nHqX87vsg87vtL z7)%%p8Ipl~O9nHBB%o*tkW2!yO@O31Ln4C_5L*D*sX$d0Kvii#RuWhTNM#}r8*k<| H`^pReY^O@n delta 235 zcmZoDX(*Y{!4fdLc*Dk?5KV#quG;JpZ!S7dbKzTLS-bVw<`0_gEE=Zf1_s9FDQOl) zCYF{)29{}-rsl?G78WVyCdLLSDT#ۆ$21b+P^=`6Umz;TXvWAM^*3cOXD|RlV<4Tv zkj7xaV8md;UWEpMd IHv7s90DJIA3;+NC diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 1b29d706e56ebfa053eaa61f93a67012510cd9be..c87e08a9696a707911c0f85a6b9f905fc32ea9c3 100644 GIT binary patch delta 235 zcmZqhY4DlQ!J^x+>GsAR0SSSv@8X-}*KPNmb82p%jrI<%&1)onF=?b3TbNrKm>4D- zTbdb{CCK*pYCq0WLtMmBp$vH9s0;hPq%lTIP zbM1&ecwNa;Bzp20nJxu%L7?htht$xTZGG~KR^L%RxVcQ0i^V^U!I;5bkev!tWdT%`24p3Hb%0bR0fS(x9z%S zIIk4Rk?{>uelhusOqT*wusIVd2vp5<`&z_`nM<^uT|M*f&E_&$E*5`N26F}jAT$Qj zDGX^077RuVCJdH9Xap3s1d3QPfYcZ>m;vQ1fNIQv^2R{96d+7wFa)y9fMTf(NkEp- J=JSe%EC8gaN!Zup3>lJvd`kv1h9sb93Xn_!vQ2=bIYT0Y5fEDd*{MKP7C=>L VKvoi12S{Zi5F2m*zL}Ae1pthjO?ChP delta 247 zcmZqpz}E1AZ9)gjB&X_CjXhg?7(cKJMCBCLH>}*?y6!f|>)PMH4sP$^V4N{m!_?fs zz}P$`&BDmU($dJlGR@M|+}O;*BE{Uq*dQe((a^xmJT=L{XuHocMi~y4FQRYeP0v}! z7$7hs^2>|5i`xDxCC;t8zT!j5^fT)iCn!Kg=VwAif$HTv&oh7e`Rd^J@6S?RZ?9R; zsKerK%3#i50EEUsI)x#P!Gghv!GysQ2#tWEmOv3p29O$K1~Z_X1yGGSP~I3QmjZ-| X42D3K8Bi>hAqmJb+WvhrBPR<0!{Sww diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index c8c74cdde445425727eaa4634bcadadc9244400e..2f9d6fdef1d264dc65442382e2e84af55c8f9570 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6?Rk89=bjXgKq1^V_XBukwPaNNFzPfwFtbE4hW1bX5gZ^eC-Y*M z0)L{{g0EeVZ!PeeGC3k-mI73;>j6{{q&n0{@IihMqmV0u#^cRGq5D|;(-@2yEEvog zEExC>~XARkFFnLxe-a)ZD6n#5gZ_(E#g(& z;B?o$^OnA@7$}zlgozA>K$aO$ER`V% M$THe2AN7zK0Ni*-J^%m! diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 2cbf8f798828c00631a2dfb1304bc4c0ac1aa634..0b449f6f633a64b0cca82f7c18bc7eee4c1f62ce 100644 GIT binary patch delta 236 zcmZpuXsDRb!E(3u?evX38cG6(J$?7}t1R`}v2@){Hl`Von~x}cX3$~OiN8lHcm-OOfuelU;QQ*i{b*Y+mrVg1qggzBsh=z z*An-|i|qx^&bHq+S;n|U0bLNNIy$N2nSqF%@=N8@&!jdVFkZvzpT=O!V8LL{V98*> zV8UR?kPPHoGMF(W0Yy`QWD<~V0wm2D5*dtu*aFB-1*)d zGO@HYGO$duG&MIiv#>}pH!(IyNl7#`Ff&h0GBDbFU;QQ*%jy-3$0zSG3J{p&@VBk$ z*bRq?F49l-Hn)0DmN9NofC_#HgbD&xyT|aI5O+y4(0tilym9jZ<29`QrVQo`20&;G zq*EBu7%Ui!7)%%}fzSvjY6%pvWB{o#W-tTFSpe0T1Lci@aw$NV$Y2O$nE}O88Ipi3 Kqs_Z5U6}w5u1h!o diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index fd73b6befd9de18f51f26a29e5112325647cfc6b..fa01ee01fe94360e01f9653f0a3b7528ea537790 100644 GIT binary patch delta 263 zcmZpe!rU;0c|r$^@Y(Jw8+%%o3akr#tzx>-!f*SoY_HZIUypBAShkAaG|kw;+|t0r zFxlABEXg7zDap(v$vn|0(IP1|*}^g{H7VIRB`Gn6i&w*zUvPSJ%7F-0|1<_;1`7sr21^D51``HDhGZb$lEI822`HKZB$I$_ n6Ci2MkjP*J#1=qyDo~XLP*oa`l?2uSQke+E#+$j1ePsp!Z@gQL delta 263 zcmZpe!rU;0c|r%v#+-+{H}%*0}-tLrVQo`20&;Gq*EBu7%Ui!7)%%}fzSvjY6%pvWB{o# nW-tTFSpe0T1Lci@aw$NV$Y2O$nE}O88Ipi3qs`pMzA^&<_pwm; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 34247dc7f923ba2461d32b5395b67b0ea8edfe14..d32d94e2345129a53fc42a97b7e0c33f10d76b35 100644 GIT binary patch delta 260 zcmZp;z}IkrZ$byl_Y?cpHukjkFmCN(5?Lou(lzJm1VdHtIh*_+eP7bgx_!esCg}qj zX~q`jmIfw<$;OsuNfs$dNoFQV=7~m$7D=he7M5wLNy)}3Nr_3u)8Caai%&0j!pORv zKc89DfJMF4ed2VD`OEj0@t1Y+au^-Gx>nE-W!Q>Op` delta 260 zcmZp;z}IkrZ$bx)=bM8w8hcuM7`OH?iL4WdPkz6&RpYDIlns}6t-SmF=k^Wjn4}MA zn3@|H7@Mc0Ss0mES{fNxrdgVr8=F~Jq?nr+8>FNp8XB0HrzRN~O@CLyEIz&92_x%v z{(NRp1C|qyzHFSXF`qd=AS+=LgU81Gjx*;j*8TQ#Leun)`OFmxFi}aUC{Vqj&=emv z4u0_|owGjN+ODvGS%B5wl);?A00@nNbP7Wng9U>Tg9(Er5E=nRErBAI3?Mbe3}!$% j3!oZvpu90qE(Hh^84Q6eGoV;1LlTf>w7q^Qb0ZS~DMM8| diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index 799e1bc5f..d75da834e 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -7,11 +7,9 @@ public enum ServiceType { - #if RAMP_AVAILABLE - Ramp, - #endif - Gelato, - Multicall + Ramp = 0, + Gelato = 1, + Multicall = 2 } public class DisableGameObjectIfServiceNotActive : MonoBehaviour @@ -19,20 +17,19 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour [SerializeField] private ServiceType serviceType; private readonly Dictionary _typesDictionary = new() { - #if RAMP_AVAILABLE +#if RAMP_AVAILABLE {ServiceType.Ramp, typeof(ChainSafe.Gaming.Exchangers.Ramp.IRampExchanger)}, - #endif +#endif {ServiceType.Gelato, typeof(IGelato)}, {ServiceType.Multicall, typeof(IMultiCall)} }; private void Awake() { - if (_typesDictionary.TryGetValue(serviceType, out var value)) - { - gameObject.SetActive(Web3Accessor.Web3.ServiceProvider.GetService(value) != null); - } + ShouldGameObjectBeDisabled(); } - + private void ShouldGameObjectBeDisabled() => gameObject.SetActive( + _typesDictionary.TryGetValue(serviceType, out var value) + && Web3Accessor.Web3.ServiceProvider.GetService(value) != null); } \ No newline at end of file From d7bbcda15e4c5913bb5c70cba820ee4d0a787ea5 Mon Sep 17 00:00:00 2001 From: Robel Getnet Geremew Date: Thu, 16 May 2024 10:35:53 +0300 Subject: [PATCH 56/97] Web3GL templates removed (#956) removed Web3GL templates --- .../{Web3GL-2020x.meta => MetaMask.meta} | 2 +- .../TemplateData.meta | 2 +- .../MetaMask/TemplateData/favicon.ico | Bin 0 -> 2305 bytes .../TemplateData/favicon.ico.meta | 2 +- .../TemplateData/fullscreen-button.png | Bin .../TemplateData/fullscreen-button.png.meta | 2 +- .../TemplateData/progress-bar-empty-dark.png | Bin .../progress-bar-empty-dark.png.meta | 2 +- .../TemplateData/progress-bar-empty-light.png | Bin .../progress-bar-empty-light.png.meta | 2 +- .../TemplateData/progress-bar-full-dark.png | Bin .../progress-bar-full-dark.png.meta | 2 +- .../TemplateData/progress-bar-full-light.png | Bin .../progress-bar-full-light.png.meta | 2 +- .../TemplateData/style.css | 3 +- .../TemplateData/style.css.meta | 2 +- .../MetaMask/TemplateData/unity-logo-dark.png | Bin 0 -> 3042 bytes .../TemplateData/unity-logo-dark.png.meta | 2 +- .../TemplateData/unity-logo-light.png | Bin 0 -> 3077 bytes .../TemplateData/unity-logo-light.png.meta | 2 +- .../MetaMask/TemplateData/webgl-logo.png | Bin 0 -> 2947 bytes .../TemplateData/webgl-logo.png.meta | 2 +- .../{Web3GL-2020x => MetaMask}/index.html | 29 +- .../index.html.meta} | 2 +- .../thumbnail.png | Bin .../MetaMask/thumbnail.png.meta | 7 + .../Web3GL-2020x/TemplateData.meta | 8 - .../Web3GL-2020x/TemplateData/favicon.ico | Bin 13275 -> 0 bytes .../TemplateData/unity-logo-dark.png | Bin 1108 -> 0 bytes .../TemplateData/unity-logo-light.png | Bin 1108 -> 0 bytes .../Web3GL-2020x/TemplateData/webgl-logo.png | Bin 2031 -> 0 bytes .../WebGLTemplates/Web3GL-2020x/assets.meta | 8 - .../assets/Index-5a58a04a-286652f5.js | 73 --- .../assets/Index-5a58a04a-286652f5.js.meta | 7 - .../assets/Index-c6a19500-8864b476.js | 54 -- .../assets/Index-c6a19500-8864b476.js.meta | 7 - .../assets/alphawallet-eb2bedab.js | 23 - .../assets/alphawallet-eb2bedab.js.meta | 7 - .../assets/apexwallet-ea5f0b2c.js | 90 --- .../assets/apexwallet-ea5f0b2c.js.meta | 7 - .../Web3GL-2020x/assets/atoken-f422e6b4.js | 24 - .../assets/atoken-f422e6b4.js.meta | 7 - .../assets/bifrostwallet-b2843d3a.js | 8 - .../assets/bifrostwallet-b2843d3a.js.meta | 7 - .../Web3GL-2020x/assets/binance-aad6707a.js | 11 - .../assets/binance-aad6707a.js.meta | 7 - .../Web3GL-2020x/assets/bitkeep-8077dcef.js | 5 - .../assets/bitkeep-8077dcef.js.meta | 7 - .../Web3GL-2020x/assets/bitpie-8ea44eae.js | 22 - .../assets/bitpie-8ea44eae.js.meta | 7 - .../Web3GL-2020x/assets/bitski-220980c2.js | 1 - .../assets/bitski-220980c2.js.meta | 7 - .../assets/blockwallet-1235c6b8.js | 5 - .../assets/blockwallet-1235c6b8.js.meta | 7 - .../Web3GL-2020x/assets/brave-889178d1.js | 32 -- .../assets/brave-889178d1.js.meta | 7 - .../Web3GL-2020x/assets/coinbase-8194cd0a.js | 6 - .../assets/coinbase-8194cd0a.js.meta | 7 - .../Web3GL-2020x/assets/core-1c42229d.js | 4 - .../Web3GL-2020x/assets/core-1c42229d.js.meta | 7 - .../assets/defiwallet-99978b81.js | 7 - .../assets/defiwallet-99978b81.js.meta | 7 - .../Web3GL-2020x/assets/detected-641a4aef.js | 3 - .../assets/detected-641a4aef.js.meta | 7 - .../Web3GL-2020x/assets/enkrypt-b1f25ae2.js | 17 - .../assets/enkrypt-b1f25ae2.js.meta | 7 - .../Web3GL-2020x/assets/exodus-358b5e9e.js | 1 - .../assets/exodus-358b5e9e.js.meta | 7 - .../Web3GL-2020x/assets/frame-48635667.js | 4 - .../assets/frame-48635667.js.meta | 7 - .../Web3GL-2020x/assets/frontier-035eb74c.js | 5 - .../assets/frontier-035eb74c.js.meta | 7 - .../Web3GL-2020x/assets/gamestop-0e4c1409.js | 7 - .../assets/gamestop-0e4c1409.js.meta | 7 - .../assets/huobiwallet-c6da4601.js | 11 - .../assets/huobiwallet-c6da4601.js.meta | 7 - .../Web3GL-2020x/assets/hyperpay-75c22b59.js | 4 - .../assets/hyperpay-75c22b59.js.meta | 7 - .../Web3GL-2020x/assets/icon-4f874681.js | 7 - .../Web3GL-2020x/assets/icon-4f874681.js.meta | 7 - .../Web3GL-2020x/assets/icon-e08798cb.js | 10 - .../Web3GL-2020x/assets/icon-e08798cb.js.meta | 7 - .../Web3GL-2020x/assets/imtoken-4be0a845.js | 14 - .../assets/imtoken-4be0a845.js.meta | 7 - .../Web3GL-2020x/assets/index-32fe098f.js | 1 - .../assets/index-32fe098f.js.meta | 7 - .../Web3GL-2020x/assets/index-368abf3a.js | 1 - .../assets/index-368abf3a.js.meta | 7 - .../Web3GL-2020x/assets/index-581511fd.js | 1 - .../assets/index-581511fd.js.meta | 7 - .../Web3GL-2020x/assets/index-7d165fbb.js | 1 - .../assets/index-7d165fbb.js.meta | 7 - .../Web3GL-2020x/assets/index-a8ca8229.js | 1 - .../assets/index-a8ca8229.js.meta | 7 - .../Web3GL-2020x/assets/index-b28afd98.js | 403 -------------- .../assets/index-b28afd98.js.meta | 7 - .../Web3GL-2020x/assets/index-f4328d31.js | 522 ------------------ .../assets/index-f4328d31.js.meta | 7 - .../Web3GL-2020x/assets/index-fff385ce.js | 42 -- .../assets/index-fff385ce.js.meta | 7 - .../Web3GL-2020x/assets/liquality-0e245cbb.js | 13 - .../assets/liquality-0e245cbb.js.meta | 7 - .../assets/mathwallet-ff05f48e.js | 47 -- .../assets/mathwallet-ff05f48e.js.meta | 7 - .../Web3GL-2020x/assets/meetone-d2b0ac23.js | 10 - .../assets/meetone-d2b0ac23.js.meta | 7 - .../Web3GL-2020x/assets/merge-7af99d5f.js | 1 - .../assets/merge-7af99d5f.js.meta | 7 - .../Web3GL-2020x/assets/metamask-1c685b94.js | 61 -- .../assets/metamask-1c685b94.js.meta | 7 - .../Web3GL-2020x/assets/mobile-122d5339.js | 1 - .../assets/mobile-122d5339.js.meta | 7 - .../Web3GL-2020x/assets/mykey-4e0c6565.js | 10 - .../assets/mykey-4e0c6565.js.meta | 7 - .../Web3GL-2020x/assets/okxwallet-1c6a2600.js | 5 - .../assets/okxwallet-1c6a2600.js.meta | 7 - .../Web3GL-2020x/assets/oneInch-104b3cc4.js | 69 --- .../assets/oneInch-104b3cc4.js.meta | 7 - .../Web3GL-2020x/assets/opera-02e3a0e8.js | 21 - .../assets/opera-02e3a0e8.js.meta | 7 - .../Web3GL-2020x/assets/ownbit-fa6734bd.js | 15 - .../assets/ownbit-fa6734bd.js.meta | 7 - .../Web3GL-2020x/assets/phantom-9b3bd709.js | 32 -- .../assets/phantom-9b3bd709.js.meta | 7 - .../Web3GL-2020x/assets/rabby-fc161279.js | 24 - .../assets/rabby-fc161279.js.meta | 7 - .../Web3GL-2020x/assets/rainbow-1fe0d81a.js | 66 --- .../assets/rainbow-1fe0d81a.js.meta | 7 - .../Web3GL-2020x/assets/safepal-7fa6b910.js | 102 ---- .../assets/safepal-7fa6b910.js.meta | 7 - .../Web3GL-2020x/assets/sequence-c07eb3ae.js | 67 --- .../assets/sequence-c07eb3ae.js.meta | 7 - .../Web3GL-2020x/assets/skip-2d52d7ac.js | 1 - .../Web3GL-2020x/assets/skip-2d52d7ac.js.meta | 7 - .../Web3GL-2020x/assets/status-049055fb.js | 1 - .../assets/status-049055fb.js.meta | 7 - .../assets/tallywallet-a671320d.js | 13 - .../assets/tallywallet-a671320d.js.meta | 7 - .../Web3GL-2020x/assets/tokenary-f771c254.js | 15 - .../assets/tokenary-f771c254.js.meta | 7 - .../assets/tokenpocket-a7e81129.js | 25 - .../assets/tokenpocket-a7e81129.js.meta | 7 - .../Web3GL-2020x/assets/torus.esm-d09ce5f9.js | 16 - .../assets/torus.esm-d09ce5f9.js.meta | 7 - .../Web3GL-2020x/assets/tp-4b793710.js | 10 - .../Web3GL-2020x/assets/tp-4b793710.js.meta | 7 - .../Web3GL-2020x/assets/trust-59d19f99.js | 8 - .../assets/trust-59d19f99.js.meta | 7 - .../Web3GL-2020x/assets/tslib.es6-c2094241.js | 14 - .../assets/tslib.es6-c2094241.js.meta | 7 - .../Web3GL-2020x/assets/xdefi-07e71929.js | 8 - .../assets/xdefi-07e71929.js.meta | 7 - .../Web3GL-2020x/assets/zeal-8b158173.js | 6 - .../Web3GL-2020x/assets/zeal-8b158173.js.meta | 7 - .../Web3GL-2020x/assets/zerion-d2dfe88d.js | 5 - .../assets/zerion-d2dfe88d.js.meta | 7 - .../Web3GL-2020x/assets/zipWith-29b37a07.js | 1 - .../assets/zipWith-29b37a07.js.meta | 7 - .../Web3GL-2020x/index.html.meta | 7 - .../WebGLTemplates/Web3GL-2020x/network.js | 24 - .../Web3GL-2020x/network.js.meta | 7 - .../WebGLTemplates/Web3GL-MetaMask.meta | 8 - .../WebGLTemplates/Web3GL-MetaMask/LICENSE | 165 ------ .../Web3GL-MetaMask/LICENSE.meta | 7 - .../WebGLTemplates/Web3GL-MetaMask/README.md | 64 --- .../Web3GL-MetaMask/README.md.meta | 7 - .../Web3GL-MetaMask/TemplateData/favicon.ico | Bin 13275 -> 0 bytes .../TemplateData/fullscreen-button.png | Bin 175 -> 0 bytes .../TemplateData/fullscreen-button.png.meta | 135 ----- .../TemplateData/progress-bar-empty-dark.png | Bin 96 -> 0 bytes .../progress-bar-empty-dark.png.meta | 135 ----- .../TemplateData/progress-bar-empty-light.png | Bin 109 -> 0 bytes .../progress-bar-empty-light.png.meta | 135 ----- .../TemplateData/progress-bar-full-dark.png | Bin 74 -> 0 bytes .../progress-bar-full-dark.png.meta | 135 ----- .../TemplateData/progress-bar-full-light.png | Bin 84 -> 0 bytes .../progress-bar-full-light.png.meta | 135 ----- .../Web3GL-MetaMask/TemplateData/style.css | 17 - .../TemplateData/style.css.meta | 7 - .../TemplateData/unity-logo-dark.png | Bin 1108 -> 0 bytes .../TemplateData/unity-logo-dark.png.meta | 135 ----- .../TemplateData/unity-logo-light.png | Bin 1108 -> 0 bytes .../TemplateData/unity-logo-light.png.meta | 135 ----- .../TemplateData/webgl-logo.png | Bin 2031 -> 0 bytes .../TemplateData/webgl-logo.png.meta | 135 ----- .../WebGLTemplates/Web3GL-MetaMask/index.html | 118 ---- .../Web3GL-MetaMask/index.html.meta | 7 - .../WebGLTemplates/Web3GL-MetaMask/network.js | 25 - .../Web3GL-MetaMask/network.js.meta | 7 - .../Web3GL-MetaMask/thumbnail.png.meta | 135 ----- .../WebGLTemplates/Web3GL-MetaMask/web3.meta | 8 - .../Web3GL-MetaMask/web3/index.js | 396 ------------- .../Web3GL-MetaMask/web3/index.js.meta | 7 - .../Web3GL-MetaMask/web3/lib.meta | 8 - .../Web3GL-MetaMask/web3/lib/web3.min.js | 57 -- .../Web3GL-MetaMask/web3/lib/web3.min.js.meta | 7 - .../Web3GL-MetaMask/web3/lib/web3modal.js | 54 -- .../web3/lib/web3modal.js.meta | 7 - 198 files changed, 41 insertions(+), 4797 deletions(-) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x.meta => MetaMask.meta} (77%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-MetaMask => MetaMask}/TemplateData.meta (77%) create mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/favicon.ico rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-MetaMask => MetaMask}/TemplateData/favicon.ico.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/fullscreen-button.png (100%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/fullscreen-button.png.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-empty-dark.png (100%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-empty-dark.png.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-empty-light.png (100%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-empty-light.png.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-full-dark.png (100%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-full-dark.png.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-full-light.png (100%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/progress-bar-full-light.png.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/style.css (89%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/style.css.meta (74%) create mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-dark.png rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/unity-logo-dark.png.meta (74%) create mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-light.png rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/unity-logo-light.png.meta (74%) create mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/webgl-logo.png rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/TemplateData/webgl-logo.png.meta (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x => MetaMask}/index.html (83%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-2020x/TemplateData/favicon.ico.meta => MetaMask/index.html.meta} (74%) rename Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/{Web3GL-MetaMask => MetaMask}/thumbnail.png (100%) create mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/thumbnail.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/favicon.ico delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-dark.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-light.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/webgl-logo.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-5a58a04a-286652f5.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-5a58a04a-286652f5.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-581511fd.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-581511fd.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-7d165fbb.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-7d165fbb.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-a8ca8229.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-a8ca8229.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-b28afd98.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-b28afd98.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/merge-7af99d5f.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/merge-7af99d5f.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/metamask-1c685b94.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/metamask-1c685b94.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/skip-2d52d7ac.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/skip-2d52d7ac.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/status-049055fb.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/status-049055fb.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tallywallet-a671320d.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tallywallet-a671320d.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zipWith-29b37a07.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zipWith-29b37a07.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/index.html.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/network.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/network.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/LICENSE delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/LICENSE.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/favicon.ico delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/fullscreen-button.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/fullscreen-button.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-dark.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-dark.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-light.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-light.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-full-dark.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-full-dark.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-full-light.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-full-light.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/style.css delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/style.css.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-dark.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-dark.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-light.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-light.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/webgl-logo.png delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/webgl-logo.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/index.html delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/index.html.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/thumbnail.png.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3modal.js delete mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3modal.js.meta diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x.meta rename to Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask.meta index 518391f58..5e28b3b1e 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x.meta +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 1242ae82f93d51a4595405d6cce9d2df +guid: b98e49a660b4f314387d7cc2aebcf23a folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData.meta rename to Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData.meta index cb06c2273..f75cdc1c8 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData.meta +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 03ae2ba2e368a214bb4f5ee4ae032ba1 +guid: 58b23f202b1d2af4eacd0e98c15d74c6 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/favicon.ico b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..07db393850608b8752b24045c47c03b19bb35610 GIT binary patch literal 2305 zcmZuzdoue8qXI1=7yYJ~0L<@V<`TTQ0hTIjEuQO(2^^ zl5LOMnpxCWKe%*avh$^l{oq7n#Mamg-*RH7YXUQKPw1(o{qa|%?f-}@PPDT)KE6Bi z*Mk+O3HV3M6pggKPBUR<^PqJ;t@p=#Zsv6j4S-1upLlWk(0G}K2l!1?p{@50gJs>> z*7mTfJM3@@0`YxFV_C@vn(s!aow{JJ2|sG}o#^{C+BY|M9{jr^Ne*HSH2sc^A5uID zjO!DBe-(j;4|87!vyXI$YtY%DB!6G-Zr0yoo=@ZQZctFzddh2woBxc(0tfhV$F-INwIy(41Y8vR5@y405 zS3A3=S2?lU04td7MI3*>=k2EF4edW*P%C#Imx&3HkDKVgDrRWdfF${zLmQ3t2V}zr z<}dlHic|7JN$9Sg1mS3ucr@Ekl7itK$rp@jQqg8b=2pOs6d7exz*Kut+B5{BskIRp zd6b_{?6%FUC)&Lq66WmwE|%tlF5}rpODB4Wa6I|_X)sghAc<-hrtjZ{M$$AhMLO!N zC_|Hol>%|P65Ngda?$c*_rPMD$lM+U9%yn9#m*j`%`5}MK)yLyZh-C~)VNuw*QBcO z%Fm}hL=3n~zEhIRD5Gov88;af6cb=o#%oXu;&W8w;ePR^jMcs4q00AGBuIWSI;Y5Hjgdg$BUWwUX(tZDeCM4Jt@lhKB# z#n~;H($ur{It5sLq4fh%LSWoeL5R7tI(%!=Xak(}ks-R+^<1Fq2pY&;&ro&JtdAWZ zcPQ~--hjdx!!x4#x+{kHpz|i*ckp}o@Ryi&R6E&;s!(LE3U*Qzip{k_FS&~!A(+#w zg&5(gw{x$0girxOZRMLAgMgokJcl}IDre;JE&vbWE5)vAta3HEP=^zSlD_16tLG*wzk~L>%l-hTD&s3b+4U%wS$kGSo)!ooc)P{%Nvl?nR(swV8L3PiFTY<3aEOFafuSdaz4A|M~F zYkv(xKYIuup@ZQ@f`I9VZCDFNpxOz$@eB4Qtc?Rx3xEe(WMJvl!*nBD&8=G0G?0#c zo>qcCFgHMm%j>ru;U_;+@G78)G7XBwhym+OQ{U8r65WTr3SL@%mNB6LzkGABQ>={E z7j9E&L|b@;7y;KZL>U~Eq@X>D(dxjxDaJb2M!tNG(?Hw3cd2vuAy@}xp7Zrw z_W}j%4}STo&me2)`=kpJG7>>hfl3=2Vp}w#GEAdCxQ65t+ck6{hTcG9=vDF|ZHu=f z8zZa97Eop53Ud1-X{_vi62XrG{|miXz3keT-q?S$)bC+(c`@3Q^;5q>vC6mWx-7A+ z;FJ=tYS%t!Cd-{5ubgK^Dgzk0TMRatO1f0+&vYc{gW8ah4i(8@@hn%8lV{zy2W7!( z3odt?_wCXfyB%Ml#skmXCF7i6T%!_0rmPTR1F0bWq^>y~yQ``6IF)}gUueT1H)5sz z!vUPfityf$G|K1g0;as#tXB1t%uoS|2(UX`lNPkPH}P%hl9MXW=yai!UyFJmEl~7b zom!>3yWMJT-!?BeX@(k?@pR4VufbgemN(ijjiF$0f9D2+UrT7%)Tsab+fk zWyZWAXx1v#ye{Bo%h&2Nlt{{!r#s&vBNNQa;vCGMctl9N@vAII`w{_8=a$Nc3Kl59 zfpOJ{7*t=Gq`7*kIeue{W|B=pC>bk0)apv5C{YU0ml$RTsh<4 z&-|W1;6xxE9*aD>XMA4`-@~KLBcecHTv#yoce-$BIINkjpE5I@=#X(>9QC8!KM-7BcwE1EC$vNz=3+`}^5}|ShuDi4->yhY znKjyJcvZhSAJK%gD=1Er5&46v-`c{1bn2|o#F1UmBRA@>tTcHby4@EJw<9?zG``?X ziUrmpJMSiorbh8=U2!#?Iwdr5WLLDwuQWL>DxI#lmQI}znoN_64MitpdQ3xjlp zC22!gV26DD`c=Go_3Dr`q0O+}+uNge@7~d;PoGFL10J)rS`A}B7Qnv;24*|%^7xhF z-%$$(2M6@#%^Q0D{5kFH?2sM~h~6kLa5cOSp& zE|tjV&!2|^gU}#2ofw&d!i)Uy;luC~RniOYP%N+(k5b>fB7op1ZUe$(`G2WkzJ2>f zFJ8PD4t#BbDKZGx3B%}i;lc&Fc<~}lPEJw*boh`2&5utVOzf1h`Dp(WF4sr8$z!)7VxI#krF5SR^~SQeaJsa}vB z5>Z^g6>f(l>7O(fPEz=IEx?Pc$8fjv4b5oE((1KJzcgTR^elZkJsKFx2h$Y<> z;`Z&^T7r#hLfhp?GN{#RnWvHR&@3vrIv*f zHbxF%@3OES@Z(aW(HOR-udc4*TI5~Dq%ERZ(P5hv7G8_R*5NmyH8C-f+WS&=2&|BT zx_f^Bkqc2Q&z+>4wfHv+Y(Ngl-x*b;e!cRm_N zxDG$e@|%@;*;V zSJ8Hb?^NalVgNgYAL?1_H)V(9nL2`9!9Sn%)o4{kWS|leEs3h%*4Nh`viFAO#EA6J zlWB69DoCXwT9TVLZ$4zvp~a`{ZKGgU{LT*i&s7x}sI1TwMc5&y;H_Pemdd5h<51~z zdwY9{Yp)*VN3g*DQRN6WO64P3l55wlJ?3Kl0p*0BqZ35-BSB~*ut;*>3G#EiqQDOX zp#`)Mgci_35L!SBL1+Oj1fd1A5QG-cLJ(R&3oZ$*GMx@77?2}4AvC!4`}_NK3j7UE zabcQkR`#`7kL^NR=24%Xo}RDQ>mi~g;3+PWOYr6~anBz{tGje<721HuEKhdN$_ekl z2}r?V6Pmj$IISn;rNK6#4Ns)wG}&N*EmL4@q~Nfa8Xd$7WEs{7tyZfc^h02+kS4PO z!7(iaxSrqhnJLyV+T-9lTQoSbaru`BxhemIXa10(4acE~bmMBADH zesOoP@`y6Bxw#qf4Z|W|pgAlA=7{*9N;eI?-f$_ym8q$zdwebDar1O=aIlbeJ1ZI8 z`uu#@(633F&=%3MiVP8qg@x7S*dbeOO58ek?p%-m-pb<C;Rr@0A@wny`9iV10dk4uYcN&rpge-sYf>Xh$9bf$^B(a-++l!e%w2*WfCI zx4OFel84nFIxB^?wzf9I;=#ooXJbA5JH*!ZMQ~DJS6E<+d=0wtu#D5dJaFg9lP7=h z|BJ{%tP&d1&)dlPs`QuLaXk_eHX<3f{Z5{GoPD96PeAwoBU z3+Yq}tS;-Y%*QPr!!Vtqe&gpie#Eyip+Nws!(^I_s2rLU*KhZ2^WRh*Ce!4~7iqmY)9F;Z&{Q2p@lk^_qz9|)kc3^)%bO<0MW)l2S?!R#XcgM__V%3u>aeUtJUT4$ zo~d+tj9n3tUTVq?(Vb4U3Jsg6@Iym(Y#2eF!Ku{_$zWHM32rui)4egX_SA`1puFcf z6-1Lqx9oJv(SulA_p;a(1*0|u{K>>lN7~MUIu6upoJw)=jnoYZaAMy4-rn9{awZ}= z?VGs-pff=2^-nyH+`iQGT^}|CTrjz3u2G>WkixQ_=VXF0gk}Xc9rI&_&=h&j1JH>B zLbLAt0;`0kz%&x4vU_By;4BuJwdWUDDKubnI<-+~@|d6BY&~w#TA?YV1ySbgL24`$ zniJ<2ST8h%P4$~4LUZc4MQ1j7!Fd2!Sj=Bqw>Z`S&YfT2Ohij!x_&bi(Of=m(Mh2x zOr=u;LUaDOMW=t6hkGhhQOy?{-C6LPQ&ZBO4x0t=~?HXjQT+(h`Jr0#a~IIwqYS zBecrd6=?}VI|C`W77s+X2!BWjt+IAST7uBVU^JaVXq+P3vb!P(EKn>E9PAKm)Ixzk kAP@)y0)apv5ICFv0X^P^&&+3ly8r+H07*qoM6N<$f*y66+yDRo literal 0 HcmV?d00001 diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-dark.png.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-dark.png.meta similarity index 74% rename from Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-dark.png.meta rename to Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-dark.png.meta index 06e1f2ec8..6cb6c3542 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-dark.png.meta +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-dark.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: fd8cc130a5979ed40a6bbdc53fbfd83e +guid: 0bc95895a1c13714285e6418371483a2 DefaultImporter: externalObjects: {} userData: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-light.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/TemplateData/unity-logo-light.png new file mode 100644 index 0000000000000000000000000000000000000000..9f0ab84b9d5f75c2c2de21c18d382c8d7adff393 GIT binary patch literal 3077 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 t;om0w4+RPos0ZyEUnity WebGL Player | {{{ PRODUCT_NAME }}} - - -
@@ -63,7 +60,9 @@ var config = { dataUrl: buildUrl + "/{{{ DATA_FILENAME }}}", frameworkUrl: buildUrl + "/{{{ FRAMEWORK_FILENAME }}}", +#if USE_WASM codeUrl: buildUrl + "/{{{ CODE_FILENAME }}}", +#endif #if MEMORY_FILENAME memoryUrl: buildUrl + "/{{{ MEMORY_FILENAME }}}", #endif @@ -71,9 +70,9 @@ symbolsUrl: buildUrl + "/{{{ SYMBOLS_FILENAME }}}", #endif streamingAssetsUrl: "StreamingAssets", - companyName: "{{{ COMPANY_NAME }}}", - productName: "{{{ PRODUCT_NAME }}}", - productVersion: "{{{ PRODUCT_VERSION }}}", + companyName: {{{ JSON.stringify(COMPANY_NAME) }}}, + productName: {{{ JSON.stringify(PRODUCT_NAME) }}}, + productVersion: {{{ JSON.stringify(PRODUCT_VERSION) }}}, showBanner: unityShowBanner, }; @@ -85,15 +84,27 @@ // config.matchWebGLToCanvasSize = false; if (/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) { + // Mobile device style: fill the whole browser client area with the game canvas: + + var meta = document.createElement('meta'); + meta.name = 'viewport'; + meta.content = 'width=device-width, height=device-height, initial-scale=1.0, user-scalable=no, shrink-to-fit=yes'; + document.getElementsByTagName('head')[0].appendChild(meta); container.className = "unity-mobile"; - // Avoid draining fillrate performance on mobile devices, - // and default/override low DPI mode on mobile browsers. - config.devicePixelRatio = 1; + canvas.className = "unity-mobile"; + + // To lower canvas resolution on mobile devices to gain some + // performance, uncomment the following line: + // config.devicePixelRatio = 1; + unityShowBanner('WebGL builds are not supported on mobile devices.'); } else { + // Desktop style: Render the game canvas in a window that can be maximized to fullscreen: + canvas.style.width = "{{{ WIDTH }}}px"; canvas.style.height = "{{{ HEIGHT }}}px"; } + #if BACKGROUND_FILENAME canvas.style.background = "url('" + buildUrl + "/{{{ BACKGROUND_FILENAME.replace(/'/g, '%27') }}}') center / cover"; #endif diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/favicon.ico.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/index.html.meta similarity index 74% rename from Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/favicon.ico.meta rename to Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/index.html.meta index c234dbe07..2d4ef28aa 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/favicon.ico.meta +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/index.html.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 385301c25513b104eb56716fee71716d +guid: a67863790fe2d674cbb6a73ff2b3e862 DefaultImporter: externalObjects: {} userData: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/thumbnail.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/thumbnail.png similarity index 100% rename from Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/thumbnail.png rename to Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/thumbnail.png diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/thumbnail.png.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/thumbnail.png.meta new file mode 100644 index 000000000..5a01b3131 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/MetaMask/thumbnail.png.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ceb0a42d83f79844b99a58b49d8d54f5 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData.meta deleted file mode 100644 index 179a72d62..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 281e0a1fe85466842921663f31625fea -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/favicon.ico b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/favicon.ico deleted file mode 100644 index dd6bf7e9cec4d87389fad00e34cd385321d748e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13275 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 b05ANO@4xyR$aLsufT!Qj{e3+6SMUEH(9pSK diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-dark.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-dark.png deleted file mode 100644 index 597665d0c1f04e3e41222718d05827e17253cd11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1108 zcmeAS@N?(olHy`uVBq!ia0vp^vw*mXgBeJ6E>XM;q>KZ6LR^9Le-gp=sgIg~+5}31 z{DK(-6bu{!5(*mn=da&?{{DMqsirOl2Id2vE{-7;ac}3mUUx@9pt+GjQ6=Wy|IFyn zResy=9gz-6Q~LTNeXIMgDSY1yIA<(>9esM&_pg-^de3gvzp4h=krUU#>$kqYq^L1rVd0*&Jv#nv$3EJ< zTWujJz|$WQqCL%1o|w6r>Am9;o7Smu^O$YgRmJRSY`GT|Ur%gr zyRPu~wTYh(1@sNyH;UD_sx{8erWX__Y0Mr9^Qbq4I^iG84c z*_!{xw$0BpPi=TOWymk8hmf z(v}-P((2l$%sL{L=bD+QX}a!&-KuA7kJ4qYbR6&IdT=qWX0laR<$=q|vwtd;YMl7| zKW2UD6s^ySCRfB&e_gDPn z)ZeJ~r5V|$*#Di0AuJfkH z@vqvxk!R_Yf3i$Z1$ORuQowx9;OXk;vd$@?2>{eDBTxVU diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-light.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/TemplateData/unity-logo-light.png deleted file mode 100644 index ad281ab10e41d656484ea07a27b55c09b9ce233c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1108 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.sqrt(u)*120,easing:v=ye}=n;return{delay:c,duration:Ie(d)?d(Math.sqrt(l*l+a*a)):d,easing:v,css:(u,y)=>{const b=y*l,m=y*a,z=u+y*e.width/t.width,j=u+y*e.height/t.height;return`transform: ${r} translate(${b}px, ${m}px) scale(${z}, ${j});`}}}function Ge(i){O(i,"svelte-13cuwwo","div.svelte-13cuwwo{box-sizing:content-box}.border.svelte-13cuwwo{border:2px solid;border-radius:120px;overflow:hidden}")}function Ve(i){let e,t;return{c(){e=h("div"),p(e,"class","border svelte-13cuwwo"),p(e,"style",t=` - width: ${i[2]-i[3]*2}px; - height: ${i[2]-i[3]*2}px; - border-color: var(${i[1]}); - padding: ${i[3]}px; - background-color: ${i[4]}; - border-radius: 50%; - display: flex; - justify-content: center; - `)},m(n,o){_(n,e,o),e.innerHTML=i[0]},p(n,[o]){o&1&&(e.innerHTML=n[0]),o&30&&t!==(t=` - width: ${n[2]-n[3]*2}px; - height: ${n[2]-n[3]*2}px; - border-color: var(${n[1]}); - padding: ${n[3]}px; - background-color: ${n[4]}; - border-radius: 50%; - display: flex; - justify-content: center; - `)&&p(e,"style",t)},i:N,o:N,d(n){n&&C(e)}}}function $e(i,e,t){let{icon:n}=e,{borderColorVar:o}=e,{size:r}=e,{padding:f=0}=e,{background:s="transparent"}=e;return i.$$set=l=>{"icon"in l&&t(0,n=l.icon),"borderColorVar"in l&&t(1,o=l.borderColorVar),"size"in l&&t(2,r=l.size),"padding"in l&&t(3,f=l.padding),"background"in l&&t(4,s=l.background)},[n,o,r,f,s]}class Be extends R{constructor(e){super(),I(this,e,$e,Ve,M,{icon:0,borderColorVar:1,size:2,padding:3,background:4},Ge)}}function qe(i){O(i,"svelte-jvic9v","div.notification-icons-wrapper.svelte-jvic9v{height:32px;width:32px}.border.svelte-jvic9v{border-radius:8px}div.notification-icon.svelte-jvic9v{padding:6px}div.pending-icon.svelte-jvic9v{animation:svelte-jvic9v-blink 2s ease-in infinite;height:100%;width:100%;padding:7px}@keyframes svelte-jvic9v-blink{from,to{opacity:1}50%{opacity:0.2}}div.border-action.svelte-jvic9v{height:32px;min-width:32px;border-radius:8px;overflow:hidden;will-change:transform}div.border-action.svelte-jvic9v:before{content:'';background-image:conic-gradient(#b1b7f2 20deg, #6370e5 120deg);height:140%;width:140%;position:absolute;left:-25%;top:-25%;animation:svelte-jvic9v-rotate 2s infinite linear}div.chain-icon-container.svelte-jvic9v{left:18px;top:18px}@keyframes svelte-jvic9v-rotate{100%{transform:rotate(-360deg)}}")}function ne(i){let e,t,n,o,r=S[i[1].type].eventIcon+"",f,s,l,a=!i[1].id.includes("customNotification")&&!i[1].id.includes("preflight"),c,d=i[1].type==="pending"&&ie(),v=a&&oe(i);return{c(){e=h("div"),d&&d.c(),t=L(),n=h("div"),o=h("div"),l=L(),v&&v.c(),p(o,"class",f=B(`notification-icon flex items-center justify-center ${i[1].type==="pending"?"pending-icon":""}`)+" svelte-jvic9v"),p(n,"class","flex items-center justify-center border relative notification-icons-wrapper svelte-jvic9v"),p(n,"style",s=`background:${S[i[1].type].backgroundColor}; color: ${S[i[1].type].iconColor||""}; ${i[1].type==="pending"?"height: 28px; width: 28px; margin: 2px;":`border: 2px solid ${S[i[1].type].borderColor}`}; `),p(e,"class","relative")},m(u,y){_(u,e,y),d&&d.m(e,null),g(e,t),g(e,n),g(n,o),o.innerHTML=r,g(e,l),v&&v.m(e,null),c=!0},p(u,y){u[1].type==="pending"?d||(d=ie(),d.c(),d.m(e,t)):d&&(d.d(1),d=null),(!c||y&2)&&r!==(r=S[u[1].type].eventIcon+"")&&(o.innerHTML=r),(!c||y&2&&f!==(f=B(`notification-icon flex items-center justify-center ${u[1].type==="pending"?"pending-icon":""}`)+" svelte-jvic9v"))&&p(o,"class",f),(!c||y&2&&s!==(s=`background:${S[u[1].type].backgroundColor}; color: ${S[u[1].type].iconColor||""}; ${u[1].type==="pending"?"height: 28px; width: 28px; margin: 2px;":`border: 2px solid ${S[u[1].type].borderColor}`}; `))&&p(n,"style",s),y&2&&(a=!u[1].id.includes("customNotification")&&!u[1].id.includes("preflight")),a?v?(v.p(u,y),y&2&&w(v,1)):(v=oe(u),v.c(),w(v,1),v.m(e,null)):v&&(G(),T(v,1,1,()=>{v=null}),V())},i(u){c||(w(v),c=!0)},o(u){T(v),c=!1},d(u){u&&C(e),d&&d.d(),v&&v.d()}}}function ie(i){let e;return{c(){e=h("div"),p(e,"class","border-action absolute svelte-jvic9v")},m(t,n){_(t,e,n)},d(t){t&&C(e)}}}function oe(i){let e,t,n;return t=new Be({props:{icon:i[0].icon,size:16,background:i[0].color,borderColorVar:"--notify-onboard-background, var(--onboard-gray-600, var(--gray-600))",padding:3}}),{c(){e=h("div"),D(t.$$.fragment),p(e,"class","absolute chain-icon-container svelte-jvic9v")},m(o,r){_(o,e,r),F(t,e,null),n=!0},p(o,r){const f={};r&1&&(f.icon=o[0].icon),r&1&&(f.background=o[0].color),t.$set(f)},i(o){n||(w(t.$$.fragment,o),n=!0)},o(o){T(t.$$.fragment,o),n=!1},d(o){o&&C(e),A(t)}}}function We(i){let e,t,n=i[1].type&&ne(i);return{c(){n&&n.c(),e=pe()},m(o,r){n&&n.m(o,r),_(o,e,r),t=!0},p(o,[r]){o[1].type?n?(n.p(o,r),r&2&&w(n,1)):(n=ne(o),n.c(),w(n,1),n.m(e.parentNode,e)):n&&(G(),T(n,1,1,()=>{n=null}),V())},i(o){t||(w(n),t=!0)},o(o){T(n),t=!1},d(o){n&&n.d(o),o&&C(e)}}}function Ke(i,e,t){let{chainStyles:n=De}=e,{notification:o}=e;return i.$$set=r=>{"chainStyles"in r&&t(0,n=r.chainStyles),"notification"in r&&t(1,o=r.notification)},[n,o]}class Ye extends R{constructor(e){super(),I(this,e,Ke,We,M,{chainStyles:0,notification:1},qe)}}function Ze(i){O(i,"svelte-pm7idu",`div.svelte-pm7idu{display:flex;justify-content:center;font-size:inherit;font-family:inherit;margin:0 1.5rem 0 0.75rem}span.svelte-pm7idu{font-family:inherit;display:flex;align-items:center;margin:0 2px}.time.svelte-pm7idu{color:var( - --notify-onboard-timer-color, - var(--onboard-gray-300, var(--gray-300)) - );margin-left:4px}`)}function re(i){let e,t,n=i[2](i[1]-i[0])+"",o,r;return{c(){e=E(`- - `),t=h("span"),o=E(n),r=E(` - ago`),p(t,"class","svelte-pm7idu")},m(f,s){_(f,e,s),_(f,t,s),g(t,o),_(f,r,s)},p(f,s){s&3&&n!==(n=f[2](f[1]-f[0])+"")&&K(o,n)},d(f){f&&C(e),f&&C(t),f&&C(r)}}}function Je(i){let e,t=i[0]&&re(i);return{c(){e=h("div"),t&&t.c(),p(e,"class","time svelte-pm7idu")},m(n,o){_(n,e,o),t&&t.m(e,null)},p(n,[o]){n[0]?t?t.p(n,o):(t=re(n),t.c(),t.m(e,null)):t&&(t.d(1),t=null)},i:N,o:N,d(n){n&&C(e),t&&t.d()}}}function Ue(i,e,t){let n,o;H(i,ge,a=>t(3,n=a)),H(i,Fe,a=>t(4,o=a));let{startTime:r}=e;function f(a){const c=Math.floor(a/1e3),d=c<0?0:c;return d>=60?`${Math.floor(d/60).toLocaleString(o)} ${n("notify.time.minutes")}`:`${d.toLocaleString(o)} ${n("notify.time.seconds")}`}let s=Date.now();const l=setInterval(()=>{t(1,s=Date.now())},1e3);return ke(()=>{clearInterval(l)}),i.$$set=a=>{"startTime"in a&&t(0,r=a.startTime)},[r,s,f]}class Xe extends R{constructor(e){super(),I(this,e,Ue,Je,M,{startTime:0},Ze)}}function Qe(i){O(i,"svelte-1otz6tt",`div.notify-transaction-data.svelte-1otz6tt{font-size:var( - --notify-onboard-transaction-font-size, - var(--onboard-font-size-6, var(--font-size-6)) - );font-family:inherit;margin:0px 20px 0px 8px;justify-content:center}.hash-time.svelte-1otz6tt{display:inline-flex;margin-top:4px;font-size:var( - --notify-onboard-hash-time-font-size, - var(--onboard-font-size-7, var(--font-size-7)) - );line-height:var( - --notify-onboard-hash-time-font-line-height, - var(--onboard-font-line-height-4, var(--font-line-height-4)) - )}.address-hash.svelte-1otz6tt{color:var( - --notify-onboard-address-hash-color, - var(--onboard-primary-200, var(--primary-200)) - )}a.address-hash.svelte-1otz6tt{color:var( - --notify-onboard-anchor-color, - var(--onboard-primary-400, var(--primary-400)) - )}a.svelte-1otz6tt{display:flex;text-decoration:none;color:inherit}.transaction-status.svelte-1otz6tt{color:var(--notify-onboard-transaction-status, inherit);line-height:var( - --notify-onboard-font-size-5, - var(--onboard-font-size-5, var(--font-size-5)) - );font-weight:400;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}`)}function ae(i){let e,t,n,o;function r(l,a){return l[0].link?tt:et}let f=r(i),s=f(i);return n=new Xe({props:{startTime:i[0].startTime}}),{c(){e=h("span"),s.c(),t=L(),D(n.$$.fragment),p(e,"class","hash-time svelte-1otz6tt")},m(l,a){_(l,e,a),s.m(e,null),g(e,t),F(n,e,null),o=!0},p(l,a){f===(f=r(l))&&s?s.p(l,a):(s.d(1),s=f(l),s&&(s.c(),s.m(e,t)));const c={};a&1&&(c.startTime=l[0].startTime),n.$set(c)},i(l){o||(w(n.$$.fragment,l),o=!0)},o(l){T(n.$$.fragment,l),o=!1},d(l){l&&C(e),s.d(),A(n)}}}function et(i){let e,t=W(i[0].id)+"",n;return{c(){e=h("div"),n=E(t),p(e,"class","address-hash svelte-1otz6tt")},m(o,r){_(o,e,r),g(e,n)},p(o,r){r&1&&t!==(t=W(o[0].id)+"")&&K(n,t)},d(o){o&&C(e)}}}function tt(i){let e,t=W(i[0].id)+"",n,o;return{c(){e=h("a"),n=E(t),p(e,"class","address-hash svelte-1otz6tt"),p(e,"href",o=i[0].link),p(e,"target","_blank"),p(e,"rel","noreferrer noopener")},m(r,f){_(r,e,f),g(e,n)},p(r,f){f&1&&t!==(t=W(r[0].id)+"")&&K(n,t),f&1&&o!==(o=r[0].link)&&p(e,"href",o)},d(r){r&&C(e)}}}function nt(i){let e,t,n=i[0].message+"",o,r,f=i[0].id&&!i[0].id.includes("customNotification")&&!i[0].id.includes("preflight"),s,l=f&&ae(i);return{c(){e=h("div"),t=h("span"),o=E(n),r=L(),l&&l.c(),p(t,"class","transaction-status svelte-1otz6tt"),p(e,"class","flex flex-column notify-transaction-data svelte-1otz6tt")},m(a,c){_(a,e,c),g(e,t),g(t,o),g(e,r),l&&l.m(e,null),s=!0},p(a,[c]){(!s||c&1)&&n!==(n=a[0].message+"")&&K(o,n),c&1&&(f=a[0].id&&!a[0].id.includes("customNotification")&&!a[0].id.includes("preflight")),f?l?(l.p(a,c),c&1&&w(l,1)):(l=ae(a),l.c(),w(l,1),l.m(e,null)):l&&(G(),T(l,1,1,()=>{l=null}),V())},i(a){s||(w(l),s=!0)},o(a){T(l),s=!1},d(a){a&&C(e),l&&l.d()}}}function it(i,e,t){let{notification:n}=e;return i.$$set=o=>{"notification"in o&&t(0,n=o.notification)},[n]}class ot extends R{constructor(e){super(),I(this,e,it,nt,M,{notification:0},Qe)}}var rt=` - - - -`;const at=["txPool"],lt=["main","matic-main"],st=["Ledger","Trezor","Keystone","KeepKey","D'CENT"],le=i=>at.includes(i),se=i=>lt.includes(i),ce=i=>i&&st.includes(i.label);async function fe({type:i,wallet:e,transaction:t}){const{from:n,input:o,value:r,to:f,nonce:s,gas:l,network:a}=t,c=q[a],{gasPriceProbability:d}=Y.get().notify.replacement,{gas:v,apiKey:u}=Z,[y]=await v.get({chains:[q[a]],endpoint:"blockPrices",apiKey:u}),{maxFeePerGas:b,maxPriorityFeePerGas:m}=y.blockPrices[0].estimatedPrices.find(({confidence:x})=>x===(i==="speedup"?d.speedup:d.cancel)),z=ee(b),j=ee(m),k=o==="0x"?{}:{data:o};return e.provider.request({method:"eth_sendTransaction",params:[{type:"0x2",from:n,to:i==="cancel"?n:f,chainId:parseInt(c),value:`${He.from(r).toHexString()}`,nonce:te(s),gasLimit:te(l),maxFeePerGas:z,maxPriorityFeePerGas:j,...k}]})}function ct(i){O(i,"svelte-ftkynd",`.bn-notify-notification.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{--backround-color:var(--notify-onboard-background, var(--w3o-backround-color, var(--gray-700)));--foreground-color:var(--w3o-foreground-color, var(--gray-600));--text-color:var(--w3o-text-color, #FFF);--border-color:var(--w3o-border-color);font-family:inherit;transition:background 300ms ease-in-out, color 300ms ease-in-out;pointer-events:all;backdrop-filter:blur(5px);width:100%;min-height:56px;display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid transparent;border-radius:var( - --notify-onboard-border-radius, - var(--onboard-border-radius-4, var(--border-radius-4)) - );background:var(--foreground-color);color:var(--text-color)}.bn-notify-notification-inner.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{padding:0.75rem}.bn-notify-notification.svelte-ftkynd:hover>div.bn-notify-notification-inner.svelte-ftkynd>div.notify-close-btn-desktop.svelte-ftkynd{visibility:visible;opacity:1}div.notify-close-btn.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{margin-left:auto;margin-bottom:auto;height:24px;width:24px;position:absolute;top:8px;right:8px;justify-content:center;align-items:center}div.notify-close-btn-desktop.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{visibility:hidden;transition:visibility 0.15s linear, opacity 0.15s linear;opacity:0}.notify-close-btn.svelte-ftkynd .close-icon.svelte-ftkynd.svelte-ftkynd{width:20px;margin:auto;color:var(--text-color)}.notify-close-btn.svelte-ftkynd>.close-icon.svelte-ftkynd.svelte-ftkynd{color:var(--notify-onboard-close-icon-color)}.notify-close-btn.svelte-ftkynd:hover>.close-icon.svelte-ftkynd.svelte-ftkynd{color:var(--notify-onboard-close-icon-hover)}.transaction-status.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{color:var( - --notify-onboard-transaction-status-color, - var(--onboard-primary-100, var(--primary-100)) - );line-height:14px}.dropdown.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{height:0px;overflow:hidden;transition:height 150ms ease-in-out}.dropdown-visible.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{height:48px}.dropdown-buttons.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{background-color:var( - --notify-onboard-dropdown-background, - var(--onboard-gray-700, var(--gray-700)) - );width:100%;padding:8px}.dropdown-button.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{padding:4px 12px;border-radius:var( - --notify-onboard-dropdown-border-radius, - var(--onboard-border-radius-5, var(--border-radius-5)) - );background-color:transparent;font-size:var( - --notify-onboard-dropdown-font-size, - var(--onboard-font-size-6, var(--font-size-6)) - );color:var( - --notify-onboard-dropdown-text-color, - var(--onboard-primary-400, var(--primary-400)) - );transition:all 150ms ease-in-out;cursor:pointer}.dropdown-button.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd:hover{background:var( - --notify-onboard-dropdown-btn-hover-background, - rgba(146, 155, 237, 0.2) - )}`)}function de(i){let e,t,n,o,r,f;return{c(){e=h("div"),t=h("button"),t.textContent="Cancel",n=L(),o=h("button"),o.textContent="Speed-up",p(t,"class","dropdown-button svelte-ftkynd"),p(o,"class","dropdown-button svelte-ftkynd"),p(e,"class","dropdown-buttons flex items-center justify-end svelte-ftkynd")},m(s,l){_(s,e,l),g(e,t),g(e,n),g(e,o),r||(f=[P(t,"click",i[9]),P(o,"click",i[10])],r=!0)},p:N,d(s){s&&C(e),r=!1,he(f)}}}function ft(i){let e,t,n,o,r,f,s,l,a,c,d,v,u,y;n=new Ye({props:{notification:i[0],chainStyles:J[q[i[0].network]]}}),r=new ot({props:{notification:i[0]}});let b=i[0].eventCode==="txPool"&&de(i);return{c(){e=h("div"),t=h("div"),D(n.$$.fragment),o=L(),D(r.$$.fragment),f=L(),s=h("div"),l=h("div"),a=L(),c=h("div"),b&&b.c(),p(l,"class","flex items-center close-icon svelte-ftkynd"),p(s,"class","notify-close-btn notify-close-btn-"+i[4].type+" pointer flex svelte-ftkynd"),p(t,"class","flex bn-notify-notification-inner svelte-ftkynd"),p(c,"class","dropdown svelte-ftkynd"),$(c,"dropdown-visible",i[2]&&i[5]&&le(i[0].eventCode)&&se(i[0].network)&&ce(i[7])),p(e,"class",d="bn-notify-notification bn-notify-notification-"+i[0].type+"} svelte-ftkynd"),$(e,"bn-notify-clickable",i[0].onClick)},m(m,z){_(m,e,z),g(e,t),F(n,t,null),g(t,o),F(r,t,null),g(t,f),g(t,s),g(s,l),l.innerHTML=rt,g(e,a),g(e,c),b&&b.m(c,null),v=!0,u||(y=[P(s,"click",me(i[8])),P(e,"mouseenter",i[11]),P(e,"mouseleave",i[12]),P(e,"click",i[13])],u=!0)},p(m,[z]){const j={};z&1&&(j.notification=m[0]),z&1&&(j.chainStyles=J[q[m[0].network]]),n.$set(j);const k={};z&1&&(k.notification=m[0]),r.$set(k),m[0].eventCode==="txPool"?b?b.p(m,z):(b=de(m),b.c(),b.m(c,null)):b&&(b.d(1),b=null),(!v||z&165)&&$(c,"dropdown-visible",m[2]&&m[5]&&le(m[0].eventCode)&&se(m[0].network)&&ce(m[7])),(!v||z&1&&d!==(d="bn-notify-notification bn-notify-notification-"+m[0].type+"} svelte-ftkynd"))&&p(e,"class",d),(!v||z&1)&&$(e,"bn-notify-clickable",m[0].onClick)},i(m){v||(w(n.$$.fragment,m),w(r.$$.fragment,m),v=!0)},o(m){T(n.$$.fragment,m),T(r.$$.fragment,m),v=!1},d(m){m&&C(e),A(n),A(r),b&&b.d(),u=!1,he(y)}}}function dt(i,e,t){let n,o;H(i,Me,k=>t(15,n=k)),H(i,ge,k=>t(3,o=k));const{device:r,gas:f}=Z;let{notification:s}=e,{updateParentOnRemove:l}=e,a,c=!1;const d=Oe.getValue().find(({hash:k})=>k===s.id),v=d&&n.find(({accounts:k})=>!!k.find(({address:x})=>x.toLowerCase()===d.from.toLowerCase()));ke(()=>{clearTimeout(a)});const u=()=>{U(s.id),X(s.id),l()},y=async()=>{try{await fe({type:"cancel",wallet:v,transaction:d})}catch{const x=`${d.hash.slice(0,9)}:txReplaceError${d.hash.slice(-5)}`;Q({id:x,type:"hint",eventCode:"txError",message:o("notify.transaction.txReplaceError"),key:x,autoDismiss:4e3})}},b=async()=>{try{await fe({type:"speedup",wallet:v,transaction:d})}catch{const x=`${d.hash.slice(0,9)}:txReplaceError${d.hash.slice(-5)}`;Q({id:x,type:"hint",eventCode:"txError",message:o("notify.transaction.txReplaceError"),key:x,autoDismiss:4e3})}},m=()=>t(2,c=!0),z=()=>t(2,c=!1),j=k=>s.onClick&&s.onClick(k);return i.$$set=k=>{"notification"in k&&t(0,s=k.notification),"updateParentOnRemove"in k&&t(1,l=k.updateParentOnRemove)},i.$$.update=()=>{i.$$.dirty&1&&s.autoDismiss&&(a=setTimeout(()=>{U(s.id),X(s.id)},s.autoDismiss))},[s,l,c,o,r,f,d,v,u,y,b,m,z,j]}class ut extends R{constructor(e){super(),I(this,e,dt,ft,M,{notification:0,updateParentOnRemove:1},ct)}}function vt(i){O(i,"svelte-1h8mmo3",`ul.svelte-1h8mmo3{padding-left:0;display:flex;flex-flow:column nowrap;font-size:var( - --notify-onboard-font-size, - var(--onboard-font-size-5, var(--font-size-5)) - );list-style-type:none;overflow:visible;scrollbar-width:none;box-sizing:border-box;z-index:var(--notify-onboard-z-index, 300);font-family:var( - --notify-onboard-font-family, - var(--onboard-font-family-normal, inherit) - );margin:8px 0;pointer-events:all}.y-scroll.svelte-1h8mmo3{overflow-y:scroll}.y-visible.svelte-1h8mmo3{overflow-y:visible}li.notification-list-top.svelte-1h8mmo3:not(:first-child){margin-top:8px}li.notification-list-bottom.svelte-1h8mmo3:not(:first-child){margin-bottom:8px}ul.bn-notify-bottomLeft.svelte-1h8mmo3,ul.bn-notify-bottomRight.svelte-1h8mmo3{flex-direction:column-reverse}@media only screen and (max-width: 450px){ul.svelte-1h8mmo3{width:100%}}.bn-notify-clickable:hover{cursor:pointer}.svelte-1h8mmo3::-webkit-scrollbar{display:none}`)}function ue(i,e,t){const n=i.slice();return n[12]=e[t],n}function ve(i){let e,t=[],n=new Map,o,r,f,s=i[2];const l=a=>a[12].key;for(let a=0;a{s&&s.end(1),f=Le(t,Se,{duration:1200,delay:300,x:e[3],y:e[4],easing:pt}),f.start()}),c=!0)},o(u){T(n.$$.fragment,u),f&&f.invalidate(),s=Pe(t,Re,{duration:300,easing:ye}),c=!1},d(u){u&&C(t),A(n),u&&s&&s.end(),d=!1,v()}}}function bt(i){let e,t,n=i[2].length&&ve(i);return{c(){n&&n.c(),e=pe()},m(o,r){n&&n.m(o,r),_(o,e,r),t=!0},p(o,[r]){o[2].length?n?(n.p(o,r),r&4&&w(n,1)):(n=ve(o),n.c(),w(n,1),n.m(e.parentNode,e)):n&&(G(),T(n,1,1,()=>{n=null}),V())},i(o){t||(w(n),t=!0)},o(o){T(n),t=!1},d(o){n&&n.d(o),o&&C(e)}}}function pt(i){return Math.sin(-13*(i+1)*Math.PI/2)*Math.pow(2,-35*i)+1}function mt(i,e,t){let n;const{device:o}=Z,r=Y.select("accountCenter").pipe(_e(Y.get().accountCenter),we(1));H(i,r,b=>t(6,n=b));let{position:f}=e,{sharedContainer:s}=e,{notifications:l}=e,a,c;a=0,c=0;let d="y-scroll";const v=()=>{d!=="y-visible"&&t(5,d="y-visible"),u(function(){t(5,d="y-scroll")},1e3)},u=function(){let b=null;return(m,z)=>{clearTimeout(b),b=setTimeout(m,z)}}();function y(b){Ee.call(this,i,b)}return i.$$set=b=>{"position"in b&&t(0,f=b.position),"sharedContainer"in b&&t(1,s=b.sharedContainer),"notifications"in b&&t(2,l=b.notifications)},i.$$.update=()=>{i.$$.dirty&1&&(f.includes("top")?t(4,c=-50):t(4,c=50))},[f,s,l,a,c,d,n,o,r,v,y]}class ht extends R{constructor(e){super(),I(this,e,mt,bt,M,{position:0,sharedContainer:1,notifications:2},vt)}}export{ht as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-5a58a04a-286652f5.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-5a58a04a-286652f5.js.meta deleted file mode 100644 index 6c3860a94..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-5a58a04a-286652f5.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e443df271681bbd45ac7e6186ab94600 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js deleted file mode 100644 index fac0d6e3f..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js +++ /dev/null @@ -1,54 +0,0 @@ -import{b6 as be,b7 as ge,b8 as he,b9 as we,ba as L,bb as R,bc as pe,bd as S,be as ve,bf as y,bg as W,bh as x,bi as $e,aI as _t,aH as kt,bj as Ct,bk as _e,bl as Le,bm as G,bn as Z,bo as ce,bp as O,bq as p,br as d,bs as ke,bt as F,bu as me,bv as ie,bw as je,bx as A,by as T,bz as se,bA as Q,bB as s,bC as yt,bD as re,bE as Be,bF as pt,bG as zt,bH as D,bI as Se,bJ as Ie,bK as $t,bL as At,bM as Ce,bN as Ee,bO as vt,bP as ee,bQ as We,bR as Ae,bS as Mt,bT as Ne,bU as mt,bV as St,bW as It,bX as bt,bY as He,bZ as gt,b_ as qt,al as Ht,az as Ft,b$ as Lt,c0 as Wt,c1 as Vt,c2 as Pe,c3 as Fe,c4 as Re,c5 as Tt,c6 as Ue,c7 as Dt,M as Xe,c8 as Bt,c9 as Je,ca as Nt}from"./index-b28afd98.js";import{m as jt}from"./merge-7af99d5f.js";import{s as Et,d as Gt}from"./skip-2d52d7ac.js";var ht='',Me=` - - - -`;function Zt(e){ke(e,"svelte-1uqued6","select.svelte-1uqued6{border:none;background-image:none;background-color:transparent;-webkit-appearance:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;appearance:none;font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));transition:width 250ms ease-in-out;background-repeat:no-repeat, repeat;background-position:right 0px top 0px, 0 0;scrollbar-width:none;-ms-overflow-style:none;padding:0 14px 0 0;white-space:nowrap;text-overflow:ellipsis}select.minimized_ac.svelte-1uqued6{min-width:80px;max-width:80px}select.maximized_ac.svelte-1uqued6{width:auto !important}select.svelte-1uqued6:focus{outline:none}span.switching-placeholder.svelte-1uqued6{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));min-width:80px;max-width:80px;padding:0 8px 0 4px}")}function Ke(e,t,n){const r=e.slice();return r[15]=t[n],r}function Qe(e){let t;function n(l,a){return l[7]?Pt:Ot}let r=n(e),o=r(e);return{c(){o.c(),t=we()},m(l,a){o.m(l,a),L(l,t,a)},p(l,a){r===(r=n(l))&&o?o.p(l,a):(o.d(1),o=r(l),o&&(o.c(),o.m(t.parentNode,t)))},d(l){o.d(l),l&&W(t)}}}function Ot(e){let t,n=!Pe(e[6].chains[0],e[2]),r,o=[],l=new Map,a,c,i,f,u,v=n&&Ye(e),h=e[2];const _=m=>m[15].id;for(let m=0;mn(12,l=w));let{selectIcon:c=ht}=t,{colorVar:i}=t,{chains:f}=t,{bold:u=!1}=t,{parentCSSId:v=""}=t;const h=new Ht(!1);x(e,h,w=>n(7,a=w));let _;const m=jt(_e,h.pipe(Et(1))).pipe(Gt(50),Ft((w,z)=>typeof w=="boolean"||typeof z=="boolean"?!1:w[0]&&z[0]&&w[0].chains[0].id===z[0].chains[0].id));x(e,m,w=>n(11,o=w));async function b(){const w=_.selectedOptions[0].value;w!==r.chains[0].id&&(h.next(!0),await Lt({chainId:w,chainNamespace:"evm",wallet:r.label}),h.next(!1))}function g(){if(!_)return;let w=document.createElement("option");w.textContent=_.selectedOptions[0].textContent;let z=document.createElement("select");z.style.visibility="hidden",z.style.position="fixed",z.appendChild(w),_.after(z),n(5,_.style.width=`${z.clientWidth-22}px`,_),z.remove()}function k(w){mt[w?"unshift":"push"](()=>{_=w,n(5,_),n(2,f),n(6,r),n(12,l)})}return e.$$set=w=>{"selectIcon"in w&&n(0,c=w.selectIcon),"colorVar"in w&&n(1,i=w.colorVar),"chains"in w&&n(2,f=w.chains),"bold"in w&&n(3,u=w.bold),"parentCSSId"in w&&n(4,v=w.parentCSSId)},e.$$.update=()=>{e.$$.dirty&4096&&n(6,[r]=l,r),e.$$.dirty&2048&&o&&g()},[c,i,f,u,v,_,r,a,h,m,b,o,l,k]}class wt extends be{constructor(t){super(),ge(this,t,Ut,Rt,he,{selectIcon:0,colorVar:1,chains:2,bold:3,parentCSSId:4},Zt)}}var Xt=` - - - -`;function Jt(e){ke(e,"svelte-1frdf8r",`.container.svelte-1frdf8r.svelte-1frdf8r{position:relative;z-index:0;width:100%;padding:0.25rem;margin-bottom:0.25rem;border-radius:12px;transition:background-color 150ms ease-in-out}.container.svelte-1frdf8r.svelte-1frdf8r::before{content:'';display:block;position:absolute;top:0;bottom:0;left:0;right:0;height:100%;width:100%;background:var(--action-color);border-radius:12px;z-index:0;opacity:0}.container.svelte-1frdf8r.svelte-1frdf8r:hover::before{opacity:0.2}.container.svelte-1frdf8r:hover .balance.svelte-1frdf8r,.container.svelte-1frdf8r:hover .elipsis-container.svelte-1frdf8r{opacity:1}.container.svelte-1frdf8r:hover .balance.svelte-1frdf8r{color:var(--account-center-maximized-balance-color, inherit)}.container.primary.svelte-1frdf8r.svelte-1frdf8r:hover{background-color:var(--account-center-maximized-account-section-background-hover)}.address-domain.svelte-1frdf8r.svelte-1frdf8r{margin-left:0.5rem;font-weight:700;color:var(--account-center-maximized-address-color, inherit)}.balance.svelte-1frdf8r.svelte-1frdf8r{margin-left:0.5rem;transition:color 150ms ease-in-out, background-color 150ms ease-in-out;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:7.25rem;text-align:end;opacity:0.4}.elipsis-container.svelte-1frdf8r.svelte-1frdf8r{padding:0.25rem;margin-left:0.25rem;border-radius:24px;transition:color 150ms ease-in-out, background-color 150ms ease-in-out;background-color:transparent;opacity:0.4}.elipsis.svelte-1frdf8r.svelte-1frdf8r{width:24px}.elipsis-container.svelte-1frdf8r.svelte-1frdf8r:hover{color:var(--text-color) - }.elipsis-container.active.svelte-1frdf8r.svelte-1frdf8r{color:var(--text-color) - }.menu.svelte-1frdf8r.svelte-1frdf8r{background:var(--onboard-white, var(--white));border:1px solid var(--onboard-gray-100, var(--gray-100));border-radius:8px;list-style-type:none;right:0.25rem;top:2.25rem;margin:0;padding:0;border:none;overflow:hidden;z-index:1}.menu.svelte-1frdf8r li.svelte-1frdf8r{color:var(--onboard-primary-500, var(--primary-500));font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));padding:12px 16px;background:var(--onboard-white, var(--white));transition:background-color 150ms ease-in-out;cursor:pointer}.menu.svelte-1frdf8r li.svelte-1frdf8r:hover{background:var(--onboard-primary-200, var(--primary-200))}`)}function et(e,t,n){const r=e.slice();return r[14]=t[n].address,r[15]=t[n].ens,r[16]=t[n].uns,r[17]=t[n].balance,r[19]=n,r}function tt(e){let t,n,r;return n=new We({props:{size:14}}),{c(){t=p("div"),G(n.$$.fragment),se(t,"right","-5px"),se(t,"bottom","-5px"),d(t,"class","drop-shadow absolute")},m(o,l){L(o,t,l),Z(n,t,null),r=!0},i(o){r||(y(n.$$.fragment,o),r=!0)},o(o){S(n.$$.fragment,o),r=!1},d(o){o&&W(t),O(n)}}}function nt(e){let t,n=at(e[17])+"",r,o;return{c(){t=p("span"),r=T(n),d(t,"class","balance svelte-1frdf8r")},m(l,a){L(l,t,a),s(t,r)},p(l,a){a&1&&n!==(n=at(l[17])+"")&&D(r,n)},i(l){o||Se(()=>{o=Ie(t,Ae,{}),o.start()})},o:ce,d(l){l&&W(t)}}}function rt(e){let t,n,r=e[4]("accountCenter.addAccount",{default:e[2].accountCenter.addAccount})+"",o,l,a,c,i=e[4]("accountCenter.disconnectWallet",{default:e[2].accountCenter.disconnectWallet})+"",f,u,v,h=e[2].accountCenter.copyAddress+"",_,m,b,g,k=!(e[1]&&e[19]===0)&&ot(e);function w(){return e[13](e[15],e[16],e[14])}return{c(){t=p("ul"),n=p("li"),o=T(r),l=A(),k&&k.c(),a=A(),c=p("li"),f=T(i),u=A(),v=p("li"),_=T(h),d(n,"class","svelte-1frdf8r"),d(c,"class","svelte-1frdf8r"),d(v,"class","svelte-1frdf8r"),d(t,"class","menu absolute svelte-1frdf8r")},m(z,H){L(z,t,H),s(t,n),s(n,o),s(t,l),k&&k.m(t,null),s(t,a),s(t,c),s(c,f),s(t,u),s(t,v),s(v,_),b||(g=[R(n,"click",re(e[10])),R(c,"click",re(e[12])),R(v,"click",re(w))],b=!0)},p(z,H){e=z,H&20&&r!==(r=e[4]("accountCenter.addAccount",{default:e[2].accountCenter.addAccount})+"")&&D(o,r),e[1]&&e[19]===0?k&&(k.d(1),k=null):k?k.p(e,H):(k=ot(e),k.c(),k.m(t,a)),H&20&&i!==(i=e[4]("accountCenter.disconnectWallet",{default:e[2].accountCenter.disconnectWallet})+"")&&D(f,i),H&4&&h!==(h=e[2].accountCenter.copyAddress+"")&&D(_,h)},i(z){m||Se(()=>{m=Ie(t,Ae,{}),m.start()})},o:ce,d(z){z&&W(t),k&&k.d(),b=!1,Ce(g)}}}function ot(e){let t,n=e[4]("accountCenter.setPrimaryAccount",{default:e[2].accountCenter.setPrimaryAccount})+"",r,o,l;function a(){return e[11](e[14])}return{c(){t=p("li"),r=T(n),d(t,"class","svelte-1frdf8r")},m(c,i){L(c,t,i),s(t,r),o||(l=R(t,"click",re(a)),o=!0)},p(c,i){e=c,i&20&&n!==(n=e[4]("accountCenter.setPrimaryAccount",{default:e[2].accountCenter.setPrimaryAccount})+"")&&D(r,n)},d(c){c&&W(t),o=!1,l()}}}function lt(e){let t,n,r,o,l,a,c,i,f=(e[15]?ee(e[15].name):e[16]?ee(e[16].name):Ne(e[14]))+"",u,v,h,_,m,b,g,k,w,z,H;l=new me({props:{size:32,padding:4,background:"custom",color:"#EFF1FC",customBackgroundColor:e[1]&&e[19]===0?"rgba(24, 206, 102, 0.2)":"rgba(235, 235, 237, 0.1)",border:e[1]&&e[19]===0?"green":"gray",radius:8,icon:e[0].icon}});let I=e[1]&&e[19]===0&&tt(),C=e[17]&&nt(e);function j(){return e[8](e[14])}function te(){return e[9](e[14])}let q=e[3]===e[14]&&rt(e);return{c(){t=p("div"),n=p("div"),r=p("div"),o=p("div"),G(l.$$.fragment),a=A(),I&&I.c(),c=A(),i=p("span"),u=T(f),v=A(),h=p("div"),C&&C.c(),_=A(),m=p("div"),b=p("div"),g=A(),q&&q.c(),k=A(),d(o,"class","flex items-center relative"),d(i,"class","address-domain svelte-1frdf8r"),d(r,"class","flex items-center"),d(b,"class","elipsis pointer flex items-center justify-center relative svelte-1frdf8r"),d(m,"class","elipsis-container svelte-1frdf8r"),Q(m,"active",e[3]===e[14]),d(h,"class","flex items-center"),d(n,"class","container flex items-center justify-between pointer svelte-1frdf8r"),Q(n,"primary",e[1]&&e[19]===0),d(t,"class","relative")},m(B,N){L(B,t,N),s(t,n),s(n,r),s(r,o),Z(l,o,null),s(o,a),I&&I.m(o,null),s(r,c),s(r,i),s(i,u),s(n,v),s(n,h),C&&C.m(h,null),s(h,_),s(h,m),s(m,b),b.innerHTML=Xt,s(t,g),q&&q.m(t,null),s(t,k),w=!0,z||(H=[R(b,"click",re(j)),R(n,"click",te)],z=!0)},p(B,N){e=B;const J={};N&2&&(J.customBackgroundColor=e[1]&&e[19]===0?"rgba(24, 206, 102, 0.2)":"rgba(235, 235, 237, 0.1)"),N&2&&(J.border=e[1]&&e[19]===0?"green":"gray"),N&1&&(J.icon=e[0].icon),l.$set(J),e[1]&&e[19]===0?I?N&2&&y(I,1):(I=tt(),I.c(),y(I,1),I.m(o,null)):I&&(pe(),S(I,1,1,()=>{I=null}),ve()),(!w||N&1)&&f!==(f=(e[15]?ee(e[15].name):e[16]?ee(e[16].name):Ne(e[14]))+"")&&D(u,f),e[17]?C?(C.p(e,N),N&1&&y(C,1)):(C=nt(e),C.c(),y(C,1),C.m(h,_)):C&&(C.d(1),C=null),(!w||N&9)&&Q(m,"active",e[3]===e[14]),(!w||N&2)&&Q(n,"primary",e[1]&&e[19]===0),e[3]===e[14]?q?(q.p(e,N),N&9&&y(q,1)):(q=rt(e),q.c(),y(q,1),q.m(t,k)):q&&(q.d(1),q=null)},i(B){w||(y(l.$$.fragment,B),y(I),y(C),y(q),w=!0)},o(B){S(l.$$.fragment,B),S(I),w=!1},d(B){B&&W(t),O(l),I&&I.d(),C&&C.d(),q&&q.d(),z=!1,Ce(H)}}}function Kt(e){let t,n,r=e[0].accounts,o=[];for(let a=0;aS(o[a],1,1,()=>{o[a]=null});return{c(){for(let a=0;a8?e[t].slice(0,8):e[t]} ${t}`}function Qt(e,t,n){let r;x(e,Ee,g=>n(4,r=g));let{wallet:o}=t,{primary:l}=t;function a(){n(3,c="")}let c="";async function i(g){try{await Dt(g.provider)}catch(k){const{code:w}=k;(w===Xe.UNSUPPORTED_METHOD||w===Xe.DOES_NOT_EXIST)&&Bt.next({inProgress:!1,actionRequired:g.label})}}function f(){n(2,F.accountCenter.copyAddress="Copied Successfully",F),setTimeout(a,500),setTimeout(()=>{n(2,F.accountCenter.copyAddress="Copy Wallet address",F)},700)}const u=g=>n(3,c=c===g?"":g),v=g=>Je(o,g),h=()=>{n(3,c=""),i(o)},_=g=>{n(3,c=""),Je(o,g)},m=()=>{n(3,c=""),bt({label:o.label})},b=(g,k,w)=>{Nt(g?g.name:k?k.name:w).then(()=>{f()})};return e.$$set=g=>{"wallet"in g&&n(0,o=g.wallet),"primary"in g&&n(1,l=g.primary)},[o,l,F,c,r,i,f,a,u,v,h,_,m,b]}class Yt extends be{constructor(t){super(),ge(this,t,Qt,Kt,he,{wallet:0,primary:1,hideMenu:7},Jt)}get hideMenu(){return this.$$.ctx[7]}}var xt=` - - - -`,en=` - - - -`,tn='';function nn(e){ke(e,"svelte-10lq1b5",".content.svelte-10lq1b5{padding:1rem;width:300px;font-family:var(--onboard-font-family-normal, var(--font-family-normal));font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:24px}.icon-container.svelte-10lq1b5{width:3rem;height:3rem;background:var(--onboard-warning-100, var(--warning-100));border-radius:24px;padding:12px;color:var(--onboard-warning-500, var(--warning-500))}h4.svelte-10lq1b5{margin:1.5rem 0 0.5rem 0;font-weight:700}p.svelte-10lq1b5{margin:0;font-weight:400}button.svelte-10lq1b5{margin-top:1.5rem;width:50%;font-weight:700}.right.svelte-10lq1b5{margin-left:0.5rem;width:60%}")}function rn(e){let t,n,r,o,l=e[2]("modals.confirmDisconnectAll.heading",{default:F.modals.confirmDisconnectAll.heading})+"",a,c,i,f=e[2]("modals.confirmDisconnectAll.description")+"",u,v,h,_,m=e[2]("modals.confirmDisconnectAll.cancel",{default:F.modals.confirmDisconnectAll.cancel})+"",b,g,k,w=e[2]("modals.confirmDisconnectAll.confirm",{default:F.modals.confirmDisconnectAll.confirm})+"",z,H,I;return{c(){t=p("div"),n=p("div"),r=A(),o=p("h4"),a=T(l),c=A(),i=p("p"),u=T(f),v=A(),h=p("div"),_=p("button"),b=T(m),g=A(),k=p("button"),z=T(w),d(n,"class","icon-container flex justify-center items-center svelte-10lq1b5"),d(o,"class","svelte-10lq1b5"),d(i,"class","svelte-10lq1b5"),d(_,"class","button-neutral-solid-b rounded svelte-10lq1b5"),d(k,"class","right button-neutral-solid rounded svelte-10lq1b5"),d(h,"class","flex justify-between items-center w-100"),d(t,"class","content svelte-10lq1b5")},m(C,j){L(C,t,j),s(t,n),n.innerHTML=Me,s(t,r),s(t,o),s(o,a),s(t,c),s(t,i),s(i,u),s(t,v),s(t,h),s(h,_),s(_,b),s(h,g),s(h,k),s(k,z),H||(I=[R(_,"click",function(){Be(e[1])&&e[1].apply(this,arguments)}),R(k,"click",function(){Be(e[0])&&e[0].apply(this,arguments)})],H=!0)},p(C,j){e=C,j&4&&l!==(l=e[2]("modals.confirmDisconnectAll.heading",{default:F.modals.confirmDisconnectAll.heading})+"")&&D(a,l),j&4&&f!==(f=e[2]("modals.confirmDisconnectAll.description")+"")&&D(u,f),j&4&&m!==(m=e[2]("modals.confirmDisconnectAll.cancel",{default:F.modals.confirmDisconnectAll.cancel})+"")&&D(b,m),j&4&&w!==(w=e[2]("modals.confirmDisconnectAll.confirm",{default:F.modals.confirmDisconnectAll.confirm})+"")&&D(z,w)},d(C){C&&W(t),H=!1,Ce(I)}}}function on(e){let t,n;return t=new Vt({props:{close:e[1],$$slots:{default:[rn]},$$scope:{ctx:e}}}),{c(){G(t.$$.fragment)},m(r,o){Z(t,r,o),n=!0},p(r,[o]){const l={};o&2&&(l.close=r[1]),o&15&&(l.$$scope={dirty:o,ctx:r}),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){S(t.$$.fragment,r),n=!1},d(r){O(t,r)}}}function ln(e,t,n){let r;x(e,Ee,a=>n(2,r=a));let{onConfirm:o}=t,{onClose:l}=t;return e.$$set=a=>{"onConfirm"in a&&n(0,o=a.onConfirm),"onClose"in a&&n(1,l=a.onClose)},[o,l,r]}class an extends be{constructor(t){super(),ge(this,t,ln,on,he,{onConfirm:0,onClose:1},nn)}}function sn(e){ke(e,"svelte-k4nru0",`.outer-container.svelte-k4nru0{--background-color:var(--w3o-background-color);--text-color:var(--w3o-text-color);--border-color:var(--w3o-border-color, var(--gray-500));--action-color:var(--w3o-action-color, var(--primary-500));--border-radius:var(--w3o-border-radius, 1rem);--account-center-network-selector-color:var(--text-color, white);width:100%;overflow:hidden;pointer-events:auto;border:1px solid transparent;background:var(--account-center-maximized-upper-background, var(--background-color));border-color:var(--border-color);border-radius:var(--account-center-border-radius, var(--border-radius))}.wallets-section.svelte-k4nru0{width:100%;color:var(--text-color, var(--gray-100));background:var(--background-color, var(--gray-700))}.p5.svelte-k4nru0{padding:var(--onboard-spacing-5, var(--spacing-5))}.wallets.svelte-k4nru0{width:100%;margin-bottom:0.5rem}.actions.svelte-k4nru0{color:var(--account-center-maximized-upper-action-color, var(--action-color));padding-left:2px}.action-container.svelte-k4nru0{padding:4px 12px 4px 8px;border-radius:8px;transition:background-color 150ms ease-in-out}.action-container.svelte-k4nru0:hover{background-color:var( - --account-center-maximized-upper-action-background-hover, - rgba(146, 155, 237, 0.2) - )}.plus-icon.svelte-k4nru0{width:20px}.arrow-forward.svelte-k4nru0{width:20px}.mt.svelte-k4nru0{margin-top:0.25rem}.action-text.svelte-k4nru0{font-size:var(--onboard-font-size-6, var(--font-size-6));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));margin-left:0.5rem}.background-blue.svelte-k4nru0{background:var( - --account-center-maximized-network-section-background, - var(--onboard-primary-100, var(--primary-100)) - )}.background-gray.svelte-k4nru0{background:var(--onboard-gray-100, var(--gray-100))}.background-yellow.svelte-k4nru0{background:var(--onboard-warning-100, var(--warning-100))}.network-container.svelte-k4nru0{background:var(--backround-color);border-top:1px solid var(--border-color);border-radius:var( - --account-center-border-radius, - var(--onboard-border-radius-3, var(--border-radius-3)) - );color:var( - --account-center-maximized-network-text-color, - var(--account-center-maximized-network-section, inherit) - )}.p5-5.svelte-k4nru0{padding:12px}.network-selector-container.svelte-k4nru0{margin-left:1rem;width:100%}.network-selector-label.svelte-k4nru0{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3))}.app-info-container.svelte-k4nru0{color:var(--text-color, var(--gray-700));background:var(--account-center-maximized-info-section-background-color, - var(--account-center-maximized-info-section, var(--background-color, #FFF)) - );border-top:1px solid var(--border-color);border-radius:var(--account-center-border-radius, inherit);padding:12px}.app-name.svelte-k4nru0{font-size:1rem;font-weight:700;line-height:1rem;margin-bottom:0.25rem;color:var(--account-center-maximized-app-name-color, inherit)}.app-description.svelte-k4nru0{margin:0;font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));color:var(--account-center-maximized-app-info-color, inherit)}.app-info.svelte-k4nru0{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));color:var(--account-center-maximized-app-info-color, inherit)}.app-info-heading.svelte-k4nru0{font-weight:700;margin-top:var(--onboard-spacing-5, var(--spacing-5));margin-bottom:var(--onboard-spacing-7, var(--spacing-7));color:var(--account-center-maximized-app-info-color, inherit)}a.svelte-k4nru0{font-weight:700}.mt7.svelte-k4nru0{margin-top:var(--onboard-spacing-7, var(--spacing-7))}.ml4.svelte-k4nru0{margin-left:var(--onboard-spacing-4, var(--spacing-4))}.app-button.svelte-k4nru0{font-family:var(--account-center-app-btn-font-family, inherit);margin-top:var(--onboard-spacing-5, var(--spacing-5));color:var(--account-center-app-btn-text-color, var(--background-color, #FFF));background:var(--account-center-app-btn-background, var(--action-color))}.powered-by-container.svelte-k4nru0{margin-top:12px;color:var(--text-color)}`)}function it(e,t,n){const r=e.slice();return r[19]=t[n],r[21]=n,r}function st(e){let t,n;return t=new an({props:{onClose:e[14],onConfirm:e[6]}}),{c(){G(t.$$.fragment)},m(r,o){Z(t,r,o),n=!0},p(r,o){const l={};o&2&&(l.onClose=r[14]),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){S(t.$$.fragment,r),n=!1},d(r){O(t,r)}}}function ct(e,t){let n,r,o,l;function a(i){t[15](i)}let c={wallet:t[19],primary:t[21]===0};return t[2]!==void 0&&(c.hideMenu=t[2]),r=new Yt({props:c}),mt.push(()=>St(r,"hideMenu",a)),{key:e,first:null,c(){n=we(),G(r.$$.fragment),this.first=n},m(i,f){L(i,n,f),Z(r,i,f),l=!0},p(i,f){t=i;const u={};f&1&&(u.wallet=t[19]),f&1&&(u.primary=t[21]===0),!o&&f&4&&(o=!0,u.hideMenu=t[2],It(()=>o=!1)),r.$set(u)},i(i){l||(y(r.$$.fragment,i),l=!0)},o(i){S(r.$$.fragment,i),l=!1},d(i){i&&W(n),O(r,i)}}}function cn(e){let t,n,r,o,l=e[5]("accountCenter.connectAnotherWallet",{default:F.accountCenter.connectAnotherWallet})+"",a,c,i,f,u,v,h=e[5]("accountCenter.disconnectAllWallets",{default:F.accountCenter.disconnectAllWallets})+"",_,m,b;return{c(){t=p("div"),n=p("div"),r=A(),o=p("span"),a=T(l),c=A(),i=p("div"),f=p("div"),u=A(),v=p("span"),_=T(h),d(n,"class","plus-icon flex items-center justify-center svelte-k4nru0"),d(o,"class","action-text svelte-k4nru0"),d(t,"class","action-container flex items-center pointer svelte-k4nru0"),d(f,"class","arrow-forward flex items-center justify-center svelte-k4nru0"),d(v,"class","action-text svelte-k4nru0"),d(i,"class","action-container flex items-center mt pointer svelte-k4nru0")},m(g,k){L(g,t,k),s(t,n),n.innerHTML=xt,s(t,r),s(t,o),s(o,a),L(g,c,k),L(g,i,k),s(i,f),f.innerHTML=en,s(i,u),s(i,v),s(v,_),m||(b=[R(t,"click",e[16]),R(i,"click",e[17])],m=!0)},p(g,k){k&32&&l!==(l=g[5]("accountCenter.connectAnotherWallet",{default:F.accountCenter.connectAnotherWallet})+"")&&D(a,l),k&32&&h!==(h=g[5]("accountCenter.disconnectAllWallets",{default:F.accountCenter.disconnectAllWallets})+"")&&D(_,h)},d(g){g&&W(t),g&&W(c),g&&W(i),m=!1,Ce(b)}}}function dt(e){let t,n,r;return n=new We({props:{size:14}}),{c(){t=p("div"),G(n.$$.fragment),se(t,"right","-5px"),se(t,"bottom","-5px"),d(t,"class","drop-shadow absolute")},m(o,l){L(o,t,l),Z(n,t,null),r=!0},i(o){r||(y(n.$$.fragment,o),r=!0)},o(o){S(n.$$.fragment,o),r=!1},d(o){o&&W(t),O(n)}}}function dn(e){let t,n,r=e[5]("accountCenter.appInfo",{default:F.accountCenter.appInfo})+"",o,l,a,c=e[8].gettingStartedGuide&&un(e),i=e[8].explore&&fn(e);return{c(){t=p("div"),n=p("h4"),o=T(r),l=A(),c&&c.c(),a=A(),i&&i.c(),d(n,"class","app-info-heading svelte-k4nru0"),d(t,"class","app-info svelte-k4nru0")},m(f,u){L(f,t,u),s(t,n),s(n,o),s(t,l),c&&c.m(t,null),s(t,a),i&&i.m(t,null)},p(f,u){u&32&&r!==(r=f[5]("accountCenter.appInfo",{default:F.accountCenter.appInfo})+"")&&D(o,r),f[8].gettingStartedGuide&&c.p(f,u),f[8].explore&&i.p(f,u)},d(f){f&&W(t),c&&c.d(),i&&i.d()}}}function un(e){let t,n,r=e[5]("accountCenter.learnMore",{default:F.accountCenter.learnMore})+"",o,l,a,c=e[5]("accountCenter.gettingStartedGuide",{default:F.accountCenter.gettingStartedGuide})+"",i;return{c(){t=p("div"),n=p("div"),o=T(r),l=A(),a=p("a"),i=T(c),d(a,"href",e[8].gettingStartedGuide),d(a,"target","_blank"),d(a,"rel","noreferrer noopener"),d(a,"class","svelte-k4nru0"),d(t,"class","flex justify-between items-center mt7 svelte-k4nru0")},m(f,u){L(f,t,u),s(t,n),s(n,o),s(t,l),s(t,a),s(a,i)},p(f,u){u&32&&r!==(r=f[5]("accountCenter.learnMore",{default:F.accountCenter.learnMore})+"")&&D(o,r),u&32&&c!==(c=f[5]("accountCenter.gettingStartedGuide",{default:F.accountCenter.gettingStartedGuide})+"")&&D(i,c)},d(f){f&&W(t)}}}function fn(e){let t,n,r=e[5]("accountCenter.smartContracts",{default:F.accountCenter.smartContracts})+"",o,l,a,c=e[5]("accountCenter.explore",{default:F.accountCenter.explore})+"",i;return{c(){t=p("div"),n=p("div"),o=T(r),l=A(),a=p("a"),i=T(c),d(a,"href",e[8].explore),d(a,"target","_blank"),d(a,"rel","noreferrer noopener"),d(a,"class","svelte-k4nru0"),d(t,"class","flex justify-between items-center mt7 svelte-k4nru0")},m(f,u){L(f,t,u),s(t,n),s(n,o),s(t,l),s(t,a),s(a,i)},p(f,u){u&32&&r!==(r=f[5]("accountCenter.smartContracts",{default:F.accountCenter.smartContracts})+"")&&D(o,r),u&32&&c!==(c=f[5]("accountCenter.explore",{default:F.accountCenter.explore})+"")&&D(i,c)},d(f){f&&W(t)}}}function pn(e){let t,n,r,o,l,a=[],c=new Map,i,f,u,v,h,_,m,b,g,k,w,z=e[5]("accountCenter.currentNetwork",{default:F.accountCenter.currentNetwork})+"",H,I,C,j,te,q,B,N,J,oe,U,le,ye,E,$,K,ae,qe=e[5]("accountCenter.backToApp",{default:F.accountCenter.backToApp})+"",Ve,Ge,de,Te,ne,De,Ze,P=e[1]&&st(e),ze=e[0];const Oe=V=>V[19].label;for(let V=0;V{P=null}),ve()),M&5&&(ze=e[0],pe(),a=pt(a,M,Oe,1,e,ze,c,l,zt,ct,null,it),ve()),e[10].type==="desktop"&&ue.p(e,M);const Y={};M&16&&(Y.color=e[4]?e[4].icon?void 0:"#EFF1FC":"#FFAF00"),M&24&&(Y.customBackgroundColor=e[4]?e[4].color||e[3]&&e[3].color||ie.color:"#FFE7B3"),M&24&&(Y.icon=e[4]?e[4].icon||e[3]&&e[3].icon||ie.icon:Me),m.$set(Y),e[4]?X?M&16&&y(X,1):(X=dt(),X.c(),y(X,1),X.m(_,null)):X&&(pe(),S(X,1,1,()=>{X=null}),ve()),(!ne||M&32)&&z!==(z=e[5]("accountCenter.currentNetwork",{default:F.accountCenter.currentNetwork})+"")&&D(H,z),e[8]&&(e[8].gettingStartedGuide||e[8].explore)&&fe.p(e,M),(!ne||M&32)&&qe!==(qe=e[5]("accountCenter.backToApp",{default:F.accountCenter.backToApp})+"")&&D(Ve,qe),(!ne||M&24)&&Q(v,"background-blue",e[4]&&e[4].icon||e[3]),(!ne||M&16)&&Q(v,"background-yellow",!e[4]),(!ne||M&24)&&Q(v,"background-gray",e[4]&&!e[3])},i(V){if(!ne){y(P);for(let M=0;M{Te=Ie(n,At,{delay:e[9].includes("top")?100:0,duration:600,y:e[9].includes("top")?56:-76,easing:$t,opacity:0}),Te.start()}),ne=!0}},o(V){S(P);for(let M=0;Mn(0,c=C)),x(e,Ee,C=>n(5,i=C));function f(){c.forEach(({label:C})=>bt({label:C}))}const{chains:u}=$e.get(),{appMetadata:v}=He;let h=!1,_;const{position:m}=$e.get().accountCenter,{device:b}=He;function g(C){gt.call(this,e,C)}const k=()=>n(1,h=!1);function w(C){_=C,n(2,_)}const z=()=>qt(),H=()=>n(1,h=!0),I=()=>Le({expanded:!1});return e.$$.update=()=>{e.$$.dirty&1&&n(12,[r]=c,r),e.$$.dirty&4096&&n(11,[o]=r?r.chains:[],o),e.$$.dirty&2048&&n(4,l=u.find(({id:C,namespace:j})=>o?C===o.id&&j===o.namespace:!1)),e.$$.dirty&2048&&n(3,a=vt(o&&o.id))},[c,h,_,a,l,i,f,u,v,m,b,o,r,g,k,w,z,H,I]}class mn extends be{constructor(t){super(),ge(this,t,vn,pn,he,{},sn)}}function bn(e){ke(e,"svelte-15oro6i",`.minimized.svelte-15oro6i{--background-color:var(--account-center-minimized-background, var(--w3o-background-color, white));--text-color:var(--w3o-text-color, var(--gray-700));--border-color:var(--account-center-border, var(--w3o-border-color, var(--onboard-gray-200, var(--gray-200))));--border-radius:var(--account-center-border-radius, var(--w3o-border-radius, 1rem));cursor:pointer;pointer-events:auto;width:100%;padding:0.5rem;border:1px solid;background:var(--background-color);color:var(--text-color);border-color:var(--border-color);border-radius:var(--border-radius);box-shadow:var( - --account-center-box-shadow, - var(--onboard-shadow-3, var(--shadow-3)) - )}.inner-row.svelte-15oro6i{display:flex;flex-flow:row nowrap;align-items:center;gap:0.5rem;padding:0 0.25rem}.wallet-info.svelte-15oro6i{display:flex;flex:1;flex-flow:column;height:2.5rem;overflow:hidden}.address.svelte-15oro6i{font-weight:700;line-height:1.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--account-center-minimized-address-color, inherit)}.balance.svelte-15oro6i{font-weight:400;line-height:1.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;opacity:0.6;color:var(--account-center-minimized-balance-color, inherit)}.chain-icon.svelte-15oro6i{width:22px;height:22px;padding:4px;border-radius:25px;margin-right:4px}.container.svelte-15oro6i{border:1px solid transparent;border-radius:16px;padding:1px;transition:border-color 250ms ease-in-out, backround 250ms ease-in-out;max-width:128px;cursor:default}.drop-shadow.svelte-15oro6i{filter:drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2))}.color-yellow.svelte-15oro6i{color:var( - --account-center-chain-warning, - var(--onboard-warning-500, var(--warning-500)) - )}.color-white.svelte-15oro6i{color:var(--onboard-primary-100, var(--primary-100))}`)}function ut(e){let t,n=(e[4].length>8?e[4].slice(0,8):e[4])+"",r,o,l,a;return{c(){t=p("div"),r=T(n),o=A(),l=T(e[1]),d(t,"class","balance svelte-15oro6i")},m(c,i){L(c,t,i),s(t,r),s(t,o),s(t,l)},p(c,i){i&16&&n!==(n=(c[4].length>8?c[4].slice(0,8):c[4])+"")&&D(r,n),i&2&&D(l,c[1])},i(c){a||Se(()=>{a=Ie(t,Ae,{}),a.start()})},o:ce,d(c){c&&W(t)}}}function gn(e){let t,n,r,o,l,a,c,i,f,u,v,h,_,m,b=(e[7]?ee(e[7]):e[6]?ee(e[6]):e[5])+"",g,k,w,z,H,I,C,j=(e[3]?e[3].icon||e[2]&&e[2].icon||ie.icon:Me)+"",te,q,B,N,J,oe,U,le,ye;l=new me({props:{size:32,padding:4,background:"white",border:"darkGreen",radius:8,icon:e[8]}}),i=new me({props:{size:32,padding:4,background:"green",border:"darkGreen",radius:8,icon:e[0]?e[0].icon:""}}),v=new We({props:{size:14}});let E=e[4]&&ut(e);return B=new wt({props:{chains:e[9],colorVar:"--account-center-minimized-network-selector-color",selectIcon:ht,parentCSSId:"minimized_ac"}}),{c(){t=p("div"),n=p("div"),r=p("div"),o=p("div"),G(l.$$.fragment),a=A(),c=p("div"),G(i.$$.fragment),f=A(),u=p("div"),G(v.$$.fragment),h=A(),_=p("div"),m=p("div"),g=T(b),k=A(),E&&E.c(),w=A(),z=p("div"),H=p("div"),I=p("div"),C=p("div"),q=A(),G(B.$$.fragment),d(o,"class","drop-shadow svelte-15oro6i"),se(c,"margin-left","-0.5rem"),d(c,"class","drop-shadow svelte-15oro6i"),se(u,"right","-4px"),se(u,"bottom","-4px"),d(u,"class","drop-shadow absolute svelte-15oro6i"),d(r,"class","flex relative"),d(m,"class","address svelte-15oro6i"),d(_,"class","wallet-info svelte-15oro6i"),d(C,"class","chain-icon flex justify-center items-center svelte-15oro6i"),d(C,"style",te=`background-color: ${e[3]?e[3].color||e[2]&&e[2].color||ie.color:"var(--onboard-warning-200, var(--warning-200))"};`),Q(C,"color-yellow",!e[3]),Q(C,"color-white",e[3]&&!e[3].icon),d(I,"class","flex items-center"),d(H,"class","container shadow-1 flex items-center svelte-15oro6i"),d(H,"style",N=`border-color: var(${e[3]?"--onboard-primary-200, var(--primary-200)":"--onboard-warning-500, var(--warning-500)"}); background-color: var(${e[3]?"--account-center-minimized-chain-select-background, var(--primary-100)":"--account-center-minimized-chain-select-background-warning, var(--warning-100)"})`),d(z,"class","network"),d(n,"class","inner-row svelte-15oro6i"),d(t,"class","minimized svelte-15oro6i")},m($,K){L($,t,K),s(t,n),s(n,r),s(r,o),Z(l,o,null),s(r,a),s(r,c),Z(i,c,null),s(r,f),s(r,u),Z(v,u,null),s(n,h),s(n,_),s(_,m),s(m,g),s(_,k),E&&E.m(_,null),s(n,w),s(n,z),s(z,H),s(H,I),s(I,C),C.innerHTML=j,s(I,q),Z(B,I,null),U=!0,le||(ye=[R(H,"click",re(e[14])),R(t,"click",re(e[10]))],le=!0)},p($,[K]){const ae={};K&1&&(ae.icon=$[0]?$[0].icon:""),i.$set(ae),(!U||K&224)&&b!==(b=($[7]?ee($[7]):$[6]?ee($[6]):$[5])+"")&&D(g,b),$[4]?E?(E.p($,K),K&16&&y(E,1)):(E=ut($),E.c(),y(E,1),E.m(_,null)):E&&(E.d(1),E=null),(!U||K&12)&&j!==(j=($[3]?$[3].icon||$[2]&&$[2].icon||ie.icon:Me)+"")&&(C.innerHTML=j),(!U||K&12&&te!==(te=`background-color: ${$[3]?$[3].color||$[2]&&$[2].color||ie.color:"var(--onboard-warning-200, var(--warning-200))"};`))&&d(C,"style",te),(!U||K&8)&&Q(C,"color-yellow",!$[3]),(!U||K&8)&&Q(C,"color-white",$[3]&&!$[3].icon),(!U||K&8&&N!==(N=`border-color: var(${$[3]?"--onboard-primary-200, var(--primary-200)":"--onboard-warning-500, var(--warning-500)"}); background-color: var(${$[3]?"--account-center-minimized-chain-select-background, var(--primary-100)":"--account-center-minimized-chain-select-background-warning, var(--warning-100)"})`))&&d(H,"style",N)},i($){U||(y(l.$$.fragment,$),y(i.$$.fragment,$),y(v.$$.fragment,$),y(E),y(B.$$.fragment,$),Se(()=>{oe&&oe.end(1),J=Ie(t,Ae,{duration:250}),J.start()}),U=!0)},o($){S(l.$$.fragment,$),S(i.$$.fragment,$),S(v.$$.fragment,$),S(B.$$.fragment,$),J&&J.invalidate(),oe=Mt(t,Ae,{duration:100}),U=!1},d($){$&&W(t),O(l),O(i),O(v),E&&E.d(),O(B),$&&oe&&oe.end(),le=!1,Ce(ye)}}}function hn(e,t,n){let r,o,l,a,c,i,f,u,v,h,_;x(e,_e,z=>n(13,_=z));const{appMetadata:m}=He,b=m&&m.icon||je,g=$e.get().chains;function k(){Le({expanded:!0})}function w(z){gt.call(this,e,z)}return e.$$.update=()=>{e.$$.dirty&8192&&n(0,[r]=_,r),e.$$.dirty&1&&n(12,[o]=r?r.accounts:[],o),e.$$.dirty&4096&&n(7,l=o&&o.ens&&ee(o.ens.name)),e.$$.dirty&4096&&n(6,a=o&&o.uns&&ee(o.uns.name)),e.$$.dirty&4096&&n(5,c=o?Ne(o.address):""),e.$$.dirty&4096&&n(1,[i]=o&&o.balance?Object.keys(o.balance):[],i),e.$$.dirty&4098&&n(4,f=o&&o.balance?o.balance[i]:null),e.$$.dirty&1&&n(11,u=r&&r.chains[0]),e.$$.dirty&2048&&n(3,v=g.find(({id:z,namespace:H})=>u?z===u.id&&H===u.namespace:!1)),e.$$.dirty&2048&&n(2,h=vt(u&&u.id))},[r,i,h,v,f,c,a,l,b,g,k,u,o,_,w]}class wn extends be{constructor(t){super(),ge(this,t,hn,gn,he,{},bn)}}function _n(e){ke(e,"svelte-15xtubp",`.minimized.svelte-15xtubp{--background-color:var(--account-center-micro-background, var(--w3o-background-color, white));--text-color:var(--w3o-text-color);--border-color:var(--account-center-border, var(--w3o-border-color, var(--onboard-gray-200, var(--gray-200))));--border-radius:var(--account-center-border-radius, var(--w3o-border-radius, 1rem));cursor:pointer;pointer-events:auto;border:1px solid transparent;background:var(--background-color);color:var(--text-color);border-color:var(--border-color);border-radius:var(--border-radius);box-shadow:var( - --account-center-box-shadow, - var(--onboard-shadow-3, var(--shadow-3)) - )}.drop-shadow.svelte-15xtubp{filter:drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2))}.inner-row.svelte-15xtubp{display:flex;flex-flow:row nowrap;width:80px;padding:0.75rem}.wallet-square-wrapper.svelte-15xtubp{position:relative;margin-left:-8px}.check-icon-wrapper.svelte-15xtubp{position:absolute;right:-4px;bottom:-4px}`)}function kn(e){let t,n,r,o,l,a,c,i,f,u,v,h,_,m;return o=new me({props:{size:32,padding:4,background:"white",border:"darkGreen",radius:8,icon:e[1]}}),i=new me({props:{size:32,padding:4,background:"green",border:"darkGreen",radius:8,icon:e[0]?e[0].icon:""}}),v=new We({props:{size:14}}),{c(){t=p("div"),n=p("div"),r=p("div"),G(o.$$.fragment),l=A(),a=p("div"),c=p("div"),G(i.$$.fragment),f=A(),u=p("div"),G(v.$$.fragment),d(r,"class","drop-shadow svelte-15xtubp"),d(c,"class","drop-shadow svelte-15xtubp"),d(u,"class","check-icon-wrapper drop-shadow svelte-15xtubp"),d(a,"class","wallet-square-wrapper svelte-15xtubp"),d(n,"class","inner-row svelte-15xtubp"),d(t,"class","minimized svelte-15xtubp")},m(b,g){L(b,t,g),s(t,n),s(n,r),Z(o,r,null),s(n,l),s(n,a),s(a,c),Z(i,c,null),s(a,f),s(a,u),Z(v,u,null),h=!0,_||(m=R(t,"click",re(e[2])),_=!0)},p(b,[g]){const k={};g&1&&(k.icon=b[0]?b[0].icon:""),i.$set(k)},i(b){h||(y(o.$$.fragment,b),y(i.$$.fragment,b),y(v.$$.fragment,b),h=!0)},o(b){S(o.$$.fragment,b),S(i.$$.fragment,b),S(v.$$.fragment,b),h=!1},d(b){b&&W(t),O(o),O(i),O(v),_=!1,m()}}}function Cn(e,t,n){let r,o;x(e,_e,i=>n(3,o=i));const{appMetadata:l}=He,a=l&&l.icon||je;function c(){Le({expanded:!0})}return e.$$.update=()=>{e.$$.dirty&8&&n(0,[r]=o,r)},[r,a,c,o]}class yn extends be{constructor(t){super(),ge(this,t,Cn,kn,he,{},_n)}}function zn(e){let t,n;return t=new mn({}),{c(){G(t.$$.fragment)},m(r,o){Z(t,r,o),n=!0},p:ce,i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){S(t.$$.fragment,r),n=!1},d(r){O(t,r)}}}function $n(e){let t,n;return t=new yn({}),{c(){G(t.$$.fragment)},m(r,o){Z(t,r,o),n=!0},p:ce,i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){S(t.$$.fragment,r),n=!1},d(r){O(t,r)}}}function An(e){let t,n;return t=new wn({}),{c(){G(t.$$.fragment)},m(r,o){Z(t,r,o),n=!0},p:ce,i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){S(t.$$.fragment,r),n=!1},d(r){O(t,r)}}}function Mn(e){let t,n,r=e[2].length&&ft();return{c(){r&&r.c(),t=we()},m(o,l){r&&r.m(o,l),L(o,t,l),n=!0},p(o,l){o[2].length?r?l&4&&y(r,1):(r=ft(),r.c(),y(r,1),r.m(t.parentNode,t)):r&&(pe(),S(r,1,1,()=>{r=null}),ve())},i(o){n||(y(r),n=!0)},o(o){S(r),n=!1},d(o){r&&r.d(o),o&&W(t)}}}function ft(e){let t,n,r;return n=new qn({}),{c(){t=p("div"),G(n.$$.fragment),d(t,"class","container flex flex-column fixed z-indexed")},m(o,l){L(o,t,l),Z(n,t,null),r=!0},i(o){r||(y(n.$$.fragment,o),r=!0)},o(o){S(n.$$.fragment,o),r=!1},d(o){o&&W(t),O(n)}}}function Sn(e){let t,n,r,o,l,a;const c=[Mn,An,$n,zn],i=[];function f(u,v){return u[0]?0:!u[1].expanded&&!u[1].minimal?1:!u[1].expanded&&u[1].minimal?2:3}return t=f(e),n=i[t]=c[t](e),{c(){n.c(),r=we()},m(u,v){i[t].m(u,v),L(u,r,v),o=!0,l||(a=R(window,"click",e[4]),l=!0)},p(u,[v]){let h=t;t=f(u),t===h?i[t].p(u,v):(pe(),S(i[h],1,1,()=>{i[h]=null}),ve(),n=i[t],n?n.p(u,v):(n=i[t]=c[t](u),n.c()),y(n,1),n.m(r.parentNode,r))},i(u){o||(y(n),o=!0)},o(u){S(n),o=!1},d(u){i[t].d(u),u&&W(r),l=!1,a()}}}function In(e,t,n){let r,o;x(e,_e,i=>n(2,o=i));let{mountInContainer:l=!1}=t;const a=$e.select("accountCenter").pipe(_t($e.get().accountCenter),kt(1));x(e,a,i=>n(1,r=i)),Ct(c);function c(){r.expanded&&Le({expanded:!1})}return e.$$set=i=>{"mountInContainer"in i&&n(0,l=i.mountInContainer)},[l,r,o,a,c]}class qn extends be{constructor(t){super(),ge(this,t,In,Sn,he,{mountInContainer:0})}}export{qn as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js.meta deleted file mode 100644 index d7919db06..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/Index-c6a19500-8864b476.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 0993992598dffe445a11b4946273771d -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js deleted file mode 100644 index c31942485..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js +++ /dev/null @@ -1,23 +0,0 @@ -const C=` -Icons/Illustrations/Logo_40x40_white_background - - - - - - - - - - - - - - - - - - - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js.meta deleted file mode 100644 index 2d28de124..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/alphawallet-eb2bedab.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 348d55b6403a8df4eb94ab4d2717b53e -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js deleted file mode 100644 index 9b5bc56d0..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js +++ /dev/null @@ -1,90 +0,0 @@ -const e=` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js.meta deleted file mode 100644 index c315f9b71..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/apexwallet-ea5f0b2c.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 0da804b19b13c67418e36415b26b624f -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js deleted file mode 100644 index 7155e3329..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js +++ /dev/null @@ -1,24 +0,0 @@ -const t=` - - - - - - - - - - - - - - - - - - - - - - -`;export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js.meta deleted file mode 100644 index 3cb7b1273..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/atoken-f422e6b4.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 4fada1de0bda05d488a7aa6fa36f732b -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js deleted file mode 100644 index d03cdf6fa..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js +++ /dev/null @@ -1,8 +0,0 @@ -const c=` - -`;export{c as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js.meta deleted file mode 100644 index e8f99723c..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bifrostwallet-b2843d3a.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 2dbf70625bb4af4459e9c97539a18025 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js deleted file mode 100644 index ca9224280..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js +++ /dev/null @@ -1,11 +0,0 @@ -const s=` - - - - - - - - - -`;export{s as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js.meta deleted file mode 100644 index 8bc9a12b3..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/binance-aad6707a.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 84e33d9d739db664584fac97367b7a54 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js deleted file mode 100644 index a890115ec..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js +++ /dev/null @@ -1,5 +0,0 @@ -const C=` - - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js.meta deleted file mode 100644 index eeeef9caf..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitkeep-8077dcef.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e56f1f1b769293f4a84d4b62d4bf021b -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js deleted file mode 100644 index 421ee92ac..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js +++ /dev/null @@ -1,22 +0,0 @@ -const e=` - - - - - - - - - - - - - - - - - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js.meta deleted file mode 100644 index 78e9effcd..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitpie-8ea44eae.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 6ada6112ef7c1124e980f4ea1e5a50a3 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js deleted file mode 100644 index a3584d613..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js +++ /dev/null @@ -1 +0,0 @@ -const t='';export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js.meta deleted file mode 100644 index 12a327da5..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/bitski-220980c2.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 880fed7e27b7ffe48b5928a120522349 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js deleted file mode 100644 index a9074dbe2..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js +++ /dev/null @@ -1,5 +0,0 @@ -const l=` - - - -`;export{l as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js.meta deleted file mode 100644 index 2aa3543df..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/blockwallet-1235c6b8.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d87c03d4e9e7cb84e99a03d0931e4a43 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js deleted file mode 100644 index f5998d7a0..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js +++ /dev/null @@ -1,32 +0,0 @@ -const C=` - - brave-browser - - - - - - - - - - - - - - - - - - - - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js.meta deleted file mode 100644 index fde55c21d..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/brave-889178d1.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: b24d7690d59580b45948d2e8c27b6cbb -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js deleted file mode 100644 index e0a7d4e4a..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js +++ /dev/null @@ -1,6 +0,0 @@ -const e=` - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js.meta deleted file mode 100644 index b56a9cfa8..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/coinbase-8194cd0a.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 70f72b66312b4e24bad87923e6e3db8e -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js deleted file mode 100644 index 8f55f717f..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js +++ /dev/null @@ -1,4 +0,0 @@ -const C=` - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js.meta deleted file mode 100644 index 84cbbba97..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/core-1c42229d.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d3bd156b7d525b64ca5fa1042499ab14 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js deleted file mode 100644 index 495cda11b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js +++ /dev/null @@ -1,7 +0,0 @@ -const L=` - - -`;export{L as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js.meta deleted file mode 100644 index e31fe963a..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/defiwallet-99978b81.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d49c9c6988df7ab459ff7883b6a448a7 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js deleted file mode 100644 index b0cccec47..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js +++ /dev/null @@ -1,3 +0,0 @@ -const t=` - -`;export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js.meta deleted file mode 100644 index 4e0e9c181..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/detected-641a4aef.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 26b437f77b7f11248a96c6b6fe63837f -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js deleted file mode 100644 index 14381942b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js +++ /dev/null @@ -1,17 +0,0 @@ -const c=` - - - - - - - -`;export{c as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js.meta deleted file mode 100644 index 5d706ae78..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/enkrypt-b1f25ae2.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: eb6c3ba098b0d384cac3b259ea48cc0e -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js deleted file mode 100644 index ca7da175e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js +++ /dev/null @@ -1 +0,0 @@ -const M="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIyIiBoZWlnaHQ9IjEyNCIgdmlld0JveD0iMCAwIDEyMiAxMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxtYXNrIGlkPSJtYXNrMF8zMF8xMTAiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMjIiIGhlaWdodD0iMTI0Ij4KPHBhdGggZD0iTTEyMS43ODcgMzQuODMzMUw2OS4zODc2IDAuNDc2NTYyVjE5LjY4NTVMMTAzLjAwMiA0MS41Mjg4TDk5LjA0NzQgNTQuMDQySDY5LjM4NzZWNjkuOTU4SDk5LjA0NzRMMTAzLjAwMiA4Mi40NzEyTDY5LjM4NzYgMTA0LjMxNFYxMjMuNTIzTDEyMS43ODcgODkuMjc2N0wxMTMuMjE4IDYyLjA1NDlMMTIxLjc4NyAzNC44MzMxWiIgZmlsbD0iIzFEMUQxQiIvPgo8cGF0aCBkPSJNMjMuNzk5MyA2OS45NThINTMuMzQ5M1Y1NC4wNDJIMjMuNjg5NEwxOS44NDQ2IDQxLjUyODhMNTMuMzQ5MyAxOS42ODU1VjAuNDc2NTYyTDAuOTUwMTk1IDM0LjgzMzFMOS41MTg2IDYyLjA1NDlMMC45NTAxOTUgODkuMjc2N0w1My40NTkxIDEyMy41MjNWMTA0LjMxNEwxOS44NDQ2IDgyLjQ3MTJMMjMuNzk5MyA2OS45NThaIiBmaWxsPSIjMUQxRDFCIi8+CjwvbWFzaz4KPGcgbWFzaz0idXJsKCNtYXNrMF8zMF8xMTApIj4KPHBhdGggZD0iTTEyMS43ODcgMzQuODMzMUw2OS4zODc2IDAuNDc2NTYyVjE5LjY4NTVMMTAzLjAwMiA0MS41Mjg4TDk5LjA0NzQgNTQuMDQySDY5LjM4NzZWNjkuOTU4SDk5LjA0NzRMMTAzLjAwMiA4Mi40NzEyTDY5LjM4NzYgMTA0LjMxNFYxMjMuNTIzTDEyMS43ODcgODkuMjc2N0wxMTMuMjE4IDYyLjA1NDlMMTIxLjc4NyAzNC44MzMxWiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTIzLjc5OTMgNjkuOTU4SDUzLjM0OTNWNTQuMDQySDIzLjY4OTRMMTkuODQ0NiA0MS41Mjg4TDUzLjM0OTMgMTkuNjg1NVYwLjQ3NjU2MkwwLjk1MDE5NSAzNC44MzMxTDkuNTE4NiA2Mi4wNTQ5TDAuOTUwMTk1IDg5LjI3NjdMNTMuNDU5MSAxMjMuNTIzVjEwNC4zMTRMMTkuODQ0NiA4Mi40NzEyTDIzLjc5OTMgNjkuOTU4WiIgZmlsbD0id2hpdGUiLz4KPHJlY3QgeD0iMS4xMDYzMiIgeT0iMC40NzY1NjIiIHdpZHRoPSIxMzMuNzQ0IiBoZWlnaHQ9IjEzNi4wODUiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl8zMF8xMTApIi8+CjxlbGxpcHNlIGN4PSI4LjQzMTc2IiBjeT0iMjcuNDYwMiIgcng9IjExNy42MzkiIHJ5PSIxMjcuNTQ1IiB0cmFuc2Zvcm09InJvdGF0ZSgtMzMuOTMwMyA4LjQzMTc2IDI3LjQ2MDIpIiBmaWxsPSJ1cmwoI3BhaW50MV9yYWRpYWxfMzBfMTEwKSIvPgo8L2c+CjxkZWZzPgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfMzBfMTEwIiB4MT0iMTA1LjA4NCIgeTE9IjEzMi41OTQiIHgyPSI2OS44NDM5IiB5Mj0iLTEyLjI3NjUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzBCNDZGOSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNCQkZCRTAiLz4KPC9saW5lYXJHcmFkaWVudD4KPHJhZGlhbEdyYWRpZW50IGlkPSJwYWludDFfcmFkaWFsXzMwXzExMCIgY3g9IjAiIGN5PSIwIiByPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSg4LjQzMTc1IDI3LjQ2MDIpIHJvdGF0ZSg3Mi4yNTU3KSBzY2FsZSg5Ni40OTc5IDkwLjQ1NDMpIj4KPHN0b3Agb2Zmc2V0PSIwLjExOTc5MiIgc3RvcC1jb2xvcj0iIzg5NTJGRiIgc3RvcC1vcGFjaXR5PSIwLjg3Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0RBQkRGRiIgc3RvcC1vcGFjaXR5PSIwIi8+CjwvcmFkaWFsR3JhZGllbnQ+CjwvZGVmcz4KPC9zdmc+Cg==";export{M as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js.meta deleted file mode 100644 index 6a313ddfe..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/exodus-358b5e9e.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 3cb462311718cf640889220fcf6e4cee -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js deleted file mode 100644 index f002580f5..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js +++ /dev/null @@ -1,4 +0,0 @@ -const a=` - - -`;export{a as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js.meta deleted file mode 100644 index 7f421b3f0..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frame-48635667.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 614cc9d4e834c9a439b0505b681304d6 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js deleted file mode 100644 index d92bc7fd8..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js +++ /dev/null @@ -1,5 +0,0 @@ -const e=` - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js.meta deleted file mode 100644 index c01256d21..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/frontier-035eb74c.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: bfec3317732ce654a87a3b1f63526556 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js deleted file mode 100644 index add2ee3af..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js +++ /dev/null @@ -1,7 +0,0 @@ -const l=` - - - - - -`;export{l as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js.meta deleted file mode 100644 index 73f80e087..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/gamestop-0e4c1409.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 6f689d441bba63b48bc10a05f83083f0 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js deleted file mode 100644 index a92713277..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js +++ /dev/null @@ -1,11 +0,0 @@ -const l=` - - - - - - - - - -`;export{l as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js.meta deleted file mode 100644 index 98db19b38..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/huobiwallet-c6da4601.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: cbb0888472c97074c8912f6137113021 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js deleted file mode 100644 index ee591604c..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js +++ /dev/null @@ -1,4 +0,0 @@ -const C=` - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js.meta deleted file mode 100644 index 90e6124a0..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/hyperpay-75c22b59.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 5dd0bd4a71176af47b77d1b94add6cfc -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js deleted file mode 100644 index 45a819d1e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js +++ /dev/null @@ -1,7 +0,0 @@ -const t=` - - - - - -`;export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js.meta deleted file mode 100644 index 52fa705cd..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-4f874681.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 534693eedd38f2747ac5450a13dd5c70 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js deleted file mode 100644 index 9fdcf8305..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js +++ /dev/null @@ -1,10 +0,0 @@ -const c=` - - - -`;export{c as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js.meta deleted file mode 100644 index 5122f10d3..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/icon-e08798cb.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a19972b6241c20142b8af6c69db691c1 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js deleted file mode 100644 index ab68a8a3c..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js +++ /dev/null @@ -1,14 +0,0 @@ -const o=` - - - - - - - - - - - - -`;export{o as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js.meta deleted file mode 100644 index 0e3162282..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/imtoken-4be0a845.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 884c5dcbc1c68534e91cacb0b6ad30a1 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js deleted file mode 100644 index 05a257a70..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js +++ /dev/null @@ -1 +0,0 @@ -import{d as R,r as Lt,B as O,L as x,D as Ln,s as Ct,a as K,t as Dn,k as Qt,c as be,h as Q,b as ke,e as Dt,f as le,g as Wt,i as fn,j as Bt,l as ue,m as se,n as qn,o as Fn,p as sr,q as Ee,u as Wr,v as Xr,Z as Un,w as Ht,x as Fe,y as Gn,z as or,A as zn,C as ar,E as ki,F as pe,G as Jn}from"./index-b28afd98.js";const Kn="abstract-provider/5.7.0";var Hn=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Qn=new x(Kn);class jn extends Ln{static isForkEvent(t){return!!(t&&t._isForkEvent)}}class fr{constructor(){Qn.checkAbstract(new.target,fr),R(this,"_isProvider",!0)}getFeeData(){return Hn(this,void 0,void 0,function*(){const{block:t,gasPrice:e}=yield Lt({block:this.getBlock("latest"),gasPrice:this.getGasPrice().catch(a=>null)});let r=null,n=null,i=null;return t&&t.baseFeePerGas&&(r=t.baseFeePerGas,i=O.from("1500000000"),n=t.baseFeePerGas.mul(2).add(i)),{lastBaseFeePerGas:r,maxFeePerGas:n,maxPriorityFeePerGas:i,gasPrice:e}})}addListener(t,e){return this.on(t,e)}removeListener(t,e){return this.off(t,e)}static isProvider(t){return!!(t&&t._isProvider)}}const Yn="abstract-signer/5.7.0";var ee=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const re=new x(Yn),Wn=["accessList","ccipReadEnabled","chainId","customData","data","from","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","nonce","to","type","value"],Xn=[x.errors.INSUFFICIENT_FUNDS,x.errors.NONCE_EXPIRED,x.errors.REPLACEMENT_UNDERPRICED];class Vr{constructor(){re.checkAbstract(new.target,Vr),R(this,"_isSigner",!0)}getBalance(t){return ee(this,void 0,void 0,function*(){return this._checkProvider("getBalance"),yield this.provider.getBalance(this.getAddress(),t)})}getTransactionCount(t){return ee(this,void 0,void 0,function*(){return this._checkProvider("getTransactionCount"),yield this.provider.getTransactionCount(this.getAddress(),t)})}estimateGas(t){return ee(this,void 0,void 0,function*(){this._checkProvider("estimateGas");const e=yield Lt(this.checkTransaction(t));return yield this.provider.estimateGas(e)})}call(t,e){return ee(this,void 0,void 0,function*(){this._checkProvider("call");const r=yield Lt(this.checkTransaction(t));return yield this.provider.call(r,e)})}sendTransaction(t){return ee(this,void 0,void 0,function*(){this._checkProvider("sendTransaction");const e=yield this.populateTransaction(t),r=yield this.signTransaction(e);return yield this.provider.sendTransaction(r)})}getChainId(){return ee(this,void 0,void 0,function*(){return this._checkProvider("getChainId"),(yield this.provider.getNetwork()).chainId})}getGasPrice(){return ee(this,void 0,void 0,function*(){return this._checkProvider("getGasPrice"),yield this.provider.getGasPrice()})}getFeeData(){return ee(this,void 0,void 0,function*(){return this._checkProvider("getFeeData"),yield this.provider.getFeeData()})}resolveName(t){return ee(this,void 0,void 0,function*(){return this._checkProvider("resolveName"),yield this.provider.resolveName(t)})}checkTransaction(t){for(const r in t)Wn.indexOf(r)===-1&&re.throwArgumentError("invalid transaction key: "+r,"transaction",t);const e=Ct(t);return e.from==null?e.from=this.getAddress():e.from=Promise.all([Promise.resolve(e.from),this.getAddress()]).then(r=>(r[0].toLowerCase()!==r[1].toLowerCase()&&re.throwArgumentError("from address mismatch","transaction",t),r[0])),e}populateTransaction(t){return ee(this,void 0,void 0,function*(){const e=yield Lt(this.checkTransaction(t));e.to!=null&&(e.to=Promise.resolve(e.to).then(n=>ee(this,void 0,void 0,function*(){if(n==null)return null;const i=yield this.resolveName(n);return i==null&&re.throwArgumentError("provided ENS name resolves to null","tx.to",n),i})),e.to.catch(n=>{}));const r=e.maxFeePerGas!=null||e.maxPriorityFeePerGas!=null;if(e.gasPrice!=null&&(e.type===2||r)?re.throwArgumentError("eip-1559 transaction do not support gasPrice","transaction",t):(e.type===0||e.type===1)&&r&&re.throwArgumentError("pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas","transaction",t),(e.type===2||e.type==null)&&e.maxFeePerGas!=null&&e.maxPriorityFeePerGas!=null)e.type=2;else if(e.type===0||e.type===1)e.gasPrice==null&&(e.gasPrice=this.getGasPrice());else{const n=yield this.getFeeData();if(e.type==null)if(n.maxFeePerGas!=null&&n.maxPriorityFeePerGas!=null)if(e.type=2,e.gasPrice!=null){const i=e.gasPrice;delete e.gasPrice,e.maxFeePerGas=i,e.maxPriorityFeePerGas=i}else e.maxFeePerGas==null&&(e.maxFeePerGas=n.maxFeePerGas),e.maxPriorityFeePerGas==null&&(e.maxPriorityFeePerGas=n.maxPriorityFeePerGas);else n.gasPrice!=null?(r&&re.throwError("network does not support EIP-1559",x.errors.UNSUPPORTED_OPERATION,{operation:"populateTransaction"}),e.gasPrice==null&&(e.gasPrice=n.gasPrice),e.type=0):re.throwError("failed to get consistent fee data",x.errors.UNSUPPORTED_OPERATION,{operation:"signer.getFeeData"});else e.type===2&&(e.maxFeePerGas==null&&(e.maxFeePerGas=n.maxFeePerGas),e.maxPriorityFeePerGas==null&&(e.maxPriorityFeePerGas=n.maxPriorityFeePerGas))}return e.nonce==null&&(e.nonce=this.getTransactionCount("pending")),e.gasLimit==null&&(e.gasLimit=this.estimateGas(e).catch(n=>{if(Xn.indexOf(n.code)>=0)throw n;return re.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",x.errors.UNPREDICTABLE_GAS_LIMIT,{error:n,tx:e})})),e.chainId==null?e.chainId=this.getChainId():e.chainId=Promise.all([Promise.resolve(e.chainId),this.getChainId()]).then(n=>(n[1]!==0&&n[0]!==n[1]&&re.throwArgumentError("chainId address mismatch","transaction",t),n[0])),yield Lt(e)})}_checkProvider(t){this.provider||re.throwError("missing provider",x.errors.UNSUPPORTED_OPERATION,{operation:t||"_checkProvider"})}static isSigner(t){return!!(t&&t._isSigner)}}const Vn="0x0000000000000000000000000000000000000000",Zn="0x0000000000000000000000000000000000000000000000000000000000000000",ln="hash/5.7.0";function un(s){s=atob(s);const t=[];for(let e=0;e0&&Array.isArray(u)?n(u,a-1):e.push(u)})};return n(s,t),e}function $n(s){const t={};for(let e=0;e>--h&1}const A=31,M=Math.pow(2,A),E=M>>>1,_=E>>1,I=M-1;let T=0;for(let F=0;F1;){let we=z+Vt>>>1;F>>1|p(),Kt=Kt<<1^E,Ft=(Ft^E)<<1|E|1;S=Kt,G=1+Ft-Kt}let J=r-4;return P.map(F=>{switch(F-J){case 3:return J+65792+(s[u++]<<16|s[u++]<<8|s[u++]);case 2:return J+256+(s[u++]<<8|s[u++]);case 1:return J+s[u++];default:return F-1}})}function es(s){let t=0;return()=>s[t++]}function rs(s){return es(ts(s))}function is(s){return s&1?~s>>1:s>>1}function ns(s,t){let e=Array(s);for(let r=0;rt[a]):e}function os(s){let t=[];for(;;){let e=s();if(e==0)break;t.push(fs(e,s))}for(;;){let e=s()-1;if(e<0)break;t.push(ls(e,s))}return $n(cn(t))}function as(s){let t=[];for(;;){let e=s();if(e==0)break;t.push(e)}return t}function dn(s,t,e){let r=Array(s).fill(void 0).map(()=>[]);for(let n=0;nr[a].push(i));return r}function fs(s,t){let e=1+t(),r=t(),n=as(t),i=dn(n.length,1+s,t);return cn(i.map((a,u)=>{const h=a[0],d=a.slice(1);return Array(n[u]).fill(void 0).map((p,A)=>{let M=A*r;return[h+A*e,d.map(E=>E+M)]})}))}function ls(s,t){let e=1+t();return dn(e,1+s,t).map(n=>[n[0],n.slice(1)])}function us(s){let t=tr(s).sort((r,n)=>r-n);return e();function e(){let r=[];for(;;){let d=tr(s,t);if(d.length==0)break;r.push({set:new Set(d),node:e()})}r.sort((d,p)=>p.set.size-d.set.size);let n=s(),i=n%3;n=n/3|0;let a=!!(n&1);n>>=1;let u=n==1,h=n==2;return{branches:r,valid:i,fe0f:a,save:u,check:h}}}function hs(){return rs(un("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"))}const lr=hs(),cs=new Set(tr(lr)),ds=new Set(tr(lr)),ps=os(lr),gs=us(lr),xi=45,Mi=95;function pn(s){return Dn(s)}function ms(s){return s.filter(t=>t!=65039)}function gn(s){for(let t of s.split(".")){let e=pn(t);try{for(let r=e.lastIndexOf(Mi)-1;r>=0;r--)if(e[r]!==Mi)throw new Error("underscore only allowed at start");if(e.length>=4&&e.every(r=>r<128)&&e[2]===xi&&e[3]===xi)throw new Error("invalid label extension")}catch(r){throw new Error(`Invalid label "${t}": ${r.message}`)}}return s}function vs(s){return gn(ws(s,ms))}function ws(s,t){let e=pn(s).reverse(),r=[];for(;e.length;){let n=As(e);if(n){r.push(...t(n));continue}let i=e.pop();if(cs.has(i)){r.push(i);continue}if(ds.has(i))continue;let a=ps[i];if(a){r.push(...a);continue}throw new Error(`Disallowed codepoint: 0x${i.toString(16).toUpperCase()}`)}return gn(ys(String.fromCodePoint(...r)))}function ys(s){return s.normalize("NFC")}function As(s,t){var e;let r=gs,n,i,a=[],u=s.length;for(t&&(t.length=0);u;){let h=s[--u];if(r=(e=r.branches.find(d=>d.set.has(h)))===null||e===void 0?void 0:e.node,!r)break;if(r.save)i=h;else if(r.check&&h===i)break;a.push(h),r.fe0f&&(a.push(65039),u>0&&s[u-1]==65039&&u--),r.valid&&(n=a.slice(),r.valid==2&&n.splice(1,1),t&&t.push(...s.slice(u).reverse()),s.length=u)}return n}const bs=new x(ln),mn=new Uint8Array(32);mn.fill(0);function _i(s){if(s.length===0)throw new Error("invalid ENS name; empty component");return s}function vn(s){const t=ke(vs(s)),e=[];if(s.length===0)return e;let r=0;for(let n=0;n=t.length)throw new Error("invalid ENS name; empty component");return e.push(_i(t.slice(r))),e}function Ye(s){typeof s!="string"&&bs.throwArgumentError("invalid ENS name; not a string","name",s);let t=mn;const e=vn(s);for(;e.length;)t=Qt(be([t,Qt(e.pop())]));return Q(t)}function ks(s){return Q(be(vn(s).map(t=>{if(t.length>63)throw new Error("invalid DNS encoded entry; length exceeds 63 bytes");const e=new Uint8Array(t.length+1);return e.set(t,1),e[0]=e.length-1,e})))+"00"}var Es=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Y=new x(ln),wn=new Uint8Array(32);wn.fill(0);const xs=O.from(-1),yn=O.from(0),An=O.from(1),Ms=O.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function _s(s){const t=K(s),e=t.length%32;return e?Wt([t,wn.slice(e)]):Q(t)}const Is=Dt(An.toHexString(),32),Ps=Dt(yn.toHexString(),32),Ii={name:"string",version:"string",chainId:"uint256",verifyingContract:"address",salt:"bytes32"},Tr=["name","version","chainId","verifyingContract","salt"];function Pi(s){return function(t){return typeof t!="string"&&Y.throwArgumentError(`invalid domain value for ${JSON.stringify(s)}`,`domain.${s}`,t),t}}const Ns={name:Pi("name"),version:Pi("version"),chainId:function(s){try{return O.from(s).toString()}catch{}return Y.throwArgumentError('invalid domain value for "chainId"',"domain.chainId",s)},verifyingContract:function(s){try{return ue(s).toLowerCase()}catch{}return Y.throwArgumentError('invalid domain value "verifyingContract"',"domain.verifyingContract",s)},salt:function(s){try{const t=K(s);if(t.length!==32)throw new Error("bad length");return Q(t)}catch{}return Y.throwArgumentError('invalid domain value "salt"',"domain.salt",s)}};function Br(s){{const t=s.match(/^(u?)int(\d*)$/);if(t){const e=t[1]==="",r=parseInt(t[2]||"256");(r%8!==0||r>256||t[2]&&t[2]!==String(r))&&Y.throwArgumentError("invalid numeric width","type",s);const n=Ms.mask(e?r-1:r),i=e?n.add(An).mul(xs):yn;return function(a){const u=O.from(a);return(u.lt(i)||u.gt(n))&&Y.throwArgumentError(`value out-of-bounds for ${s}`,"value",a),Dt(u.toTwos(256).toHexString(),32)}}}{const t=s.match(/^bytes(\d+)$/);if(t){const e=parseInt(t[1]);return(e===0||e>32||t[1]!==String(e))&&Y.throwArgumentError("invalid bytes width","type",s),function(r){return K(r).length!==e&&Y.throwArgumentError(`invalid length for ${s}`,"value",r),_s(r)}}}switch(s){case"address":return function(t){return Dt(ue(t),32)};case"bool":return function(t){return t?Is:Ps};case"bytes":return function(t){return Qt(t)};case"string":return function(t){return fn(t)}}return null}function Ni(s,t){return`${s}(${t.map(({name:e,type:r})=>r+" "+e).join(",")})`}class jt{constructor(t){R(this,"types",Object.freeze(le(t))),R(this,"_encoderCache",{}),R(this,"_types",{});const e={},r={},n={};Object.keys(t).forEach(u=>{e[u]={},r[u]=[],n[u]={}});for(const u in t){const h={};t[u].forEach(d=>{h[d.name]&&Y.throwArgumentError(`duplicate variable name ${JSON.stringify(d.name)} in ${JSON.stringify(u)}`,"types",t),h[d.name]=!0;const p=d.type.match(/^([^\x5b]*)(\x5b|$)/)[1];p===u&&Y.throwArgumentError(`circular type reference to ${JSON.stringify(p)}`,"types",t),!Br(p)&&(r[p]||Y.throwArgumentError(`unknown type ${JSON.stringify(p)}`,"types",t),r[p].push(u),e[u][p]=!0)})}const i=Object.keys(r).filter(u=>r[u].length===0);i.length===0?Y.throwArgumentError("missing primary type","types",t):i.length>1&&Y.throwArgumentError(`ambiguous primary types or unused types: ${i.map(u=>JSON.stringify(u)).join(", ")}`,"types",t),R(this,"primaryType",i[0]);function a(u,h){h[u]&&Y.throwArgumentError(`circular type reference to ${JSON.stringify(u)}`,"types",t),h[u]=!0,Object.keys(e[u]).forEach(d=>{r[d]&&(a(d,h),Object.keys(h).forEach(p=>{n[p][d]=!0}))}),delete h[u]}a(this.primaryType,{});for(const u in n){const h=Object.keys(n[u]);h.sort(),this._types[u]=Ni(u,t[u])+h.map(d=>Ni(d,t[d])).join("")}}getEncoder(t){let e=this._encoderCache[t];return e||(e=this._encoderCache[t]=this._getEncoder(t)),e}_getEncoder(t){{const n=Br(t);if(n)return n}const e=t.match(/^(.*)(\x5b(\d*)\x5d)$/);if(e){const n=e[1],i=this.getEncoder(n),a=parseInt(e[3]);return u=>{a>=0&&u.length!==a&&Y.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",u);let h=u.map(i);return this._types[n]&&(h=h.map(Qt)),Qt(Wt(h))}}const r=this.types[t];if(r){const n=fn(this._types[t]);return i=>{const a=r.map(({name:u,type:h})=>{const d=this.getEncoder(h)(i[u]);return this._types[h]?Qt(d):d});return a.unshift(n),Wt(a)}}return Y.throwArgumentError(`unknown type: ${t}`,"type",t)}encodeType(t){const e=this._types[t];return e||Y.throwArgumentError(`unknown type: ${JSON.stringify(t)}`,"name",t),e}encodeData(t,e){return this.getEncoder(t)(e)}hashStruct(t,e){return Qt(this.encodeData(t,e))}encode(t){return this.encodeData(this.primaryType,t)}hash(t){return this.hashStruct(this.primaryType,t)}_visit(t,e,r){if(Br(t))return r(t,e);const n=t.match(/^(.*)(\x5b(\d*)\x5d)$/);if(n){const a=n[1],u=parseInt(n[3]);return u>=0&&e.length!==u&&Y.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",e),e.map(h=>this._visit(a,h,r))}const i=this.types[t];return i?i.reduce((a,{name:u,type:h})=>(a[u]=this._visit(h,e[u],r),a),{}):Y.throwArgumentError(`unknown type: ${t}`,"type",t)}visit(t,e){return this._visit(this.primaryType,t,e)}static from(t){return new jt(t)}static getPrimaryType(t){return jt.from(t).primaryType}static hashStruct(t,e,r){return jt.from(e).hashStruct(t,r)}static hashDomain(t){const e=[];for(const r in t){const n=Ii[r];n||Y.throwArgumentError(`invalid typed-data domain key: ${JSON.stringify(r)}`,"domain",t),e.push({name:r,type:n})}return e.sort((r,n)=>Tr.indexOf(r.name)-Tr.indexOf(n.name)),jt.hashStruct("EIP712Domain",{EIP712Domain:e},t)}static encode(t,e,r){return Wt(["0x1901",jt.hashDomain(t),jt.from(e).hash(r)])}static hash(t,e,r){return Qt(jt.encode(t,e,r))}static resolveNames(t,e,r,n){return Es(this,void 0,void 0,function*(){t=Ct(t);const i={};t.verifyingContract&&!Bt(t.verifyingContract,20)&&(i[t.verifyingContract]="0x");const a=jt.from(e);a.visit(r,(u,h)=>(u==="address"&&!Bt(h,20)&&(i[h]="0x"),h));for(const u in i)i[u]=yield n(u);return t.verifyingContract&&i[t.verifyingContract]&&(t.verifyingContract=i[t.verifyingContract]),r=a.visit(r,(u,h)=>u==="address"&&i[h]?i[h]:h),{domain:t,value:r}})}static getPayload(t,e,r){jt.hashDomain(t);const n={},i=[];Tr.forEach(h=>{const d=t[h];d!=null&&(n[h]=Ns[h](d),i.push({name:h,type:Ii[h]}))});const a=jt.from(e),u=Ct(e);return u.EIP712Domain?Y.throwArgumentError("types must not contain EIP712Domain type","types.EIP712Domain",e):u.EIP712Domain=i,a.encode(r),{types:u,domain:n,primaryType:a.primaryType,message:a.visit(r,(h,d)=>{if(h.match(/^bytes(\d*)/))return Q(K(d));if(h.match(/^u?int/))return O.from(d).toString();switch(h){case"address":return d.toLowerCase();case"bool":return!!d;case"string":return typeof d!="string"&&Y.throwArgumentError("invalid string","value",d),d}return Y.throwArgumentError("unsupported type","type",h)})}}}class bn{constructor(t){R(this,"alphabet",t),R(this,"base",t.length),R(this,"_alphabetMap",{}),R(this,"_leader",t.charAt(0));for(let e=0;e0;)r.push(a%this.base),a=a/this.base|0}let n="";for(let i=0;e[i]===0&&i=0;--i)n+=this.alphabet[r[i]];return n}decode(t){if(typeof t!="string")throw new TypeError("Expected String");let e=[];if(t.length===0)return new Uint8Array(e);e.push(0);for(let r=0;r>=8;for(;i>0;)e.push(i&255),i>>=8}for(let r=0;t[r]===this._leader&&r0?o:l},i.min=function(o,l){return o.cmp(l)<0?o:l},i.prototype._init=function(o,l,c){if(typeof o=="number")return this._initNumber(o,l,c);if(typeof o=="object")return this._initArray(o,l,c);l==="hex"&&(l=16),r(l===(l|0)&&l>=2&&l<=36),o=o.toString().replace(/\s+/g,"");var m=0;o[0]==="-"&&(m++,this.negative=1),m=0;m-=3)b=o[m]|o[m-1]<<8|o[m-2]<<16,this.words[w]|=b<>>26-k&67108863,k+=24,k>=26&&(k-=26,w++);else if(c==="le")for(m=0,w=0;m>>26-k&67108863,k+=24,k>=26&&(k-=26,w++);return this._strip()};function u(y,o){var l=y.charCodeAt(o);if(l>=48&&l<=57)return l-48;if(l>=65&&l<=70)return l-55;if(l>=97&&l<=102)return l-87;r(!1,"Invalid character in "+y)}function h(y,o,l){var c=u(y,l);return l-1>=o&&(c|=u(y,l-1)<<4),c}i.prototype._parseHex=function(o,l,c){this.length=Math.ceil((o.length-l)/6),this.words=new Array(this.length);for(var m=0;m=l;m-=2)k=h(o,l,m)<=18?(w-=18,b+=1,this.words[b]|=k>>>26):w+=8;else{var g=o.length-l;for(m=g%2===0?l+1:l;m=18?(w-=18,b+=1,this.words[b]|=k>>>26):w+=8}this._strip()};function d(y,o,l,c){for(var m=0,w=0,b=Math.min(y.length,l),k=o;k=49?w=g-49+10:g>=17?w=g-17+10:w=g,r(g>=0&&w1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{i.prototype[Symbol.for("nodejs.util.inspect.custom")]=A}catch{i.prototype.inspect=A}else i.prototype.inspect=A;function A(){return(this.red?""}var M=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],E=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],_=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(o,l){o=o||10,l=l|0||1;var c;if(o===16||o==="hex"){c="";for(var m=0,w=0,b=0;b>>24-m&16777215,m+=2,m>=26&&(m-=26,b--),w!==0||b!==this.length-1?c=M[6-g.length]+g+c:c=g+c}for(w!==0&&(c=w.toString(16)+c);c.length%l!==0;)c="0"+c;return this.negative!==0&&(c="-"+c),c}if(o===(o|0)&&o>=2&&o<=36){var f=E[o],v=_[o];c="";var C=this.clone();for(C.negative=0;!C.isZero();){var B=C.modrn(v).toString(o);C=C.idivn(v),C.isZero()?c=B+c:c=M[f-B.length]+B+c}for(this.isZero()&&(c="0"+c);c.length%l!==0;)c="0"+c;return this.negative!==0&&(c="-"+c),c}r(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var o=this.words[0];return this.length===2?o+=this.words[1]*67108864:this.length===3&&this.words[2]===1?o+=4503599627370496+this.words[1]*67108864:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-o:o},i.prototype.toJSON=function(){return this.toString(16,2)},a&&(i.prototype.toBuffer=function(o,l){return this.toArrayLike(a,o,l)}),i.prototype.toArray=function(o,l){return this.toArrayLike(Array,o,l)};var I=function(o,l){return o.allocUnsafe?o.allocUnsafe(l):new o(l)};i.prototype.toArrayLike=function(o,l,c){this._strip();var m=this.byteLength(),w=c||Math.max(1,m);r(m<=w,"byte array longer than desired length"),r(w>0,"Requested array length <= 0");var b=I(o,w),k=l==="le"?"LE":"BE";return this["_toArrayLike"+k](b,m),b},i.prototype._toArrayLikeLE=function(o,l){for(var c=0,m=0,w=0,b=0;w>8&255),c>16&255),b===6?(c>24&255),m=0,b=0):(m=k>>>24,b+=2)}if(c=0&&(o[c--]=k>>8&255),c>=0&&(o[c--]=k>>16&255),b===6?(c>=0&&(o[c--]=k>>24&255),m=0,b=0):(m=k>>>24,b+=2)}if(c>=0)for(o[c--]=m;c>=0;)o[c--]=0},Math.clz32?i.prototype._countBits=function(o){return 32-Math.clz32(o)}:i.prototype._countBits=function(o){var l=o,c=0;return l>=4096&&(c+=13,l>>>=13),l>=64&&(c+=7,l>>>=7),l>=8&&(c+=4,l>>>=4),l>=2&&(c+=2,l>>>=2),c+l},i.prototype._zeroBits=function(o){if(o===0)return 26;var l=o,c=0;return l&8191||(c+=13,l>>>=13),l&127||(c+=7,l>>>=7),l&15||(c+=4,l>>>=4),l&3||(c+=2,l>>>=2),l&1||c++,c},i.prototype.bitLength=function(){var o=this.words[this.length-1],l=this._countBits(o);return(this.length-1)*26+l};function T(y){for(var o=new Array(y.bitLength()),l=0;l>>m&1}return o}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var o=0,l=0;lo.length?this.clone().ior(o):o.clone().ior(this)},i.prototype.uor=function(o){return this.length>o.length?this.clone().iuor(o):o.clone().iuor(this)},i.prototype.iuand=function(o){var l;this.length>o.length?l=o:l=this;for(var c=0;co.length?this.clone().iand(o):o.clone().iand(this)},i.prototype.uand=function(o){return this.length>o.length?this.clone().iuand(o):o.clone().iuand(this)},i.prototype.iuxor=function(o){var l,c;this.length>o.length?(l=this,c=o):(l=o,c=this);for(var m=0;mo.length?this.clone().ixor(o):o.clone().ixor(this)},i.prototype.uxor=function(o){return this.length>o.length?this.clone().iuxor(o):o.clone().iuxor(this)},i.prototype.inotn=function(o){r(typeof o=="number"&&o>=0);var l=Math.ceil(o/26)|0,c=o%26;this._expand(l),c>0&&l--;for(var m=0;m0&&(this.words[m]=~this.words[m]&67108863>>26-c),this._strip()},i.prototype.notn=function(o){return this.clone().inotn(o)},i.prototype.setn=function(o,l){r(typeof o=="number"&&o>=0);var c=o/26|0,m=o%26;return this._expand(c+1),l?this.words[c]=this.words[c]|1<o.length?(c=this,m=o):(c=o,m=this);for(var w=0,b=0;b>>26;for(;w!==0&&b>>26;if(this.length=c.length,w!==0)this.words[this.length]=w,this.length++;else if(c!==this)for(;bo.length?this.clone().iadd(o):o.clone().iadd(this)},i.prototype.isub=function(o){if(o.negative!==0){o.negative=0;var l=this.iadd(o);return o.negative=1,l._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(o),this.negative=1,this._normSign();var c=this.cmp(o);if(c===0)return this.negative=0,this.length=1,this.words[0]=0,this;var m,w;c>0?(m=this,w=o):(m=o,w=this);for(var b=0,k=0;k>26,this.words[k]=l&67108863;for(;b!==0&&k>26,this.words[k]=l&67108863;if(b===0&&k>>26,C=g&67108863,B=Math.min(f,o.length-1),L=Math.max(0,f-y.length+1);L<=B;L++){var Ut=f-L|0;m=y.words[Ut]|0,w=o.words[L]|0,b=m*w+C,v+=b/67108864|0,C=b&67108863}l.words[f]=C|0,g=v|0}return g!==0?l.words[f]=g|0:l.length--,l._strip()}var S=function(o,l,c){var m=o.words,w=l.words,b=c.words,k=0,g,f,v,C=m[0]|0,B=C&8191,L=C>>>13,Ut=m[1]|0,H=Ut&8191,j=Ut>>>13,ni=m[2]|0,X=ni&8191,V=ni>>>13,si=m[3]|0,Z=si&8191,$=si>>>13,oi=m[4]|0,tt=oi&8191,et=oi>>>13,ai=m[5]|0,rt=ai&8191,it=ai>>>13,fi=m[6]|0,nt=fi&8191,st=fi>>>13,li=m[7]|0,ot=li&8191,at=li>>>13,ui=m[8]|0,ft=ui&8191,lt=ui>>>13,hi=m[9]|0,ut=hi&8191,ht=hi>>>13,ci=w[0]|0,ct=ci&8191,dt=ci>>>13,di=w[1]|0,pt=di&8191,gt=di>>>13,pi=w[2]|0,mt=pi&8191,vt=pi>>>13,gi=w[3]|0,wt=gi&8191,yt=gi>>>13,mi=w[4]|0,At=mi&8191,bt=mi>>>13,vi=w[5]|0,kt=vi&8191,Et=vi>>>13,wi=w[6]|0,xt=wi&8191,Mt=wi>>>13,yi=w[7]|0,_t=yi&8191,It=yi>>>13,Ai=w[8]|0,Pt=Ai&8191,Nt=Ai>>>13,bi=w[9]|0,St=bi&8191,Rt=bi>>>13;c.negative=o.negative^l.negative,c.length=19,g=Math.imul(B,ct),f=Math.imul(B,dt),f=f+Math.imul(L,ct)|0,v=Math.imul(L,dt);var dr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(dr>>>26)|0,dr&=67108863,g=Math.imul(H,ct),f=Math.imul(H,dt),f=f+Math.imul(j,ct)|0,v=Math.imul(j,dt),g=g+Math.imul(B,pt)|0,f=f+Math.imul(B,gt)|0,f=f+Math.imul(L,pt)|0,v=v+Math.imul(L,gt)|0;var pr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(pr>>>26)|0,pr&=67108863,g=Math.imul(X,ct),f=Math.imul(X,dt),f=f+Math.imul(V,ct)|0,v=Math.imul(V,dt),g=g+Math.imul(H,pt)|0,f=f+Math.imul(H,gt)|0,f=f+Math.imul(j,pt)|0,v=v+Math.imul(j,gt)|0,g=g+Math.imul(B,mt)|0,f=f+Math.imul(B,vt)|0,f=f+Math.imul(L,mt)|0,v=v+Math.imul(L,vt)|0;var gr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(gr>>>26)|0,gr&=67108863,g=Math.imul(Z,ct),f=Math.imul(Z,dt),f=f+Math.imul($,ct)|0,v=Math.imul($,dt),g=g+Math.imul(X,pt)|0,f=f+Math.imul(X,gt)|0,f=f+Math.imul(V,pt)|0,v=v+Math.imul(V,gt)|0,g=g+Math.imul(H,mt)|0,f=f+Math.imul(H,vt)|0,f=f+Math.imul(j,mt)|0,v=v+Math.imul(j,vt)|0,g=g+Math.imul(B,wt)|0,f=f+Math.imul(B,yt)|0,f=f+Math.imul(L,wt)|0,v=v+Math.imul(L,yt)|0;var mr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(mr>>>26)|0,mr&=67108863,g=Math.imul(tt,ct),f=Math.imul(tt,dt),f=f+Math.imul(et,ct)|0,v=Math.imul(et,dt),g=g+Math.imul(Z,pt)|0,f=f+Math.imul(Z,gt)|0,f=f+Math.imul($,pt)|0,v=v+Math.imul($,gt)|0,g=g+Math.imul(X,mt)|0,f=f+Math.imul(X,vt)|0,f=f+Math.imul(V,mt)|0,v=v+Math.imul(V,vt)|0,g=g+Math.imul(H,wt)|0,f=f+Math.imul(H,yt)|0,f=f+Math.imul(j,wt)|0,v=v+Math.imul(j,yt)|0,g=g+Math.imul(B,At)|0,f=f+Math.imul(B,bt)|0,f=f+Math.imul(L,At)|0,v=v+Math.imul(L,bt)|0;var vr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(vr>>>26)|0,vr&=67108863,g=Math.imul(rt,ct),f=Math.imul(rt,dt),f=f+Math.imul(it,ct)|0,v=Math.imul(it,dt),g=g+Math.imul(tt,pt)|0,f=f+Math.imul(tt,gt)|0,f=f+Math.imul(et,pt)|0,v=v+Math.imul(et,gt)|0,g=g+Math.imul(Z,mt)|0,f=f+Math.imul(Z,vt)|0,f=f+Math.imul($,mt)|0,v=v+Math.imul($,vt)|0,g=g+Math.imul(X,wt)|0,f=f+Math.imul(X,yt)|0,f=f+Math.imul(V,wt)|0,v=v+Math.imul(V,yt)|0,g=g+Math.imul(H,At)|0,f=f+Math.imul(H,bt)|0,f=f+Math.imul(j,At)|0,v=v+Math.imul(j,bt)|0,g=g+Math.imul(B,kt)|0,f=f+Math.imul(B,Et)|0,f=f+Math.imul(L,kt)|0,v=v+Math.imul(L,Et)|0;var wr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(wr>>>26)|0,wr&=67108863,g=Math.imul(nt,ct),f=Math.imul(nt,dt),f=f+Math.imul(st,ct)|0,v=Math.imul(st,dt),g=g+Math.imul(rt,pt)|0,f=f+Math.imul(rt,gt)|0,f=f+Math.imul(it,pt)|0,v=v+Math.imul(it,gt)|0,g=g+Math.imul(tt,mt)|0,f=f+Math.imul(tt,vt)|0,f=f+Math.imul(et,mt)|0,v=v+Math.imul(et,vt)|0,g=g+Math.imul(Z,wt)|0,f=f+Math.imul(Z,yt)|0,f=f+Math.imul($,wt)|0,v=v+Math.imul($,yt)|0,g=g+Math.imul(X,At)|0,f=f+Math.imul(X,bt)|0,f=f+Math.imul(V,At)|0,v=v+Math.imul(V,bt)|0,g=g+Math.imul(H,kt)|0,f=f+Math.imul(H,Et)|0,f=f+Math.imul(j,kt)|0,v=v+Math.imul(j,Et)|0,g=g+Math.imul(B,xt)|0,f=f+Math.imul(B,Mt)|0,f=f+Math.imul(L,xt)|0,v=v+Math.imul(L,Mt)|0;var yr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(yr>>>26)|0,yr&=67108863,g=Math.imul(ot,ct),f=Math.imul(ot,dt),f=f+Math.imul(at,ct)|0,v=Math.imul(at,dt),g=g+Math.imul(nt,pt)|0,f=f+Math.imul(nt,gt)|0,f=f+Math.imul(st,pt)|0,v=v+Math.imul(st,gt)|0,g=g+Math.imul(rt,mt)|0,f=f+Math.imul(rt,vt)|0,f=f+Math.imul(it,mt)|0,v=v+Math.imul(it,vt)|0,g=g+Math.imul(tt,wt)|0,f=f+Math.imul(tt,yt)|0,f=f+Math.imul(et,wt)|0,v=v+Math.imul(et,yt)|0,g=g+Math.imul(Z,At)|0,f=f+Math.imul(Z,bt)|0,f=f+Math.imul($,At)|0,v=v+Math.imul($,bt)|0,g=g+Math.imul(X,kt)|0,f=f+Math.imul(X,Et)|0,f=f+Math.imul(V,kt)|0,v=v+Math.imul(V,Et)|0,g=g+Math.imul(H,xt)|0,f=f+Math.imul(H,Mt)|0,f=f+Math.imul(j,xt)|0,v=v+Math.imul(j,Mt)|0,g=g+Math.imul(B,_t)|0,f=f+Math.imul(B,It)|0,f=f+Math.imul(L,_t)|0,v=v+Math.imul(L,It)|0;var Ar=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,g=Math.imul(ft,ct),f=Math.imul(ft,dt),f=f+Math.imul(lt,ct)|0,v=Math.imul(lt,dt),g=g+Math.imul(ot,pt)|0,f=f+Math.imul(ot,gt)|0,f=f+Math.imul(at,pt)|0,v=v+Math.imul(at,gt)|0,g=g+Math.imul(nt,mt)|0,f=f+Math.imul(nt,vt)|0,f=f+Math.imul(st,mt)|0,v=v+Math.imul(st,vt)|0,g=g+Math.imul(rt,wt)|0,f=f+Math.imul(rt,yt)|0,f=f+Math.imul(it,wt)|0,v=v+Math.imul(it,yt)|0,g=g+Math.imul(tt,At)|0,f=f+Math.imul(tt,bt)|0,f=f+Math.imul(et,At)|0,v=v+Math.imul(et,bt)|0,g=g+Math.imul(Z,kt)|0,f=f+Math.imul(Z,Et)|0,f=f+Math.imul($,kt)|0,v=v+Math.imul($,Et)|0,g=g+Math.imul(X,xt)|0,f=f+Math.imul(X,Mt)|0,f=f+Math.imul(V,xt)|0,v=v+Math.imul(V,Mt)|0,g=g+Math.imul(H,_t)|0,f=f+Math.imul(H,It)|0,f=f+Math.imul(j,_t)|0,v=v+Math.imul(j,It)|0,g=g+Math.imul(B,Pt)|0,f=f+Math.imul(B,Nt)|0,f=f+Math.imul(L,Pt)|0,v=v+Math.imul(L,Nt)|0;var br=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(br>>>26)|0,br&=67108863,g=Math.imul(ut,ct),f=Math.imul(ut,dt),f=f+Math.imul(ht,ct)|0,v=Math.imul(ht,dt),g=g+Math.imul(ft,pt)|0,f=f+Math.imul(ft,gt)|0,f=f+Math.imul(lt,pt)|0,v=v+Math.imul(lt,gt)|0,g=g+Math.imul(ot,mt)|0,f=f+Math.imul(ot,vt)|0,f=f+Math.imul(at,mt)|0,v=v+Math.imul(at,vt)|0,g=g+Math.imul(nt,wt)|0,f=f+Math.imul(nt,yt)|0,f=f+Math.imul(st,wt)|0,v=v+Math.imul(st,yt)|0,g=g+Math.imul(rt,At)|0,f=f+Math.imul(rt,bt)|0,f=f+Math.imul(it,At)|0,v=v+Math.imul(it,bt)|0,g=g+Math.imul(tt,kt)|0,f=f+Math.imul(tt,Et)|0,f=f+Math.imul(et,kt)|0,v=v+Math.imul(et,Et)|0,g=g+Math.imul(Z,xt)|0,f=f+Math.imul(Z,Mt)|0,f=f+Math.imul($,xt)|0,v=v+Math.imul($,Mt)|0,g=g+Math.imul(X,_t)|0,f=f+Math.imul(X,It)|0,f=f+Math.imul(V,_t)|0,v=v+Math.imul(V,It)|0,g=g+Math.imul(H,Pt)|0,f=f+Math.imul(H,Nt)|0,f=f+Math.imul(j,Pt)|0,v=v+Math.imul(j,Nt)|0,g=g+Math.imul(B,St)|0,f=f+Math.imul(B,Rt)|0,f=f+Math.imul(L,St)|0,v=v+Math.imul(L,Rt)|0;var kr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(kr>>>26)|0,kr&=67108863,g=Math.imul(ut,pt),f=Math.imul(ut,gt),f=f+Math.imul(ht,pt)|0,v=Math.imul(ht,gt),g=g+Math.imul(ft,mt)|0,f=f+Math.imul(ft,vt)|0,f=f+Math.imul(lt,mt)|0,v=v+Math.imul(lt,vt)|0,g=g+Math.imul(ot,wt)|0,f=f+Math.imul(ot,yt)|0,f=f+Math.imul(at,wt)|0,v=v+Math.imul(at,yt)|0,g=g+Math.imul(nt,At)|0,f=f+Math.imul(nt,bt)|0,f=f+Math.imul(st,At)|0,v=v+Math.imul(st,bt)|0,g=g+Math.imul(rt,kt)|0,f=f+Math.imul(rt,Et)|0,f=f+Math.imul(it,kt)|0,v=v+Math.imul(it,Et)|0,g=g+Math.imul(tt,xt)|0,f=f+Math.imul(tt,Mt)|0,f=f+Math.imul(et,xt)|0,v=v+Math.imul(et,Mt)|0,g=g+Math.imul(Z,_t)|0,f=f+Math.imul(Z,It)|0,f=f+Math.imul($,_t)|0,v=v+Math.imul($,It)|0,g=g+Math.imul(X,Pt)|0,f=f+Math.imul(X,Nt)|0,f=f+Math.imul(V,Pt)|0,v=v+Math.imul(V,Nt)|0,g=g+Math.imul(H,St)|0,f=f+Math.imul(H,Rt)|0,f=f+Math.imul(j,St)|0,v=v+Math.imul(j,Rt)|0;var Er=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Er>>>26)|0,Er&=67108863,g=Math.imul(ut,mt),f=Math.imul(ut,vt),f=f+Math.imul(ht,mt)|0,v=Math.imul(ht,vt),g=g+Math.imul(ft,wt)|0,f=f+Math.imul(ft,yt)|0,f=f+Math.imul(lt,wt)|0,v=v+Math.imul(lt,yt)|0,g=g+Math.imul(ot,At)|0,f=f+Math.imul(ot,bt)|0,f=f+Math.imul(at,At)|0,v=v+Math.imul(at,bt)|0,g=g+Math.imul(nt,kt)|0,f=f+Math.imul(nt,Et)|0,f=f+Math.imul(st,kt)|0,v=v+Math.imul(st,Et)|0,g=g+Math.imul(rt,xt)|0,f=f+Math.imul(rt,Mt)|0,f=f+Math.imul(it,xt)|0,v=v+Math.imul(it,Mt)|0,g=g+Math.imul(tt,_t)|0,f=f+Math.imul(tt,It)|0,f=f+Math.imul(et,_t)|0,v=v+Math.imul(et,It)|0,g=g+Math.imul(Z,Pt)|0,f=f+Math.imul(Z,Nt)|0,f=f+Math.imul($,Pt)|0,v=v+Math.imul($,Nt)|0,g=g+Math.imul(X,St)|0,f=f+Math.imul(X,Rt)|0,f=f+Math.imul(V,St)|0,v=v+Math.imul(V,Rt)|0;var xr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(xr>>>26)|0,xr&=67108863,g=Math.imul(ut,wt),f=Math.imul(ut,yt),f=f+Math.imul(ht,wt)|0,v=Math.imul(ht,yt),g=g+Math.imul(ft,At)|0,f=f+Math.imul(ft,bt)|0,f=f+Math.imul(lt,At)|0,v=v+Math.imul(lt,bt)|0,g=g+Math.imul(ot,kt)|0,f=f+Math.imul(ot,Et)|0,f=f+Math.imul(at,kt)|0,v=v+Math.imul(at,Et)|0,g=g+Math.imul(nt,xt)|0,f=f+Math.imul(nt,Mt)|0,f=f+Math.imul(st,xt)|0,v=v+Math.imul(st,Mt)|0,g=g+Math.imul(rt,_t)|0,f=f+Math.imul(rt,It)|0,f=f+Math.imul(it,_t)|0,v=v+Math.imul(it,It)|0,g=g+Math.imul(tt,Pt)|0,f=f+Math.imul(tt,Nt)|0,f=f+Math.imul(et,Pt)|0,v=v+Math.imul(et,Nt)|0,g=g+Math.imul(Z,St)|0,f=f+Math.imul(Z,Rt)|0,f=f+Math.imul($,St)|0,v=v+Math.imul($,Rt)|0;var Mr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,g=Math.imul(ut,At),f=Math.imul(ut,bt),f=f+Math.imul(ht,At)|0,v=Math.imul(ht,bt),g=g+Math.imul(ft,kt)|0,f=f+Math.imul(ft,Et)|0,f=f+Math.imul(lt,kt)|0,v=v+Math.imul(lt,Et)|0,g=g+Math.imul(ot,xt)|0,f=f+Math.imul(ot,Mt)|0,f=f+Math.imul(at,xt)|0,v=v+Math.imul(at,Mt)|0,g=g+Math.imul(nt,_t)|0,f=f+Math.imul(nt,It)|0,f=f+Math.imul(st,_t)|0,v=v+Math.imul(st,It)|0,g=g+Math.imul(rt,Pt)|0,f=f+Math.imul(rt,Nt)|0,f=f+Math.imul(it,Pt)|0,v=v+Math.imul(it,Nt)|0,g=g+Math.imul(tt,St)|0,f=f+Math.imul(tt,Rt)|0,f=f+Math.imul(et,St)|0,v=v+Math.imul(et,Rt)|0;var _r=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(_r>>>26)|0,_r&=67108863,g=Math.imul(ut,kt),f=Math.imul(ut,Et),f=f+Math.imul(ht,kt)|0,v=Math.imul(ht,Et),g=g+Math.imul(ft,xt)|0,f=f+Math.imul(ft,Mt)|0,f=f+Math.imul(lt,xt)|0,v=v+Math.imul(lt,Mt)|0,g=g+Math.imul(ot,_t)|0,f=f+Math.imul(ot,It)|0,f=f+Math.imul(at,_t)|0,v=v+Math.imul(at,It)|0,g=g+Math.imul(nt,Pt)|0,f=f+Math.imul(nt,Nt)|0,f=f+Math.imul(st,Pt)|0,v=v+Math.imul(st,Nt)|0,g=g+Math.imul(rt,St)|0,f=f+Math.imul(rt,Rt)|0,f=f+Math.imul(it,St)|0,v=v+Math.imul(it,Rt)|0;var Ir=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,g=Math.imul(ut,xt),f=Math.imul(ut,Mt),f=f+Math.imul(ht,xt)|0,v=Math.imul(ht,Mt),g=g+Math.imul(ft,_t)|0,f=f+Math.imul(ft,It)|0,f=f+Math.imul(lt,_t)|0,v=v+Math.imul(lt,It)|0,g=g+Math.imul(ot,Pt)|0,f=f+Math.imul(ot,Nt)|0,f=f+Math.imul(at,Pt)|0,v=v+Math.imul(at,Nt)|0,g=g+Math.imul(nt,St)|0,f=f+Math.imul(nt,Rt)|0,f=f+Math.imul(st,St)|0,v=v+Math.imul(st,Rt)|0;var Pr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Pr>>>26)|0,Pr&=67108863,g=Math.imul(ut,_t),f=Math.imul(ut,It),f=f+Math.imul(ht,_t)|0,v=Math.imul(ht,It),g=g+Math.imul(ft,Pt)|0,f=f+Math.imul(ft,Nt)|0,f=f+Math.imul(lt,Pt)|0,v=v+Math.imul(lt,Nt)|0,g=g+Math.imul(ot,St)|0,f=f+Math.imul(ot,Rt)|0,f=f+Math.imul(at,St)|0,v=v+Math.imul(at,Rt)|0;var Nr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Nr>>>26)|0,Nr&=67108863,g=Math.imul(ut,Pt),f=Math.imul(ut,Nt),f=f+Math.imul(ht,Pt)|0,v=Math.imul(ht,Nt),g=g+Math.imul(ft,St)|0,f=f+Math.imul(ft,Rt)|0,f=f+Math.imul(lt,St)|0,v=v+Math.imul(lt,Rt)|0;var Sr=(k+g|0)+((f&8191)<<13)|0;k=(v+(f>>>13)|0)+(Sr>>>26)|0,Sr&=67108863,g=Math.imul(ut,St),f=Math.imul(ut,Rt),f=f+Math.imul(ht,St)|0,v=Math.imul(ht,Rt);var Rr=(k+g|0)+((f&8191)<<13)|0;return k=(v+(f>>>13)|0)+(Rr>>>26)|0,Rr&=67108863,b[0]=dr,b[1]=pr,b[2]=gr,b[3]=mr,b[4]=vr,b[5]=wr,b[6]=yr,b[7]=Ar,b[8]=br,b[9]=kr,b[10]=Er,b[11]=xr,b[12]=Mr,b[13]=_r,b[14]=Ir,b[15]=Pr,b[16]=Nr,b[17]=Sr,b[18]=Rr,k!==0&&(b[19]=k,c.length++),c};Math.imul||(S=P);function G(y,o,l){l.negative=o.negative^y.negative,l.length=y.length+o.length;for(var c=0,m=0,w=0;w>>26)|0,m+=b>>>26,b&=67108863}l.words[w]=k,c=b,b=m}return c!==0?l.words[w]=c:l.length--,l._strip()}function J(y,o,l){return G(y,o,l)}i.prototype.mulTo=function(o,l){var c,m=this.length+o.length;return this.length===10&&o.length===10?c=S(this,o,l):m<63?c=P(this,o,l):m<1024?c=G(this,o,l):c=J(this,o,l),c},i.prototype.mul=function(o){var l=new i(null);return l.words=new Array(this.length+o.length),this.mulTo(o,l)},i.prototype.mulf=function(o){var l=new i(null);return l.words=new Array(this.length+o.length),J(this,o,l)},i.prototype.imul=function(o){return this.clone().mulTo(o,this)},i.prototype.imuln=function(o){var l=o<0;l&&(o=-o),r(typeof o=="number"),r(o<67108864);for(var c=0,m=0;m>=26,c+=w/67108864|0,c+=b>>>26,this.words[m]=b&67108863}return c!==0&&(this.words[m]=c,this.length++),l?this.ineg():this},i.prototype.muln=function(o){return this.clone().imuln(o)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(o){var l=T(o);if(l.length===0)return new i(1);for(var c=this,m=0;m=0);var l=o%26,c=(o-l)/26,m=67108863>>>26-l<<26-l,w;if(l!==0){var b=0;for(w=0;w>>26-l}b&&(this.words[w]=b,this.length++)}if(c!==0){for(w=this.length-1;w>=0;w--)this.words[w+c]=this.words[w];for(w=0;w=0);var m;l?m=(l-l%26)/26:m=0;var w=o%26,b=Math.min((o-w)/26,this.length),k=67108863^67108863>>>w<b)for(this.length-=b,f=0;f=0&&(v!==0||f>=m);f--){var C=this.words[f]|0;this.words[f]=v<<26-w|C>>>w,v=C&k}return g&&v!==0&&(g.words[g.length++]=v),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},i.prototype.ishrn=function(o,l,c){return r(this.negative===0),this.iushrn(o,l,c)},i.prototype.shln=function(o){return this.clone().ishln(o)},i.prototype.ushln=function(o){return this.clone().iushln(o)},i.prototype.shrn=function(o){return this.clone().ishrn(o)},i.prototype.ushrn=function(o){return this.clone().iushrn(o)},i.prototype.testn=function(o){r(typeof o=="number"&&o>=0);var l=o%26,c=(o-l)/26,m=1<=0);var l=o%26,c=(o-l)/26;if(r(this.negative===0,"imaskn works only with positive numbers"),this.length<=c)return this;if(l!==0&&c++,this.length=Math.min(c,this.length),l!==0){var m=67108863^67108863>>>l<=67108864;l++)this.words[l]-=67108864,l===this.length-1?this.words[l+1]=1:this.words[l+1]++;return this.length=Math.max(this.length,l+1),this},i.prototype.isubn=function(o){if(r(typeof o=="number"),r(o<67108864),o<0)return this.iaddn(-o);if(this.negative!==0)return this.negative=0,this.iaddn(o),this.negative=1,this;if(this.words[0]-=o,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var l=0;l>26)-(g/67108864|0),this.words[w+c]=b&67108863}for(;w>26,this.words[w+c]=b&67108863;if(k===0)return this._strip();for(r(k===-1),k=0,w=0;w>26,this.words[w]=b&67108863;return this.negative=1,this._strip()},i.prototype._wordDiv=function(o,l){var c=this.length-o.length,m=this.clone(),w=o,b=w.words[w.length-1]|0,k=this._countBits(b);c=26-k,c!==0&&(w=w.ushln(c),m.iushln(c),b=w.words[w.length-1]|0);var g=m.length-w.length,f;if(l!=="mod"){f=new i(null),f.length=g+1,f.words=new Array(f.length);for(var v=0;v=0;B--){var L=(m.words[w.length+B]|0)*67108864+(m.words[w.length+B-1]|0);for(L=Math.min(L/b|0,67108863),m._ishlnsubmul(w,L,B);m.negative!==0;)L--,m.negative=0,m._ishlnsubmul(w,1,B),m.isZero()||(m.negative^=1);f&&(f.words[B]=L)}return f&&f._strip(),m._strip(),l!=="div"&&c!==0&&m.iushrn(c),{div:f||null,mod:m}},i.prototype.divmod=function(o,l,c){if(r(!o.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var m,w,b;return this.negative!==0&&o.negative===0?(b=this.neg().divmod(o,l),l!=="mod"&&(m=b.div.neg()),l!=="div"&&(w=b.mod.neg(),c&&w.negative!==0&&w.iadd(o)),{div:m,mod:w}):this.negative===0&&o.negative!==0?(b=this.divmod(o.neg(),l),l!=="mod"&&(m=b.div.neg()),{div:m,mod:b.mod}):this.negative&o.negative?(b=this.neg().divmod(o.neg(),l),l!=="div"&&(w=b.mod.neg(),c&&w.negative!==0&&w.isub(o)),{div:b.div,mod:w}):o.length>this.length||this.cmp(o)<0?{div:new i(0),mod:this}:o.length===1?l==="div"?{div:this.divn(o.words[0]),mod:null}:l==="mod"?{div:null,mod:new i(this.modrn(o.words[0]))}:{div:this.divn(o.words[0]),mod:new i(this.modrn(o.words[0]))}:this._wordDiv(o,l)},i.prototype.div=function(o){return this.divmod(o,"div",!1).div},i.prototype.mod=function(o){return this.divmod(o,"mod",!1).mod},i.prototype.umod=function(o){return this.divmod(o,"mod",!0).mod},i.prototype.divRound=function(o){var l=this.divmod(o);if(l.mod.isZero())return l.div;var c=l.div.negative!==0?l.mod.isub(o):l.mod,m=o.ushrn(1),w=o.andln(1),b=c.cmp(m);return b<0||w===1&&b===0?l.div:l.div.negative!==0?l.div.isubn(1):l.div.iaddn(1)},i.prototype.modrn=function(o){var l=o<0;l&&(o=-o),r(o<=67108863);for(var c=(1<<26)%o,m=0,w=this.length-1;w>=0;w--)m=(c*m+(this.words[w]|0))%o;return l?-m:m},i.prototype.modn=function(o){return this.modrn(o)},i.prototype.idivn=function(o){var l=o<0;l&&(o=-o),r(o<=67108863);for(var c=0,m=this.length-1;m>=0;m--){var w=(this.words[m]|0)+c*67108864;this.words[m]=w/o|0,c=w%o}return this._strip(),l?this.ineg():this},i.prototype.divn=function(o){return this.clone().idivn(o)},i.prototype.egcd=function(o){r(o.negative===0),r(!o.isZero());var l=this,c=o.clone();l.negative!==0?l=l.umod(o):l=l.clone();for(var m=new i(1),w=new i(0),b=new i(0),k=new i(1),g=0;l.isEven()&&c.isEven();)l.iushrn(1),c.iushrn(1),++g;for(var f=c.clone(),v=l.clone();!l.isZero();){for(var C=0,B=1;!(l.words[0]&B)&&C<26;++C,B<<=1);if(C>0)for(l.iushrn(C);C-- >0;)(m.isOdd()||w.isOdd())&&(m.iadd(f),w.isub(v)),m.iushrn(1),w.iushrn(1);for(var L=0,Ut=1;!(c.words[0]&Ut)&&L<26;++L,Ut<<=1);if(L>0)for(c.iushrn(L);L-- >0;)(b.isOdd()||k.isOdd())&&(b.iadd(f),k.isub(v)),b.iushrn(1),k.iushrn(1);l.cmp(c)>=0?(l.isub(c),m.isub(b),w.isub(k)):(c.isub(l),b.isub(m),k.isub(w))}return{a:b,b:k,gcd:c.iushln(g)}},i.prototype._invmp=function(o){r(o.negative===0),r(!o.isZero());var l=this,c=o.clone();l.negative!==0?l=l.umod(o):l=l.clone();for(var m=new i(1),w=new i(0),b=c.clone();l.cmpn(1)>0&&c.cmpn(1)>0;){for(var k=0,g=1;!(l.words[0]&g)&&k<26;++k,g<<=1);if(k>0)for(l.iushrn(k);k-- >0;)m.isOdd()&&m.iadd(b),m.iushrn(1);for(var f=0,v=1;!(c.words[0]&v)&&f<26;++f,v<<=1);if(f>0)for(c.iushrn(f);f-- >0;)w.isOdd()&&w.iadd(b),w.iushrn(1);l.cmp(c)>=0?(l.isub(c),m.isub(w)):(c.isub(l),w.isub(m))}var C;return l.cmpn(1)===0?C=m:C=w,C.cmpn(0)<0&&C.iadd(o),C},i.prototype.gcd=function(o){if(this.isZero())return o.abs();if(o.isZero())return this.abs();var l=this.clone(),c=o.clone();l.negative=0,c.negative=0;for(var m=0;l.isEven()&&c.isEven();m++)l.iushrn(1),c.iushrn(1);do{for(;l.isEven();)l.iushrn(1);for(;c.isEven();)c.iushrn(1);var w=l.cmp(c);if(w<0){var b=l;l=c,c=b}else if(w===0||c.cmpn(1)===0)break;l.isub(c)}while(!0);return c.iushln(m)},i.prototype.invm=function(o){return this.egcd(o).a.umod(o)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(o){return this.words[0]&o},i.prototype.bincn=function(o){r(typeof o=="number");var l=o%26,c=(o-l)/26,m=1<>>26,k&=67108863,this.words[b]=k}return w!==0&&(this.words[b]=w,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(o){var l=o<0;if(this.negative!==0&&!l)return-1;if(this.negative===0&&l)return 1;this._strip();var c;if(this.length>1)c=1;else{l&&(o=-o),r(o<=67108863,"Number is too big");var m=this.words[0]|0;c=m===o?0:mo.length)return 1;if(this.length=0;c--){var m=this.words[c]|0,w=o.words[c]|0;if(m!==w){mw&&(l=1);break}}return l},i.prototype.gtn=function(o){return this.cmpn(o)===1},i.prototype.gt=function(o){return this.cmp(o)===1},i.prototype.gten=function(o){return this.cmpn(o)>=0},i.prototype.gte=function(o){return this.cmp(o)>=0},i.prototype.ltn=function(o){return this.cmpn(o)===-1},i.prototype.lt=function(o){return this.cmp(o)===-1},i.prototype.lten=function(o){return this.cmpn(o)<=0},i.prototype.lte=function(o){return this.cmp(o)<=0},i.prototype.eqn=function(o){return this.cmpn(o)===0},i.prototype.eq=function(o){return this.cmp(o)===0},i.red=function(o){return new W(o)},i.prototype.toRed=function(o){return r(!this.red,"Already a number in reduction context"),r(this.negative===0,"red works only with positives"),o.convertTo(this)._forceRed(o)},i.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(o){return this.red=o,this},i.prototype.forceRed=function(o){return r(!this.red,"Already a number in reduction context"),this._forceRed(o)},i.prototype.redAdd=function(o){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,o)},i.prototype.redIAdd=function(o){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,o)},i.prototype.redSub=function(o){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,o)},i.prototype.redISub=function(o){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,o)},i.prototype.redShl=function(o){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,o)},i.prototype.redMul=function(o){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,o),this.red.mul(this,o)},i.prototype.redIMul=function(o){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,o),this.red.imul(this,o)},i.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(o){return r(this.red&&!o.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,o)};var F={k256:null,p224:null,p192:null,p25519:null};function z(y,o){this.name=y,this.p=new i(o,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}z.prototype._tmp=function(){var o=new i(null);return o.words=new Array(Math.ceil(this.n/13)),o},z.prototype.ireduce=function(o){var l=o,c;do this.split(l,this.tmp),l=this.imulK(l),l=l.iadd(this.tmp),c=l.bitLength();while(c>this.n);var m=c0?l.isub(this.p):l.strip!==void 0?l.strip():l._strip(),l},z.prototype.split=function(o,l){o.iushrn(this.n,0,l)},z.prototype.imulK=function(o){return o.imul(this.k)};function Vt(){z.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}n(Vt,z),Vt.prototype.split=function(o,l){for(var c=4194303,m=Math.min(o.length,9),w=0;w>>22,b=k}b>>>=22,o.words[w-10]=b,b===0&&o.length>10?o.length-=10:o.length-=9},Vt.prototype.imulK=function(o){o.words[o.length]=0,o.words[o.length+1]=0,o.length+=2;for(var l=0,c=0;c>>=26,o.words[c]=w,l=m}return l!==0&&(o.words[o.length++]=l),o},i._prime=function(o){if(F[o])return F[o];var l;if(o==="k256")l=new Vt;else if(o==="p224")l=new Kt;else if(o==="p192")l=new Ft;else if(o==="p25519")l=new we;else throw new Error("Unknown prime "+o);return F[o]=l,l};function W(y){if(typeof y=="string"){var o=i._prime(y);this.m=o.p,this.prime=o}else r(y.gtn(1),"modulus must be greater than 1"),this.m=y,this.prime=null}W.prototype._verify1=function(o){r(o.negative===0,"red works only with positives"),r(o.red,"red works only with red numbers")},W.prototype._verify2=function(o,l){r((o.negative|l.negative)===0,"red works only with positives"),r(o.red&&o.red===l.red,"red works only with red numbers")},W.prototype.imod=function(o){return this.prime?this.prime.ireduce(o)._forceRed(this):(p(o,o.umod(this.m)._forceRed(this)),o)},W.prototype.neg=function(o){return o.isZero()?o.clone():this.m.sub(o)._forceRed(this)},W.prototype.add=function(o,l){this._verify2(o,l);var c=o.add(l);return c.cmp(this.m)>=0&&c.isub(this.m),c._forceRed(this)},W.prototype.iadd=function(o,l){this._verify2(o,l);var c=o.iadd(l);return c.cmp(this.m)>=0&&c.isub(this.m),c},W.prototype.sub=function(o,l){this._verify2(o,l);var c=o.sub(l);return c.cmpn(0)<0&&c.iadd(this.m),c._forceRed(this)},W.prototype.isub=function(o,l){this._verify2(o,l);var c=o.isub(l);return c.cmpn(0)<0&&c.iadd(this.m),c},W.prototype.shl=function(o,l){return this._verify1(o),this.imod(o.ushln(l))},W.prototype.imul=function(o,l){return this._verify2(o,l),this.imod(o.imul(l))},W.prototype.mul=function(o,l){return this._verify2(o,l),this.imod(o.mul(l))},W.prototype.isqr=function(o){return this.imul(o,o.clone())},W.prototype.sqr=function(o){return this.mul(o,o)},W.prototype.sqrt=function(o){if(o.isZero())return o.clone();var l=this.m.andln(3);if(r(l%2===1),l===3){var c=this.m.add(new i(1)).iushrn(2);return this.pow(o,c)}for(var m=this.m.subn(1),w=0;!m.isZero()&&m.andln(1)===0;)w++,m.iushrn(1);r(!m.isZero());var b=new i(1).toRed(this),k=b.redNeg(),g=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new i(2*f*f).toRed(this);this.pow(f,g).cmp(k)!==0;)f.redIAdd(k);for(var v=this.pow(f,m),C=this.pow(o,m.addn(1).iushrn(1)),B=this.pow(o,m),L=w;B.cmp(b)!==0;){for(var Ut=B,H=0;Ut.cmp(b)!==0;H++)Ut=Ut.redSqr();r(H=0;w--){for(var v=l.words[w],C=f-1;C>=0;C--){var B=v>>C&1;if(b!==m[0]&&(b=this.sqr(b)),B===0&&k===0){g=0;continue}k<<=1,k|=B,g++,!(g!==c&&(w!==0||C!==0))&&(b=this.mul(b,m[k]),g=0,k=0)}f=26}return b},W.prototype.convertTo=function(o){var l=o.umod(this.m);return l===o?l.clone():l},W.prototype.convertFrom=function(o){var l=o.clone();return l.red=null,l},i.mont=function(o){return new ye(o)};function ye(y){W.call(this,y),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}n(ye,W),ye.prototype.convertTo=function(o){return this.imod(o.ushln(this.shift))},ye.prototype.convertFrom=function(o){var l=this.imod(o.mul(this.rinv));return l.red=null,l},ye.prototype.imul=function(o,l){if(o.isZero()||l.isZero())return o.words[0]=0,o.length=1,o;var c=o.imul(l),m=c.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),w=c.isub(m).iushrn(this.shift),b=w;return w.cmp(this.m)>=0?b=w.isub(this.m):w.cmpn(0)<0&&(b=w.iadd(this.m)),b._forceRed(this)},ye.prototype.mul=function(o,l){if(o.isZero()||l.isZero())return new i(0)._forceRed(this);var c=o.mul(l),m=c.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),w=c.isub(m).iushrn(this.shift),b=w;return w.cmp(this.m)>=0?b=w.isub(this.m):w.cmpn(0)<0&&(b=w.iadd(this.m)),b._forceRed(this)},ye.prototype.invm=function(o){var l=this.imod(o._invmp(this.m).mul(this.r2));return l._forceRed(this)}})(s,Fn)})(Ss);const q=Hr;function Ne(s,t,e){return e={path:t,exports:{},require:function(r,n){return Rs(r,n??e.path)}},s(e,e.exports),e.exports}function Rs(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var Zr=kn;function kn(s,t){if(!s)throw new Error(t||"Assertion failed")}kn.equal=function(t,e,r){if(t!=e)throw new Error(r||"Assertion failed: "+t+" != "+e)};var ne=Ne(function(s,t){var e=t;function r(a,u){if(Array.isArray(a))return a.slice();if(!a)return[];var h=[];if(typeof a!="string"){for(var d=0;d>8,M=p&255;A?h.push(A,M):h.push(M)}return h}e.toArray=r;function n(a){return a.length===1?"0"+a:a}e.zero2=n;function i(a){for(var u="",h=0;h(M>>1)-1?I=(M>>1)-T:I=T,E.isubn(I)):I=0,A[_]=I,E.iushrn(1)}return A}e.getNAF=r;function n(h,d){var p=[[],[]];h=h.clone(),d=d.clone();for(var A=0,M=0,E;h.cmpn(-A)>0||d.cmpn(-M)>0;){var _=h.andln(3)+A&3,I=d.andln(3)+M&3;_===3&&(_=-1),I===3&&(I=-1);var T;_&1?(E=h.andln(7)+A&7,(E===3||E===5)&&I===2?T=-_:T=_):T=0,p[0].push(T);var P;I&1?(E=d.andln(7)+M&7,(E===3||E===5)&&_===2?P=-I:P=I):P=0,p[1].push(P),2*A===T+1&&(A=1-A),2*M===P+1&&(M=1-M),h.iushrn(1),d.iushrn(1)}return p}e.getJSF=n;function i(h,d,p){var A="_"+d;h.prototype[d]=function(){return this[A]!==void 0?this[A]:this[A]=p.call(this)}}e.cachedProperty=i;function a(h){return typeof h=="string"?e.toArray(h,"hex"):h}e.parseBytes=a;function u(h){return new q(h,"hex","le")}e.intFromLE=u}),er=Xt.getNAF,Ts=Xt.getJSF,rr=Xt.assert;function me(s,t){this.type=s,this.p=new q(t.p,16),this.red=t.prime?q.red(t.prime):q.mont(this.p),this.zero=new q(0).toRed(this.red),this.one=new q(1).toRed(this.red),this.two=new q(2).toRed(this.red),this.n=t.n&&new q(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var e=this.n&&this.p.div(this.n);!e||e.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var xe=me;me.prototype.point=function(){throw new Error("Not implemented")};me.prototype.validate=function(){throw new Error("Not implemented")};me.prototype._fixedNafMul=function(t,e){rr(t.precomputed);var r=t._getDoubles(),n=er(e,1,this._bitLength),i=(1<=u;d--)h=(h<<1)+n[d];a.push(h)}for(var p=this.jpoint(null,null,null),A=this.jpoint(null,null,null),M=i;M>0;M--){for(u=0;u=0;h--){for(var d=0;h>=0&&a[h]===0;h--)d++;if(h>=0&&d++,u=u.dblp(d),h<0)break;var p=a[h];rr(p!==0),t.type==="affine"?p>0?u=u.mixedAdd(i[p-1>>1]):u=u.mixedAdd(i[-p-1>>1].neg()):p>0?u=u.add(i[p-1>>1]):u=u.add(i[-p-1>>1].neg())}return t.type==="affine"?u.toP():u};me.prototype._wnafMulAdd=function(t,e,r,n,i){var a=this._wnafT1,u=this._wnafT2,h=this._wnafT3,d=0,p,A,M;for(p=0;p=1;p-=2){var _=p-1,I=p;if(a[_]!==1||a[I]!==1){h[_]=er(r[_],a[_],this._bitLength),h[I]=er(r[I],a[I],this._bitLength),d=Math.max(h[_].length,d),d=Math.max(h[I].length,d);continue}var T=[e[_],null,null,e[I]];e[_].y.cmp(e[I].y)===0?(T[1]=e[_].add(e[I]),T[2]=e[_].toJ().mixedAdd(e[I].neg())):e[_].y.cmp(e[I].y.redNeg())===0?(T[1]=e[_].toJ().mixedAdd(e[I]),T[2]=e[_].add(e[I].neg())):(T[1]=e[_].toJ().mixedAdd(e[I]),T[2]=e[_].toJ().mixedAdd(e[I].neg()));var P=[-3,-1,-5,-7,0,7,5,1,3],S=Ts(r[_],r[I]);for(d=Math.max(S[0].length,d),h[_]=new Array(d),h[I]=new Array(d),A=0;A=0;p--){for(var Vt=0;p>=0;){var Kt=!0;for(A=0;A=0&&Vt++,F=F.dblp(Vt),p<0)break;for(A=0;A0?M=u[A][Ft-1>>1]:Ft<0&&(M=u[A][-Ft-1>>1].neg()),M.type==="affine"?F=F.mixedAdd(M):F=F.add(M))}}for(p=0;p=Math.ceil((t.bitLength()+1)/e.step):!1};$t.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(E=d,_=p),A.negative&&(A=A.neg(),M=M.neg()),E.negative&&(E=E.neg(),_=_.neg()),[{a:A,b:M},{a:E,b:_}]};te.prototype._endoSplit=function(t){var e=this.endo.basis,r=e[0],n=e[1],i=n.b.mul(t).divRound(this.n),a=r.b.neg().mul(t).divRound(this.n),u=i.mul(r.a),h=a.mul(n.a),d=i.mul(r.b),p=a.mul(n.b),A=t.sub(u).sub(h),M=d.add(p).neg();return{k1:A,k2:M}};te.prototype.pointFromX=function(t,e){t=new q(t,16),t.red||(t=t.toRed(this.red));var r=t.redSqr().redMul(t).redIAdd(t.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(n.redSqr().redSub(r).cmp(this.zero)!==0)throw new Error("invalid point");var i=n.fromRed().isOdd();return(e&&!i||!e&&i)&&(n=n.redNeg()),this.point(t,n)};te.prototype.validate=function(t){if(t.inf)return!0;var e=t.x,r=t.y,n=this.a.redMul(e),i=e.redSqr().redMul(e).redIAdd(n).redIAdd(this.b);return r.redSqr().redISub(i).cmpn(0)===0};te.prototype._endoWnafMulAdd=function(t,e,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,a=0;a":""};Ot.prototype.isInfinity=function(){return this.inf};Ot.prototype.add=function(t){if(this.inf)return t;if(t.inf)return this;if(this.eq(t))return this.dbl();if(this.neg().eq(t))return this.curve.point(null,null);if(this.x.cmp(t.x)===0)return this.curve.point(null,null);var e=this.y.redSub(t.y);e.cmpn(0)!==0&&(e=e.redMul(this.x.redSub(t.x).redInvm()));var r=e.redSqr().redISub(this.x).redISub(t.x),n=e.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)};Ot.prototype.dbl=function(){if(this.inf)return this;var t=this.y.redAdd(this.y);if(t.cmpn(0)===0)return this.curve.point(null,null);var e=this.curve.a,r=this.x.redSqr(),n=t.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(e).redMul(n),a=i.redSqr().redISub(this.x.redAdd(this.x)),u=i.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,u)};Ot.prototype.getX=function(){return this.x.fromRed()};Ot.prototype.getY=function(){return this.y.fromRed()};Ot.prototype.mul=function(t){return t=new q(t,16),this.isInfinity()?this:this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve.endo?this.curve._endoWnafMulAdd([this],[t]):this.curve._wnafMul(this,t)};Ot.prototype.mulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)};Ot.prototype.jmulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)};Ot.prototype.eq=function(t){return this===t||this.inf===t.inf&&(this.inf||this.x.cmp(t.x)===0&&this.y.cmp(t.y)===0)};Ot.prototype.neg=function(t){if(this.inf)return this;var e=this.curve.point(this.x,this.y.redNeg());if(t&&this.precomputed){var r=this.precomputed,n=function(i){return i.neg()};e.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return e};Ot.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var t=this.curve.jpoint(this.x,this.y,this.curve.one);return t};function qt(s,t,e,r){xe.BasePoint.call(this,s,"jacobian"),t===null&&e===null&&r===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new q(0)):(this.x=new q(t,16),this.y=new q(e,16),this.z=new q(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}$r(qt,xe.BasePoint);te.prototype.jpoint=function(t,e,r){return new qt(this,t,e,r)};qt.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var t=this.z.redInvm(),e=t.redSqr(),r=this.x.redMul(e),n=this.y.redMul(e).redMul(t);return this.curve.point(r,n)};qt.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)};qt.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(e),i=t.x.redMul(r),a=this.y.redMul(e.redMul(t.z)),u=t.y.redMul(r.redMul(this.z)),h=n.redSub(i),d=a.redSub(u);if(h.cmpn(0)===0)return d.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var p=h.redSqr(),A=p.redMul(h),M=n.redMul(p),E=d.redSqr().redIAdd(A).redISub(M).redISub(M),_=d.redMul(M.redISub(E)).redISub(a.redMul(A)),I=this.z.redMul(t.z).redMul(h);return this.curve.jpoint(E,_,I)};qt.prototype.mixedAdd=function(t){if(this.isInfinity())return t.toJ();if(t.isInfinity())return this;var e=this.z.redSqr(),r=this.x,n=t.x.redMul(e),i=this.y,a=t.y.redMul(e).redMul(this.z),u=r.redSub(n),h=i.redSub(a);if(u.cmpn(0)===0)return h.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var d=u.redSqr(),p=d.redMul(u),A=r.redMul(d),M=h.redSqr().redIAdd(p).redISub(A).redISub(A),E=h.redMul(A.redISub(M)).redISub(i.redMul(p)),_=this.z.redMul(u);return this.curve.jpoint(M,E,_)};qt.prototype.dblp=function(t){if(t===0)return this;if(this.isInfinity())return this;if(!t)return this.dbl();var e;if(this.curve.zeroA||this.curve.threeA){var r=this;for(e=0;e=0)return!1;if(r.redIAdd(i),this.x.cmp(r)===0)return!0}};qt.prototype.inspect=function(){return this.isInfinity()?"":""};qt.prototype.isInfinity=function(){return this.z.cmpn(0)===0};var We=Ne(function(s,t){var e=t;e.base=xe,e.short=Cs,e.mont=null,e.edwards=null}),Xe=Ne(function(s,t){var e=t,r=Xt.assert;function n(u){u.type==="short"?this.curve=new We.short(u):u.type==="edwards"?this.curve=new We.edwards(u):this.curve=new We.mont(u),this.g=this.curve.g,this.n=this.curve.n,this.hash=u.hash,r(this.g.validate(),"Invalid curve"),r(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}e.PresetCurve=n;function i(u,h){Object.defineProperty(e,u,{configurable:!0,enumerable:!0,get:function(){var d=new n(h);return Object.defineProperty(e,u,{configurable:!0,enumerable:!0,value:d}),d}})}i("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:se.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),i("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:se.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),i("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:se.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),i("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:se.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),i("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:se.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),i("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:se.sha256,gRed:!1,g:["9"]}),i("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:se.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var a;try{a=null.crash()}catch{a=void 0}i("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:se.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",a]})});function ge(s){if(!(this instanceof ge))return new ge(s);this.hash=s.hash,this.predResist=!!s.predResist,this.outLen=this.hash.outSize,this.minEntropy=s.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=ne.toArray(s.entropy,s.entropyEnc||"hex"),e=ne.toArray(s.nonce,s.nonceEnc||"hex"),r=ne.toArray(s.pers,s.persEnc||"hex");Zr(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,e,r)}var En=ge;ge.prototype._init=function(t,e,r){var n=t.concat(e).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(t.concat(r||[])),this._reseed=1};ge.prototype.generate=function(t,e,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof e!="string"&&(n=r,r=e,e=null),r&&(r=ne.toArray(r,n||"hex"),this._update(r));for(var i=[];i.length"};var Os=Xt.assert;function ur(s,t){if(s instanceof ur)return s;this._importDER(s,t)||(Os(s.r&&s.s,"Signature without r or s"),this.r=new q(s.r,16),this.s=new q(s.s,16),s.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=s.recoveryParam)}var hr=ur;function Ls(){this.place=0}function Cr(s,t){var e=s[t.place++];if(!(e&128))return e;var r=e&15;if(r===0||r>4)return!1;for(var n=0,i=0,a=t.place;i>>=0;return n<=127?!1:(t.place=a,n)}function Ri(s){for(var t=0,e=s.length-1;!s[t]&&!(s[t+1]&128)&&t>>3);for(s.push(e|128);--e;)s.push(t>>>(e<<3)&255);s.push(t)}ur.prototype.toDER=function(t){var e=this.r.toArray(),r=this.s.toArray();for(e[0]&128&&(e=[0].concat(e)),r[0]&128&&(r=[0].concat(r)),e=Ri(e),r=Ri(r);!r[0]&&!(r[1]&128);)r=r.slice(1);var n=[2];Or(n,e.length),n=n.concat(e),n.push(2),Or(n,r.length);var i=n.concat(r),a=[48];return Or(a,i.length),a=a.concat(i),Xt.encode(a,t)};var Ds=function(){throw new Error("unsupported")},xn=Xt.assert;function Zt(s){if(!(this instanceof Zt))return new Zt(s);typeof s=="string"&&(xn(Object.prototype.hasOwnProperty.call(Xe,s),"Unknown curve "+s),s=Xe[s]),s instanceof Xe.PresetCurve&&(s={curve:s}),this.curve=s.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=s.curve.g,this.g.precompute(s.curve.n.bitLength()+1),this.hash=s.hash||s.curve.hash}var qs=Zt;Zt.prototype.keyPair=function(t){return new ti(this,t)};Zt.prototype.keyFromPrivate=function(t,e){return ti.fromPrivate(this,t,e)};Zt.prototype.keyFromPublic=function(t,e){return ti.fromPublic(this,t,e)};Zt.prototype.genKeyPair=function(t){t||(t={});for(var e=new En({hash:this.hash,pers:t.pers,persEnc:t.persEnc||"utf8",entropy:t.entropy||Ds(this.hash.hmacStrength),entropyEnc:t.entropy&&t.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),n=this.n.sub(new q(2));;){var i=new q(e.generate(r));if(!(i.cmp(n)>0))return i.iaddn(1),this.keyFromPrivate(i)}};Zt.prototype._truncateToN=function(t,e){var r=t.byteLength()*8-this.n.bitLength();return r>0&&(t=t.ushrn(r)),!e&&t.cmp(this.n)>=0?t.sub(this.n):t};Zt.prototype.sign=function(t,e,r,n){typeof r=="object"&&(n=r,r=null),n||(n={}),e=this.keyFromPrivate(e,r),t=this._truncateToN(new q(t,16));for(var i=this.n.byteLength(),a=e.getPrivate().toArray("be",i),u=t.toArray("be",i),h=new En({hash:this.hash,entropy:a,nonce:u,pers:n.pers,persEnc:n.persEnc||"utf8"}),d=this.n.sub(new q(1)),p=0;;p++){var A=n.k?n.k(p):new q(h.generate(this.n.byteLength()));if(A=this._truncateToN(A,!0),!(A.cmpn(1)<=0||A.cmp(d)>=0)){var M=this.g.mul(A);if(!M.isInfinity()){var E=M.getX(),_=E.umod(this.n);if(_.cmpn(0)!==0){var I=A.invm(this.n).mul(_.mul(e.getPrivate()).iadd(t));if(I=I.umod(this.n),I.cmpn(0)!==0){var T=(M.getY().isOdd()?1:0)|(E.cmp(_)!==0?2:0);return n.canonical&&I.cmp(this.nh)>0&&(I=this.n.sub(I),T^=1),new hr({r:_,s:I,recoveryParam:T})}}}}}};Zt.prototype.verify=function(t,e,r,n){t=this._truncateToN(new q(t,16)),r=this.keyFromPublic(r,n),e=new hr(e,"hex");var i=e.r,a=e.s;if(i.cmpn(1)<0||i.cmp(this.n)>=0||a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var u=a.invm(this.n),h=u.mul(t).umod(this.n),d=u.mul(i).umod(this.n),p;return this.curve._maxwellTrick?(p=this.g.jmulAdd(h,r.getPublic(),d),p.isInfinity()?!1:p.eqXToP(i)):(p=this.g.mulAdd(h,r.getPublic(),d),p.isInfinity()?!1:p.getX().umod(this.n).cmp(i)===0)};Zt.prototype.recoverPubKey=function(s,t,e,r){xn((3&e)===e,"The recovery param is more than two bits"),t=new hr(t,r);var n=this.n,i=new q(s),a=t.r,u=t.s,h=e&1,d=e>>1;if(a.cmp(this.curve.p.umod(this.curve.n))>=0&&d)throw new Error("Unable to find sencond key candinate");d?a=this.curve.pointFromX(a.add(this.curve.n),h):a=this.curve.pointFromX(a,h);var p=t.r.invm(n),A=n.sub(i).mul(p).umod(n),M=u.mul(p).umod(n);return this.g.mulAdd(A,a,M)};Zt.prototype.getKeyRecoveryParam=function(s,t,e,r){if(t=new hr(t,r),t.recoveryParam!==null)return t.recoveryParam;for(var n=0;n<4;n++){var i;try{i=this.recoverPubKey(s,t,n)}catch{continue}if(i.eq(e))return n}throw new Error("Unable to find valid recovery factor")};var Fs=Ne(function(s,t){var e=t;e.version="6.5.4",e.utils=Xt,e.rand=function(){throw new Error("unsupported")},e.curve=We,e.curves=Xe,e.ec=qs,e.eddsa=null}),Us=Fs.ec;const Gs="signing-key/5.7.0",jr=new x(Gs);let Lr=null;function oe(){return Lr||(Lr=new Us("secp256k1")),Lr}class zs{constructor(t){R(this,"curve","secp256k1"),R(this,"privateKey",Q(t)),Ee(this.privateKey)!==32&&jr.throwArgumentError("invalid private key","privateKey","[[ REDACTED ]]");const e=oe().keyFromPrivate(K(this.privateKey));R(this,"publicKey","0x"+e.getPublic(!1,"hex")),R(this,"compressedPublicKey","0x"+e.getPublic(!0,"hex")),R(this,"_isSigningKey",!0)}_addPoint(t){const e=oe().keyFromPublic(K(this.publicKey)),r=oe().keyFromPublic(K(t));return"0x"+e.pub.add(r.pub).encodeCompressed("hex")}signDigest(t){const e=oe().keyFromPrivate(K(this.privateKey)),r=K(t);r.length!==32&&jr.throwArgumentError("bad digest length","digest",t);const n=e.sign(r,{canonical:!0});return sr({recoveryParam:n.recoveryParam,r:Dt("0x"+n.r.toString(16),32),s:Dt("0x"+n.s.toString(16),32)})}computeSharedSecret(t){const e=oe().keyFromPrivate(K(this.privateKey)),r=oe().keyFromPublic(K(Mn(t)));return Dt("0x"+e.derive(r.getPublic()).toString(16),32)}static isSigningKey(t){return!!(t&&t._isSigningKey)}}function Js(s,t){const e=sr(t),r={r:K(e.r),s:K(e.s)};return"0x"+oe().recoverPubKey(K(s),r,e.recoveryParam).encode("hex",!1)}function Mn(s,t){const e=K(s);if(e.length===32){const r=new zs(e);return t?"0x"+oe().keyFromPrivate(e).getPublic(!0,"hex"):r.publicKey}else{if(e.length===33)return t?Q(e):"0x"+oe().keyFromPublic(e).getPublic(!1,"hex");if(e.length===65)return t?"0x"+oe().keyFromPublic(e).getPublic(!0,"hex"):Q(e)}return jr.throwArgumentError("invalid public or private key","key","[REDACTED]")}const Ks="transactions/5.7.0",he=new x(Ks);var Ti;(function(s){s[s.legacy=0]="legacy",s[s.eip2930=1]="eip2930",s[s.eip1559=2]="eip1559"})(Ti||(Ti={}));function ei(s){return s==="0x"?null:ue(s)}function Gt(s){return s==="0x"?Un:O.from(s)}function Hs(s){const t=Mn(s);return ue(Ht(Qt(Ht(t,1)),12))}function _n(s,t){return Hs(Js(K(s),t))}function Yt(s,t){const e=Fe(O.from(s).toHexString());return e.length>32&&he.throwArgumentError("invalid length for "+t,"transaction:"+t,s),e}function Dr(s,t){return{address:ue(s),storageKeys:(t||[]).map((e,r)=>(Ee(e)!==32&&he.throwArgumentError("invalid access list storageKey",`accessList[${s}:${r}]`,e),e.toLowerCase()))}}function Se(s){if(Array.isArray(s))return s.map((e,r)=>Array.isArray(e)?(e.length>2&&he.throwArgumentError("access list expected to be [ address, storageKeys[] ]",`value[${r}]`,e),Dr(e[0],e[1])):Dr(e.address,e.storageKeys));const t=Object.keys(s).map(e=>{const r=s[e].reduce((n,i)=>(n[i]=!0,n),{});return Dr(e,Object.keys(r).sort())});return t.sort((e,r)=>e.address.localeCompare(r.address)),t}function In(s){return Se(s).map(t=>[t.address,t.storageKeys])}function Qs(s,t){if(s.gasPrice!=null){const r=O.from(s.gasPrice),n=O.from(s.maxFeePerGas||0);r.eq(n)||he.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:r,maxFeePerGas:n})}const e=[Yt(s.chainId||0,"chainId"),Yt(s.nonce||0,"nonce"),Yt(s.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),Yt(s.maxFeePerGas||0,"maxFeePerGas"),Yt(s.gasLimit||0,"gasLimit"),s.to!=null?ue(s.to):"0x",Yt(s.value||0,"value"),s.data||"0x",In(s.accessList||[])];if(t){const r=sr(t);e.push(Yt(r.recoveryParam,"recoveryParam")),e.push(Fe(r.r)),e.push(Fe(r.s))}return Wt(["0x02",Xr(e)])}function js(s,t){const e=[Yt(s.chainId||0,"chainId"),Yt(s.nonce||0,"nonce"),Yt(s.gasPrice||0,"gasPrice"),Yt(s.gasLimit||0,"gasLimit"),s.to!=null?ue(s.to):"0x",Yt(s.value||0,"value"),s.data||"0x",In(s.accessList||[])];if(t){const r=sr(t);e.push(Yt(r.recoveryParam,"recoveryParam")),e.push(Fe(r.r)),e.push(Fe(r.s))}return Wt(["0x01",Xr(e)])}function Pn(s,t,e){try{const r=Gt(t[0]).toNumber();if(r!==0&&r!==1)throw new Error("bad recid");s.v=r}catch{he.throwArgumentError("invalid v for transaction type: 1","v",t[0])}s.r=Dt(t[1],32),s.s=Dt(t[2],32);try{const r=Qt(e(s));s.from=_n(r,{r:s.r,s:s.s,recoveryParam:s.v})}catch{}}function Ys(s){const t=Wr(s.slice(1));t.length!==9&&t.length!==12&&he.throwArgumentError("invalid component count for transaction type: 2","payload",Q(s));const e=Gt(t[2]),r=Gt(t[3]),n={type:2,chainId:Gt(t[0]).toNumber(),nonce:Gt(t[1]).toNumber(),maxPriorityFeePerGas:e,maxFeePerGas:r,gasPrice:null,gasLimit:Gt(t[4]),to:ei(t[5]),value:Gt(t[6]),data:t[7],accessList:Se(t[8])};return t.length===9||(n.hash=Qt(s),Pn(n,t.slice(9),Qs)),n}function Ws(s){const t=Wr(s.slice(1));t.length!==8&&t.length!==11&&he.throwArgumentError("invalid component count for transaction type: 1","payload",Q(s));const e={type:1,chainId:Gt(t[0]).toNumber(),nonce:Gt(t[1]).toNumber(),gasPrice:Gt(t[2]),gasLimit:Gt(t[3]),to:ei(t[4]),value:Gt(t[5]),data:t[6],accessList:Se(t[7])};return t.length===8||(e.hash=Qt(s),Pn(e,t.slice(8),js)),e}function Xs(s){const t=Wr(s);t.length!==9&&t.length!==6&&he.throwArgumentError("invalid raw transaction","rawTransaction",s);const e={nonce:Gt(t[0]).toNumber(),gasPrice:Gt(t[1]),gasLimit:Gt(t[2]),to:ei(t[3]),value:Gt(t[4]),data:t[5],chainId:0};if(t.length===6)return e;try{e.v=O.from(t[6]).toNumber()}catch{return e}if(e.r=Dt(t[7],32),e.s=Dt(t[8],32),O.from(e.r).isZero()&&O.from(e.s).isZero())e.chainId=e.v,e.v=0;else{e.chainId=Math.floor((e.v-35)/2),e.chainId<0&&(e.chainId=0);let r=e.v-27;const n=t.slice(0,6);e.chainId!==0&&(n.push(Q(e.chainId)),n.push("0x"),n.push("0x"),r-=e.chainId*2+8);const i=Qt(Xr(n));try{e.from=_n(i,{r:Q(e.r),s:Q(e.s),recoveryParam:r})}catch{}e.hash=Qt(s)}return e.type=null,e}function Vs(s){const t=K(s);if(t[0]>127)return Xs(t);switch(t[0]){case 1:return Ws(t);case 2:return Ys(t)}return he.throwError(`unsupported transaction type: ${t[0]}`,x.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:t[0]})}function Zs(s){s=s.slice();for(let t=s.length-1;t>0;t--){const e=Math.floor(Math.random()*(t+1)),r=s[t];s[t]=s[e],s[e]=r}return s}const $s="networks/5.7.1",Bi=new x($s);function to(s){return s&&typeof s.renetwork=="function"}function fe(s){const t=function(e,r){r==null&&(r={});const n=[];if(e.InfuraProvider&&r.infura!=="-")try{n.push(new e.InfuraProvider(s,r.infura))}catch{}if(e.EtherscanProvider&&r.etherscan!=="-")try{n.push(new e.EtherscanProvider(s,r.etherscan))}catch{}if(e.AlchemyProvider&&r.alchemy!=="-")try{n.push(new e.AlchemyProvider(s,r.alchemy))}catch{}if(e.PocketProvider&&r.pocket!=="-"){const i=["goerli","ropsten","rinkeby","sepolia"];try{const a=new e.PocketProvider(s,r.pocket);a.network&&i.indexOf(a.network.name)===-1&&n.push(a)}catch{}}if(e.CloudflareProvider&&r.cloudflare!=="-")try{n.push(new e.CloudflareProvider(s))}catch{}if(e.AnkrProvider&&r.ankr!=="-")try{const i=["ropsten"],a=new e.AnkrProvider(s,r.ankr);a.network&&i.indexOf(a.network.name)===-1&&n.push(a)}catch{}if(n.length===0)return null;if(e.FallbackProvider){let i=1;return r.quorum!=null?i=r.quorum:s==="homestead"&&(i=2),new e.FallbackProvider(n,i)}return n[0]};return t.renetwork=function(e){return fe(e)},t}function ir(s,t){const e=function(r,n){return r.JsonRpcProvider?new r.JsonRpcProvider(s,t):null};return e.renetwork=function(r){return ir(s,r)},e}const Ci={chainId:1,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"homestead",_defaultProvider:fe("homestead")},Oi={chainId:3,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"ropsten",_defaultProvider:fe("ropsten")},Li={chainId:63,name:"classicMordor",_defaultProvider:ir("https://www.ethercluster.com/mordor","classicMordor")},ze={unspecified:{chainId:0,name:"unspecified"},homestead:Ci,mainnet:Ci,morden:{chainId:2,name:"morden"},ropsten:Oi,testnet:Oi,rinkeby:{chainId:4,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"rinkeby",_defaultProvider:fe("rinkeby")},kovan:{chainId:42,name:"kovan",_defaultProvider:fe("kovan")},goerli:{chainId:5,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"goerli",_defaultProvider:fe("goerli")},kintsugi:{chainId:1337702,name:"kintsugi"},sepolia:{chainId:11155111,name:"sepolia",_defaultProvider:fe("sepolia")},classic:{chainId:61,name:"classic",_defaultProvider:ir("https://www.ethercluster.com/etc","classic")},classicMorden:{chainId:62,name:"classicMorden"},classicMordor:Li,classicTestnet:Li,classicKotti:{chainId:6,name:"classicKotti",_defaultProvider:ir("https://www.ethercluster.com/kotti","classicKotti")},xdai:{chainId:100,name:"xdai"},matic:{chainId:137,name:"matic",_defaultProvider:fe("matic")},maticmum:{chainId:80001,name:"maticmum"},optimism:{chainId:10,name:"optimism",_defaultProvider:fe("optimism")},"optimism-kovan":{chainId:69,name:"optimism-kovan"},"optimism-goerli":{chainId:420,name:"optimism-goerli"},arbitrum:{chainId:42161,name:"arbitrum"},"arbitrum-rinkeby":{chainId:421611,name:"arbitrum-rinkeby"},"arbitrum-goerli":{chainId:421613,name:"arbitrum-goerli"},bnb:{chainId:56,name:"bnb"},bnbt:{chainId:97,name:"bnbt"}};function Nn(s){if(s==null)return null;if(typeof s=="number"){for(const r in ze){const n=ze[r];if(n.chainId===s)return{name:n.name,chainId:n.chainId,ensAddress:n.ensAddress||null,_defaultProvider:n._defaultProvider||null}}return{chainId:s,name:"unknown"}}if(typeof s=="string"){const r=ze[s];return r==null?null:{name:r.name,chainId:r.chainId,ensAddress:r.ensAddress,_defaultProvider:r._defaultProvider||null}}const t=ze[s.name];if(!t)return typeof s.chainId!="number"&&Bi.throwArgumentError("invalid network chainId","network",s),s;s.chainId!==0&&s.chainId!==t.chainId&&Bi.throwArgumentError("network chainId mismatch","network",s);let e=s._defaultProvider||null;return e==null&&t._defaultProvider&&(to(t._defaultProvider)?e=t._defaultProvider.renetwork(s):e=t._defaultProvider),{name:s.name,chainId:t.chainId,ensAddress:s.ensAddress||t.ensAddress||null,_defaultProvider:e}}const eo="web/5.7.1";var ro=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};function io(s,t){return ro(this,void 0,void 0,function*(){t==null&&(t={});const e={method:t.method||"GET",headers:t.headers||{},body:t.body||void 0};if(t.skipFetchSetup!==!0&&(e.mode="cors",e.cache="no-cache",e.credentials="same-origin",e.redirect="follow",e.referrer="client"),t.fetchOptions!=null){const a=t.fetchOptions;a.mode&&(e.mode=a.mode),a.cache&&(e.cache=a.cache),a.credentials&&(e.credentials=a.credentials),a.redirect&&(e.redirect=a.redirect),a.referrer&&(e.referrer=a.referrer)}const r=yield fetch(s,e),n=yield r.arrayBuffer(),i={};return r.headers.forEach?r.headers.forEach((a,u)=>{i[u.toLowerCase()]=a}):r.headers.keys().forEach(a=>{i[a.toLowerCase()]=r.headers.get(a)}),{headers:i,statusCode:r.status,statusMessage:r.statusText,body:K(new Uint8Array(n))}})}var no=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const ie=new x(eo);function Di(s){return new Promise(t=>{setTimeout(t,s)})}function ce(s,t){if(s==null)return null;if(typeof s=="string")return s;if(Gn(s)){if(t&&(t.split("/")[0]==="text"||t.split(";")[0].trim()==="application/json"))try{return or(s)}catch{}return Q(s)}return s}function so(s){return ke(s.replace(/%([0-9a-f][0-9a-f])/gi,(t,e)=>String.fromCharCode(parseInt(e,16))))}function oo(s,t,e){const r=typeof s=="object"&&s.throttleLimit!=null?s.throttleLimit:12;ie.assertArgument(r>0&&r%1===0,"invalid connection throttle limit","connection.throttleLimit",r);const n=typeof s=="object"?s.throttleCallback:null,i=typeof s=="object"&&typeof s.throttleSlotInterval=="number"?s.throttleSlotInterval:100;ie.assertArgument(i>0&&i%1===0,"invalid connection throttle slot interval","connection.throttleSlotInterval",i);const a=typeof s=="object"?!!s.errorPassThrough:!1,u={};let h=null;const d={method:"GET"};let p=!1,A=2*60*1e3;if(typeof s=="string")h=s;else if(typeof s=="object"){if((s==null||s.url==null)&&ie.throwArgumentError("missing URL","connection.url",s),h=s.url,typeof s.timeout=="number"&&s.timeout>0&&(A=s.timeout),s.headers)for(const P in s.headers)u[P.toLowerCase()]={key:P,value:String(s.headers[P])},["if-none-match","if-modified-since"].indexOf(P.toLowerCase())>=0&&(p=!0);if(d.allowGzip=!!s.allowGzip,s.user!=null&&s.password!=null){h.substring(0,6)!=="https:"&&s.allowInsecureAuthentication!==!0&&ie.throwError("basic authentication requires a secure https url",x.errors.INVALID_ARGUMENT,{argument:"url",url:h,user:s.user,password:"[REDACTED]"});const P=s.user+":"+s.password;u.authorization={key:"Authorization",value:"Basic "+hn(ke(P))}}s.skipFetchSetup!=null&&(d.skipFetchSetup=!!s.skipFetchSetup),s.fetchOptions!=null&&(d.fetchOptions=Ct(s.fetchOptions))}const M=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i"),E=h?h.match(M):null;if(E)try{const P={statusCode:200,statusMessage:"OK",headers:{"content-type":E[1]||"text/plain"},body:E[2]?un(E[3]):so(E[3])};let S=P.body;return e&&(S=e(P.body,P)),Promise.resolve(S)}catch(P){ie.throwError("processing response error",x.errors.SERVER_ERROR,{body:ce(E[1],E[2]),error:P,requestBody:null,requestMethod:"GET",url:h})}t&&(d.method="POST",d.body=t,u["content-type"]==null&&(u["content-type"]={key:"Content-Type",value:"application/octet-stream"}),u["content-length"]==null&&(u["content-length"]={key:"Content-Length",value:String(t.length)}));const _={};Object.keys(u).forEach(P=>{const S=u[P];_[S.key]=S.value}),d.headers=_;const I=function(){let P=null;return{promise:new Promise(function(J,F){A&&(P=setTimeout(()=>{P!=null&&(P=null,F(ie.makeError("timeout",x.errors.TIMEOUT,{requestBody:ce(d.body,_["content-type"]),requestMethod:d.method,timeout:A,url:h})))},A))}),cancel:function(){P!=null&&(clearTimeout(P),P=null)}}}(),T=function(){return no(this,void 0,void 0,function*(){for(let P=0;P=300)&&(I.cancel(),ie.throwError("bad response",x.errors.SERVER_ERROR,{status:S.statusCode,headers:S.headers,body:ce(G,S.headers?S.headers["content-type"]:null),requestBody:ce(d.body,_["content-type"]),requestMethod:d.method,url:h})),e)try{const J=yield e(G,S);return I.cancel(),J}catch(J){if(J.throttleRetry&&P{let u=null;if(i!=null)try{u=JSON.parse(or(i))}catch(h){ie.throwError("invalid JSON",x.errors.SERVER_ERROR,{body:i,error:h})}return e&&(u=e(u,a)),u},n=null;if(t!=null){n=ke(t);const i=typeof s=="string"?{url:s}:Ct(s);i.headers?Object.keys(i.headers).filter(u=>u.toLowerCase()==="content-type").length!==0||(i.headers=Ct(i.headers),i.headers["content-type"]="application/json"):i.headers={"content-type":"application/json"},s=i}return oo(s,n,r)}function _e(s,t){return t||(t={}),t=Ct(t),t.floor==null&&(t.floor=0),t.ceiling==null&&(t.ceiling=1e4),t.interval==null&&(t.interval=250),new Promise(function(e,r){let n=null,i=!1;const a=()=>i?!1:(i=!0,n&&clearTimeout(n),!0);t.timeout&&(n=setTimeout(()=>{a()&&r(new Error("timeout"))},t.timeout));const u=t.retryLimit;let h=0;function d(){return s().then(function(p){if(p!==void 0)a()&&e(p);else if(t.oncePoll)t.oncePoll.once("poll",d);else if(t.onceBlock)t.onceBlock.once("block",d);else if(!i){if(h++,h>u){a()&&r(new Error("retry limit reached"));return}let A=t.interval*parseInt(String(Math.random()*Math.pow(2,h)));At.ceiling&&(A=t.ceiling),setTimeout(d,A)}return null},function(p){a()&&r(p)})}d()})}const Jt="providers/5.7.2",Re=new x(Jt);class N{constructor(){this.formats=this.getDefaultFormats()}getDefaultFormats(){const t={},e=this.address.bind(this),r=this.bigNumber.bind(this),n=this.blockTag.bind(this),i=this.data.bind(this),a=this.hash.bind(this),u=this.hex.bind(this),h=this.number.bind(this),d=this.type.bind(this),p=A=>this.data(A,!0);return t.transaction={hash:a,type:d,accessList:N.allowNull(this.accessList.bind(this),null),blockHash:N.allowNull(a,null),blockNumber:N.allowNull(h,null),transactionIndex:N.allowNull(h,null),confirmations:N.allowNull(h,null),from:e,gasPrice:N.allowNull(r),maxPriorityFeePerGas:N.allowNull(r),maxFeePerGas:N.allowNull(r),gasLimit:r,to:N.allowNull(e,null),value:r,nonce:h,data:i,r:N.allowNull(this.uint256),s:N.allowNull(this.uint256),v:N.allowNull(h),creates:N.allowNull(e,null),raw:N.allowNull(i)},t.transactionRequest={from:N.allowNull(e),nonce:N.allowNull(h),gasLimit:N.allowNull(r),gasPrice:N.allowNull(r),maxPriorityFeePerGas:N.allowNull(r),maxFeePerGas:N.allowNull(r),to:N.allowNull(e),value:N.allowNull(r),data:N.allowNull(p),type:N.allowNull(h),accessList:N.allowNull(this.accessList.bind(this),null)},t.receiptLog={transactionIndex:h,blockNumber:h,transactionHash:a,address:e,topics:N.arrayOf(a),data:i,logIndex:h,blockHash:a},t.receipt={to:N.allowNull(this.address,null),from:N.allowNull(this.address,null),contractAddress:N.allowNull(e,null),transactionIndex:h,root:N.allowNull(u),gasUsed:r,logsBloom:N.allowNull(i),blockHash:a,transactionHash:a,logs:N.arrayOf(this.receiptLog.bind(this)),blockNumber:h,confirmations:N.allowNull(h,null),cumulativeGasUsed:r,effectiveGasPrice:N.allowNull(r),status:N.allowNull(h),type:d},t.block={hash:N.allowNull(a),parentHash:a,number:h,timestamp:h,nonce:N.allowNull(u),difficulty:this.difficulty.bind(this),gasLimit:r,gasUsed:r,miner:N.allowNull(e),extraData:i,transactions:N.allowNull(N.arrayOf(a)),baseFeePerGas:N.allowNull(r)},t.blockWithTransactions=Ct(t.block),t.blockWithTransactions.transactions=N.allowNull(N.arrayOf(this.transactionResponse.bind(this))),t.filter={fromBlock:N.allowNull(n,void 0),toBlock:N.allowNull(n,void 0),blockHash:N.allowNull(a,void 0),address:N.allowNull(e,void 0),topics:N.allowNull(this.topics.bind(this),void 0)},t.filterLog={blockNumber:N.allowNull(h),blockHash:N.allowNull(a),transactionIndex:h,removed:N.allowNull(this.boolean.bind(this)),address:e,data:N.allowFalsish(i,"0x"),topics:N.arrayOf(a),transactionHash:a,logIndex:h},t}accessList(t){return Se(t||[])}number(t){return t==="0x"?0:O.from(t).toNumber()}type(t){return t==="0x"||t==null?0:O.from(t).toNumber()}bigNumber(t){return O.from(t)}boolean(t){if(typeof t=="boolean")return t;if(typeof t=="string"){if(t=t.toLowerCase(),t==="true")return!0;if(t==="false")return!1}throw new Error("invalid boolean - "+t)}hex(t,e){return typeof t=="string"&&(!e&&t.substring(0,2)!=="0x"&&(t="0x"+t),Bt(t))?t.toLowerCase():Re.throwArgumentError("invalid hash","value",t)}data(t,e){const r=this.hex(t,e);if(r.length%2!==0)throw new Error("invalid data; odd-length - "+t);return r}address(t){return ue(t)}callAddress(t){if(!Bt(t,32))return null;const e=ue(Ht(t,12));return e===Vn?null:e}contractAddress(t){return zn(t)}blockTag(t){if(t==null)return"latest";if(t==="earliest")return"0x0";switch(t){case"earliest":return"0x0";case"latest":case"pending":case"safe":case"finalized":return t}if(typeof t=="number"||Bt(t))return ar(t);throw new Error("invalid blockTag")}hash(t,e){const r=this.hex(t,e);return Ee(r)!==32?Re.throwArgumentError("invalid hash","value",t):r}difficulty(t){if(t==null)return null;const e=O.from(t);try{return e.toNumber()}catch{}return null}uint256(t){if(!Bt(t))throw new Error("invalid uint256");return Dt(t,32)}_block(t,e){t.author!=null&&t.miner==null&&(t.miner=t.author);const r=t._difficulty!=null?t._difficulty:t.difficulty,n=N.check(e,t);return n._difficulty=r==null?null:O.from(r),n}block(t){return this._block(t,this.formats.block)}blockWithTransactions(t){return this._block(t,this.formats.blockWithTransactions)}transactionRequest(t){return N.check(this.formats.transactionRequest,t)}transactionResponse(t){t.gas!=null&&t.gasLimit==null&&(t.gasLimit=t.gas),t.to&&O.from(t.to).isZero()&&(t.to="0x0000000000000000000000000000000000000000"),t.input!=null&&t.data==null&&(t.data=t.input),t.to==null&&t.creates==null&&(t.creates=this.contractAddress(t)),(t.type===1||t.type===2)&&t.accessList==null&&(t.accessList=[]);const e=N.check(this.formats.transaction,t);if(t.chainId!=null){let r=t.chainId;Bt(r)&&(r=O.from(r).toNumber()),e.chainId=r}else{let r=t.networkId;r==null&&e.v==null&&(r=t.chainId),Bt(r)&&(r=O.from(r).toNumber()),typeof r!="number"&&e.v!=null&&(r=(e.v-35)/2,r<0&&(r=0),r=parseInt(r)),typeof r!="number"&&(r=0),e.chainId=r}return e.blockHash&&e.blockHash.replace(/0/g,"")==="x"&&(e.blockHash=null),e}transaction(t){return Vs(t)}receiptLog(t){return N.check(this.formats.receiptLog,t)}receipt(t){const e=N.check(this.formats.receipt,t);if(e.root!=null)if(e.root.length<=4){const r=O.from(e.root).toNumber();r===0||r===1?(e.status!=null&&e.status!==r&&Re.throwArgumentError("alt-root-status/status mismatch","value",{root:e.root,status:e.status}),e.status=r,delete e.root):Re.throwArgumentError("invalid alt-root-status","value.root",e.root)}else e.root.length!==66&&Re.throwArgumentError("invalid root hash","value.root",e.root);return e.status!=null&&(e.byzantium=!0),e}topics(t){return Array.isArray(t)?t.map(e=>this.topics(e)):t!=null?this.hash(t,!0):null}filter(t){return N.check(this.formats.filter,t)}filterLog(t){return N.check(this.formats.filterLog,t)}static check(t,e){const r={};for(const n in t)try{const i=t[n](e[n]);i!==void 0&&(r[n]=i)}catch(i){throw i.checkKey=n,i.checkValue=e[n],i}return r}static allowNull(t,e){return function(r){return r==null?e:t(r)}}static allowFalsish(t,e){return function(r){return r?t(r):e}}static arrayOf(t){return function(e){if(!Array.isArray(e))throw new Error("not an array");const r=[];return e.forEach(function(n){r.push(t(n))}),r}}}function ao(s){return s&&typeof s.isCommunityResource=="function"}function qi(s){return ao(s)&&s.isCommunityResource()}let Fi=!1;function cr(){Fi||(Fi=!0,console.log("========= NOTICE ========="),console.log("Request-Rate Exceeded (this message will not be repeated)"),console.log(""),console.log("The default API keys for each service are provided as a highly-throttled,"),console.log("community resource for low-traffic projects and early prototyping."),console.log(""),console.log("While your application will continue to function, we highly recommended"),console.log("signing up for your own API keys to improve performance, increase your"),console.log("request rate/limit and enable other perks, such as metrics and advanced APIs."),console.log(""),console.log("For more details: https://docs.ethers.io/api-keys/"),console.log("=========================="))}var D=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const U=new x(Jt),fo=10;function Ui(s){return s==null?"null":(Ee(s)!==32&&U.throwArgumentError("invalid topic","topic",s),s.toLowerCase())}function Gi(s){for(s=s.slice();s.length>0&&s[s.length-1]==null;)s.pop();return s.map(t=>{if(Array.isArray(t)){const e={};t.forEach(n=>{e[Ui(n)]=!0});const r=Object.keys(e);return r.sort(),r.join("|")}else return Ui(t)}).join("&")}function lo(s){return s===""?[]:s.split(/&/g).map(t=>{if(t==="")return[];const e=t.split("|").map(r=>r==="null"?null:r);return e.length===1?e[0]:e})}function Me(s){if(typeof s=="string"){if(s=s.toLowerCase(),Ee(s)===32)return"tx:"+s;if(s.indexOf(":")===-1)return s}else{if(Array.isArray(s))return"filter:*:"+Gi(s);if(jn.isForkEvent(s))throw U.warn("not implemented"),new Error("not implemented");if(s&&typeof s=="object")return"filter:"+(s.address||"*")+":"+Gi(s.topics||[])}throw new Error("invalid event - "+s)}function Te(){return new Date().getTime()}function zi(s){return new Promise(t=>{setTimeout(t,s)})}const uo=["block","network","pending","poll"];class ho{constructor(t,e,r){R(this,"tag",t),R(this,"listener",e),R(this,"once",r),this._lastBlockNumber=-2,this._inflight=!1}get event(){switch(this.type){case"tx":return this.hash;case"filter":return this.filter}return this.tag}get type(){return this.tag.split(":")[0]}get hash(){const t=this.tag.split(":");return t[0]!=="tx"?null:t[1]}get filter(){const t=this.tag.split(":");if(t[0]!=="filter")return null;const e=t[1],r=lo(t[2]),n={};return r.length>0&&(n.topics=r),e&&e!=="*"&&(n.address=e),n}pollable(){return this.tag.indexOf(":")>=0||uo.indexOf(this.tag)>=0}}const co={0:{symbol:"btc",p2pkh:0,p2sh:5,prefix:"bc"},2:{symbol:"ltc",p2pkh:48,p2sh:50,prefix:"ltc"},3:{symbol:"doge",p2pkh:30,p2sh:22},60:{symbol:"eth",ilk:"eth"},61:{symbol:"etc",ilk:"eth"},700:{symbol:"xdai",ilk:"eth"}};function qr(s){return Dt(O.from(s).toHexString(),32)}function Ji(s){return Kr.encode(be([s,Ht(Si(Si(s)),0,4)]))}const Sn=new RegExp("^(ipfs)://(.*)$","i"),Ki=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),Sn,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];function Ve(s,t){try{return or(Ue(s,t))}catch{}return null}function Ue(s,t){if(s==="0x")return null;const e=O.from(Ht(s,t,t+32)).toNumber(),r=O.from(Ht(s,e,e+32)).toNumber();return Ht(s,e+32,e+32+r)}function Fr(s){return s.match(/^ipfs:\/\/ipfs\//i)?s=s.substring(12):s.match(/^ipfs:\/\//i)?s=s.substring(7):U.throwArgumentError("unsupported IPFS format","link",s),`https://gateway.ipfs.io/ipfs/${s}`}function Hi(s){const t=K(s);if(t.length>32)throw new Error("internal; should not happen");const e=new Uint8Array(32);return e.set(t,32-t.length),e}function po(s){if(s.length%32===0)return s;const t=new Uint8Array(Math.ceil(s.length/32)*32);return t.set(s),t}function Rn(s){const t=[];let e=0;for(let r=0;rO.from(t).eq(1)).catch(t=>{if(t.code===x.errors.CALL_EXCEPTION)return!1;throw this._supportsEip2544=null,t})),this._supportsEip2544}_fetch(t,e){return D(this,void 0,void 0,function*(){const r={to:this.address,ccipReadEnabled:!0,data:Wt([t,Ye(this.name),e||"0x"])};let n=!1;(yield this.supportsWildcard())&&(n=!0,r.data=Wt(["0x9061b923",Rn([ks(this.name),r.data])]));try{let i=yield this.provider.call(r);return K(i).length%32===4&&U.throwError("resolver threw error",x.errors.CALL_EXCEPTION,{transaction:r,data:i}),n&&(i=Ue(i,0)),i}catch(i){if(i.code===x.errors.CALL_EXCEPTION)return null;throw i}})}_fetchBytes(t,e){return D(this,void 0,void 0,function*(){const r=yield this._fetch(t,e);return r!=null?Ue(r,0):null})}_getAddress(t,e){const r=co[String(t)];if(r==null&&U.throwError(`unsupported coin type: ${t}`,x.errors.UNSUPPORTED_OPERATION,{operation:`getAddress(${t})`}),r.ilk==="eth")return this.provider.formatter.address(e);const n=K(e);if(r.p2pkh!=null){const i=e.match(/^0x76a9([0-9a-f][0-9a-f])([0-9a-f]*)88ac$/);if(i){const a=parseInt(i[1],16);if(i[2].length===a*2&&a>=1&&a<=75)return Ji(be([[r.p2pkh],"0x"+i[2]]))}}if(r.p2sh!=null){const i=e.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/);if(i){const a=parseInt(i[1],16);if(i[2].length===a*2&&a>=1&&a<=75)return Ji(be([[r.p2sh],"0x"+i[2]]))}}if(r.prefix!=null){const i=n[1];let a=n[0];if(a===0?i!==20&&i!==32&&(a=-1):a=-1,a>=0&&n.length===2+i&&i>=1&&i<=75){const u=ki.toWords(n.slice(2));return u.unshift(a),ki.encode(r.prefix,u)}}return null}getAddress(t){return D(this,void 0,void 0,function*(){if(t==null&&(t=60),t===60)try{const n=yield this._fetch("0x3b3b57de");return n==="0x"||n===Zn?null:this.provider.formatter.callAddress(n)}catch(n){if(n.code===x.errors.CALL_EXCEPTION)return null;throw n}const e=yield this._fetchBytes("0xf1cb7e06",qr(t));if(e==null||e==="0x")return null;const r=this._getAddress(t,e);return r==null&&U.throwError("invalid or unsupported coin data",x.errors.UNSUPPORTED_OPERATION,{operation:`getAddress(${t})`,coinType:t,data:e}),r})}getAvatar(){return D(this,void 0,void 0,function*(){const t=[{type:"name",content:this.name}];try{const e=yield this.getText("avatar");if(e==null)return null;for(let r=0;ra[h])}return U.throwError("invalid or unsupported content hash data",x.errors.UNSUPPORTED_OPERATION,{operation:"getContentHash()",data:t})})}getText(t){return D(this,void 0,void 0,function*(){let e=ke(t);e=be([qr(64),qr(e.length),e]),e.length%32!==0&&(e=be([e,Dt("0x",32-t.length%32)]));const r=yield this._fetchBytes("0x59d1d43c",Q(e));return r==null||r==="0x"?null:or(r)})}}let Ur=null,go=1;class ri extends fr{constructor(t){if(super(),this._events=[],this._emitted={block:-2},this.disableCcipRead=!1,this.formatter=new.target.getFormatter(),R(this,"anyNetwork",t==="any"),this.anyNetwork&&(t=this.detectNetwork()),t instanceof Promise)this._networkPromise=t,t.catch(e=>{}),this._ready().catch(e=>{});else{const e=pe(new.target,"getNetwork")(t);e?(R(this,"_network",e),this.emit("network",e,null)):U.throwArgumentError("invalid network","network",t)}this._maxInternalBlockNumber=-1024,this._lastBlockNumber=-2,this._maxFilterBlockRange=10,this._pollingInterval=4e3,this._fastQueryDate=0}_ready(){return D(this,void 0,void 0,function*(){if(this._network==null){let t=null;if(this._networkPromise)try{t=yield this._networkPromise}catch{}t==null&&(t=yield this.detectNetwork()),t||U.throwError("no network detected",x.errors.UNKNOWN_ERROR,{}),this._network==null&&(this.anyNetwork?this._network=t:R(this,"_network",t),this.emit("network",t,null))}return this._network})}get ready(){return _e(()=>this._ready().then(t=>t,t=>{if(!(t.code===x.errors.NETWORK_ERROR&&t.event==="noNetwork"))throw t}))}static getFormatter(){return Ur==null&&(Ur=new N),Ur}static getNetwork(t){return Nn(t??"homestead")}ccipReadFetch(t,e,r){return D(this,void 0,void 0,function*(){if(this.disableCcipRead||r.length===0)return null;const n=t.to.toLowerCase(),i=e.toLowerCase(),a=[];for(let u=0;u=0?null:JSON.stringify({data:i,sender:n}),A=yield Ge({url:d,errorPassThrough:!0},p,(E,_)=>(E.status=_.statusCode,E));if(A.data)return A.data;const M=A.message||"unknown error";if(A.status>=400&&A.status<500)return U.throwError(`response not found during CCIP fetch: ${M}`,x.errors.SERVER_ERROR,{url:h,errorMessage:M});a.push(M)}return U.throwError(`error encountered during CCIP fetch: ${a.map(u=>JSON.stringify(u)).join(", ")}`,x.errors.SERVER_ERROR,{urls:r,errorMessages:a})})}_getInternalBlockNumber(t){return D(this,void 0,void 0,function*(){if(yield this._ready(),t>0)for(;this._internalBlockNumber;){const n=this._internalBlockNumber;try{const i=yield n;if(Te()-i.respTime<=t)return i.blockNumber;break}catch{if(this._internalBlockNumber===n)break}}const e=Te(),r=Lt({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then(n=>null,n=>n)}).then(({blockNumber:n,networkError:i})=>{if(i)throw this._internalBlockNumber===r&&(this._internalBlockNumber=null),i;const a=Te();return n=O.from(n).toNumber(),n{this._internalBlockNumber===r&&(this._internalBlockNumber=null)}),(yield r).blockNumber})}poll(){return D(this,void 0,void 0,function*(){const t=go++,e=[];let r=null;try{r=yield this._getInternalBlockNumber(100+this.pollingInterval/2)}catch(n){this.emit("error",n);return}if(this._setFastBlockNumber(r),this.emit("poll",t,r),r===this._lastBlockNumber){this.emit("didPoll",t);return}if(this._emitted.block===-2&&(this._emitted.block=r-1),Math.abs(this._emitted.block-r)>1e3)U.warn(`network block skew detected; skipping block events (emitted=${this._emitted.block} blockNumber${r})`),this.emit("error",U.makeError("network block skew detected",x.errors.NETWORK_ERROR,{blockNumber:r,event:"blockSkew",previousBlockNumber:this._emitted.block})),this.emit("block",r);else for(let n=this._emitted.block+1;n<=r;n++)this.emit("block",n);this._emitted.block!==r&&(this._emitted.block=r,Object.keys(this._emitted).forEach(n=>{if(n==="block")return;const i=this._emitted[n];i!=="pending"&&r-i>12&&delete this._emitted[n]})),this._lastBlockNumber===-2&&(this._lastBlockNumber=r-1),this._events.forEach(n=>{switch(n.type){case"tx":{const i=n.hash;let a=this.getTransactionReceipt(i).then(u=>(!u||u.blockNumber==null||(this._emitted["t:"+i]=u.blockNumber,this.emit(i,u)),null)).catch(u=>{this.emit("error",u)});e.push(a);break}case"filter":{if(!n._inflight){n._inflight=!0,n._lastBlockNumber===-2&&(n._lastBlockNumber=r-1);const i=n.filter;i.fromBlock=n._lastBlockNumber+1,i.toBlock=r;const a=i.toBlock-this._maxFilterBlockRange;a>i.fromBlock&&(i.fromBlock=a),i.fromBlock<0&&(i.fromBlock=0);const u=this.getLogs(i).then(h=>{n._inflight=!1,h.length!==0&&h.forEach(d=>{d.blockNumber>n._lastBlockNumber&&(n._lastBlockNumber=d.blockNumber),this._emitted["b:"+d.blockHash]=d.blockNumber,this._emitted["t:"+d.transactionHash]=d.blockNumber,this.emit(i,d)})}).catch(h=>{this.emit("error",h),n._inflight=!1});e.push(u)}break}}}),this._lastBlockNumber=r,Promise.all(e).then(()=>{this.emit("didPoll",t)}).catch(n=>{this.emit("error",n)})})}resetEventsBlock(t){this._lastBlockNumber=t-1,this.polling&&this.poll()}get network(){return this._network}detectNetwork(){return D(this,void 0,void 0,function*(){return U.throwError("provider does not support network detection",x.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})})}getNetwork(){return D(this,void 0,void 0,function*(){const t=yield this._ready(),e=yield this.detectNetwork();if(t.chainId!==e.chainId){if(this.anyNetwork)return this._network=e,this._lastBlockNumber=-2,this._fastBlockNumber=null,this._fastBlockNumberPromise=null,this._fastQueryDate=0,this._emitted.block=-2,this._maxInternalBlockNumber=-1024,this._internalBlockNumber=null,this.emit("network",e,t),yield zi(0),this._network;const r=U.makeError("underlying network changed",x.errors.NETWORK_ERROR,{event:"changed",network:t,detectedNetwork:e});throw this.emit("error",r),r}return t})}get blockNumber(){return this._getInternalBlockNumber(100+this.pollingInterval/2).then(t=>{this._setFastBlockNumber(t)},t=>{}),this._fastBlockNumber!=null?this._fastBlockNumber:-1}get polling(){return this._poller!=null}set polling(t){t&&!this._poller?(this._poller=setInterval(()=>{this.poll()},this.pollingInterval),this._bootstrapPoll||(this._bootstrapPoll=setTimeout(()=>{this.poll(),this._bootstrapPoll=setTimeout(()=>{this._poller||this.poll(),this._bootstrapPoll=null},this.pollingInterval)},0))):!t&&this._poller&&(clearInterval(this._poller),this._poller=null)}get pollingInterval(){return this._pollingInterval}set pollingInterval(t){if(typeof t!="number"||t<=0||parseInt(String(t))!=t)throw new Error("invalid polling interval");this._pollingInterval=t,this._poller&&(clearInterval(this._poller),this._poller=setInterval(()=>{this.poll()},this._pollingInterval))}_getFastBlockNumber(){const t=Te();return t-this._fastQueryDate>2*this._pollingInterval&&(this._fastQueryDate=t,this._fastBlockNumberPromise=this.getBlockNumber().then(e=>((this._fastBlockNumber==null||e>this._fastBlockNumber)&&(this._fastBlockNumber=e),this._fastBlockNumber))),this._fastBlockNumberPromise}_setFastBlockNumber(t){this._fastBlockNumber!=null&&tthis._fastBlockNumber)&&(this._fastBlockNumber=t,this._fastBlockNumberPromise=Promise.resolve(t)))}waitForTransaction(t,e,r){return D(this,void 0,void 0,function*(){return this._waitForTransaction(t,e??1,r||0,null)})}_waitForTransaction(t,e,r,n){return D(this,void 0,void 0,function*(){const i=yield this.getTransactionReceipt(t);return(i?i.confirmations:0)>=e?i:new Promise((a,u)=>{const h=[];let d=!1;const p=function(){return d?!0:(d=!0,h.forEach(M=>{M()}),!1)},A=M=>{M.confirmations{this.removeListener(t,A)}),n){let M=n.startBlock,E=null;const _=I=>D(this,void 0,void 0,function*(){d||(yield zi(1e3),this.getTransactionCount(n.from).then(T=>D(this,void 0,void 0,function*(){if(!d){if(T<=n.nonce)M=I;else{{const P=yield this.getTransaction(t);if(P&&P.blockNumber!=null)return}for(E==null&&(E=M-3,E{d||this.once("block",_)}))});if(d)return;this.once("block",_),h.push(()=>{this.removeListener("block",_)})}if(typeof r=="number"&&r>0){const M=setTimeout(()=>{p()||u(U.makeError("timeout exceeded",x.errors.TIMEOUT,{timeout:r}))},r);M.unref&&M.unref(),h.push(()=>{clearTimeout(M)})}})})}getBlockNumber(){return D(this,void 0,void 0,function*(){return this._getInternalBlockNumber(0)})}getGasPrice(){return D(this,void 0,void 0,function*(){yield this.getNetwork();const t=yield this.perform("getGasPrice",{});try{return O.from(t)}catch(e){return U.throwError("bad result from backend",x.errors.SERVER_ERROR,{method:"getGasPrice",result:t,error:e})}})}getBalance(t,e){return D(this,void 0,void 0,function*(){yield this.getNetwork();const r=yield Lt({address:this._getAddress(t),blockTag:this._getBlockTag(e)}),n=yield this.perform("getBalance",r);try{return O.from(n)}catch(i){return U.throwError("bad result from backend",x.errors.SERVER_ERROR,{method:"getBalance",params:r,result:n,error:i})}})}getTransactionCount(t,e){return D(this,void 0,void 0,function*(){yield this.getNetwork();const r=yield Lt({address:this._getAddress(t),blockTag:this._getBlockTag(e)}),n=yield this.perform("getTransactionCount",r);try{return O.from(n).toNumber()}catch(i){return U.throwError("bad result from backend",x.errors.SERVER_ERROR,{method:"getTransactionCount",params:r,result:n,error:i})}})}getCode(t,e){return D(this,void 0,void 0,function*(){yield this.getNetwork();const r=yield Lt({address:this._getAddress(t),blockTag:this._getBlockTag(e)}),n=yield this.perform("getCode",r);try{return Q(n)}catch(i){return U.throwError("bad result from backend",x.errors.SERVER_ERROR,{method:"getCode",params:r,result:n,error:i})}})}getStorageAt(t,e,r){return D(this,void 0,void 0,function*(){yield this.getNetwork();const n=yield Lt({address:this._getAddress(t),blockTag:this._getBlockTag(r),position:Promise.resolve(e).then(a=>ar(a))}),i=yield this.perform("getStorageAt",n);try{return Q(i)}catch(a){return U.throwError("bad result from backend",x.errors.SERVER_ERROR,{method:"getStorageAt",params:n,result:i,error:a})}})}_wrapTransaction(t,e,r){if(e!=null&&Ee(e)!==32)throw new Error("invalid response - sendTransaction");const n=t;return e!=null&&t.hash!==e&&U.throwError("Transaction hash mismatch from Provider.sendTransaction.",x.errors.UNKNOWN_ERROR,{expectedHash:t.hash,returnedHash:e}),n.wait=(i,a)=>D(this,void 0,void 0,function*(){i==null&&(i=1),a==null&&(a=0);let u;i!==0&&r!=null&&(u={data:t.data,from:t.from,nonce:t.nonce,to:t.to,value:t.value,startBlock:r});const h=yield this._waitForTransaction(t.hash,i,a,u);return h==null&&i===0?null:(this._emitted["t:"+t.hash]=h.blockNumber,h.status===0&&U.throwError("transaction failed",x.errors.CALL_EXCEPTION,{transactionHash:t.hash,transaction:t,receipt:h}),h)}),n}sendTransaction(t){return D(this,void 0,void 0,function*(){yield this.getNetwork();const e=yield Promise.resolve(t).then(i=>Q(i)),r=this.formatter.transaction(t);r.confirmations==null&&(r.confirmations=0);const n=yield this._getInternalBlockNumber(100+2*this.pollingInterval);try{const i=yield this.perform("sendTransaction",{signedTransaction:e});return this._wrapTransaction(r,i,n)}catch(i){throw i.transaction=r,i.transactionHash=r.hash,i}})}_getTransactionRequest(t){return D(this,void 0,void 0,function*(){const e=yield t,r={};return["from","to"].forEach(n=>{e[n]!=null&&(r[n]=Promise.resolve(e[n]).then(i=>i?this._getAddress(i):null))}),["gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","value"].forEach(n=>{e[n]!=null&&(r[n]=Promise.resolve(e[n]).then(i=>i?O.from(i):null))}),["type"].forEach(n=>{e[n]!=null&&(r[n]=Promise.resolve(e[n]).then(i=>i??null))}),e.accessList&&(r.accessList=this.formatter.accessList(e.accessList)),["data"].forEach(n=>{e[n]!=null&&(r[n]=Promise.resolve(e[n]).then(i=>i?Q(i):null))}),this.formatter.transactionRequest(yield Lt(r))})}_getFilter(t){return D(this,void 0,void 0,function*(){t=yield t;const e={};return t.address!=null&&(e.address=this._getAddress(t.address)),["blockHash","topics"].forEach(r=>{t[r]!=null&&(e[r]=t[r])}),["fromBlock","toBlock"].forEach(r=>{t[r]!=null&&(e[r]=this._getBlockTag(t[r]))}),this.formatter.filter(yield Lt(e))})}_call(t,e,r){return D(this,void 0,void 0,function*(){r>=fo&&U.throwError("CCIP read exceeded maximum redirections",x.errors.SERVER_ERROR,{redirects:r,transaction:t});const n=t.to,i=yield this.perform("call",{transaction:t,blockTag:e});if(r>=0&&e==="latest"&&n!=null&&i.substring(0,10)==="0x556f1830"&&Ee(i)%32===4)try{const a=Ht(i,4),u=Ht(a,0,32);O.from(u).eq(n)||U.throwError("CCIP Read sender did not match",x.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:t,data:i});const h=[],d=O.from(Ht(a,32,64)).toNumber(),p=O.from(Ht(a,d,d+32)).toNumber(),A=Ht(a,d+32);for(let P=0;PD(this,void 0,void 0,function*(){const i=yield this.perform("getBlock",n);if(i==null)return n.blockHash!=null&&this._emitted["b:"+n.blockHash]==null||n.blockTag!=null&&r>this._emitted.block?null:void 0;if(e){let a=null;for(let h=0;hthis._wrapTransaction(h)),u}return this.formatter.block(i)}),{oncePoll:this})})}getBlock(t){return this._getBlock(t,!1)}getBlockWithTransactions(t){return this._getBlock(t,!0)}getTransaction(t){return D(this,void 0,void 0,function*(){yield this.getNetwork(),t=yield t;const e={transactionHash:this.formatter.hash(t,!0)};return _e(()=>D(this,void 0,void 0,function*(){const r=yield this.perform("getTransaction",e);if(r==null)return this._emitted["t:"+t]==null?null:void 0;const n=this.formatter.transactionResponse(r);if(n.blockNumber==null)n.confirmations=0;else if(n.confirmations==null){let a=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-n.blockNumber+1;a<=0&&(a=1),n.confirmations=a}return this._wrapTransaction(n)}),{oncePoll:this})})}getTransactionReceipt(t){return D(this,void 0,void 0,function*(){yield this.getNetwork(),t=yield t;const e={transactionHash:this.formatter.hash(t,!0)};return _e(()=>D(this,void 0,void 0,function*(){const r=yield this.perform("getTransactionReceipt",e);if(r==null)return this._emitted["t:"+t]==null?null:void 0;if(r.blockHash==null)return;const n=this.formatter.receipt(r);if(n.blockNumber==null)n.confirmations=0;else if(n.confirmations==null){let a=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-n.blockNumber+1;a<=0&&(a=1),n.confirmations=a}return n}),{oncePoll:this})})}getLogs(t){return D(this,void 0,void 0,function*(){yield this.getNetwork();const e=yield Lt({filter:this._getFilter(t)}),r=yield this.perform("getLogs",e);return r.forEach(n=>{n.removed==null&&(n.removed=!1)}),N.arrayOf(this.formatter.filterLog.bind(this.formatter))(r)})}getEtherPrice(){return D(this,void 0,void 0,function*(){return yield this.getNetwork(),this.perform("getEtherPrice",{})})}_getBlockTag(t){return D(this,void 0,void 0,function*(){if(t=yield t,typeof t=="number"&&t<0){t%1&&U.throwArgumentError("invalid BlockTag","blockTag",t);let e=yield this._getInternalBlockNumber(100+2*this.pollingInterval);return e+=t,e<0&&(e=0),this.formatter.blockTag(e)}return this.formatter.blockTag(t)})}getResolver(t){return D(this,void 0,void 0,function*(){let e=t;for(;;){if(e===""||e==="."||t!=="eth"&&e==="eth")return null;const r=yield this._getResolver(e,"getResolver");if(r!=null){const n=new Qi(this,r,t);return e!==t&&!(yield n.supportsWildcard())?null:n}e=e.split(".").slice(1).join(".")}})}_getResolver(t,e){return D(this,void 0,void 0,function*(){e==null&&(e="ENS");const r=yield this.getNetwork();r.ensAddress||U.throwError("network does not support ENS",x.errors.UNSUPPORTED_OPERATION,{operation:e,network:r.name});try{const n=yield this.call({to:r.ensAddress,data:"0x0178b8bf"+Ye(t).substring(2)});return this.formatter.callAddress(n)}catch{}return null})}resolveName(t){return D(this,void 0,void 0,function*(){t=yield t;try{return Promise.resolve(this.formatter.address(t))}catch(r){if(Bt(t))throw r}typeof t!="string"&&U.throwArgumentError("invalid ENS name","name",t);const e=yield this.getResolver(t);return e?yield e.getAddress():null})}lookupAddress(t){return D(this,void 0,void 0,function*(){t=yield t,t=this.formatter.address(t);const e=t.substring(2).toLowerCase()+".addr.reverse",r=yield this._getResolver(e,"lookupAddress");if(r==null)return null;const n=Ve(yield this.call({to:r,data:"0x691f3431"+Ye(e).substring(2)}),0);return(yield this.resolveName(n))!=t?null:n})}getAvatar(t){return D(this,void 0,void 0,function*(){let e=null;if(Bt(t)){const i=this.formatter.address(t).substring(2).toLowerCase()+".addr.reverse",a=yield this._getResolver(i,"getAvatar");if(!a)return null;e=new Qi(this,a,i);try{const u=yield e.getAvatar();if(u)return u.url}catch(u){if(u.code!==x.errors.CALL_EXCEPTION)throw u}try{const u=Ve(yield this.call({to:a,data:"0x691f3431"+Ye(i).substring(2)}),0);e=yield this.getResolver(u)}catch(u){if(u.code!==x.errors.CALL_EXCEPTION)throw u;return null}}else if(e=yield this.getResolver(t),!e)return null;const r=yield e.getAvatar();return r==null?null:r.url})}perform(t,e){return U.throwError(t+" not implemented",x.errors.NOT_IMPLEMENTED,{operation:t})}_startEvent(t){this.polling=this._events.filter(e=>e.pollable()).length>0}_stopEvent(t){this.polling=this._events.filter(e=>e.pollable()).length>0}_addEventListener(t,e,r){const n=new ho(Me(t),e,r);return this._events.push(n),this._startEvent(n),this}on(t,e){return this._addEventListener(t,e,!1)}once(t,e){return this._addEventListener(t,e,!0)}emit(t,...e){let r=!1,n=[],i=Me(t);return this._events=this._events.filter(a=>a.tag!==i?!0:(setTimeout(()=>{a.listener.apply(this,e)},0),r=!0,a.once?(n.push(a),!1):!0)),n.forEach(a=>{this._stopEvent(a)}),r}listenerCount(t){if(!t)return this._events.length;let e=Me(t);return this._events.filter(r=>r.tag===e).length}listeners(t){if(t==null)return this._events.map(r=>r.listener);let e=Me(t);return this._events.filter(r=>r.tag===e).map(r=>r.listener)}off(t,e){if(e==null)return this.removeAllListeners(t);const r=[];let n=!1,i=Me(t);return this._events=this._events.filter(a=>a.tag!==i||a.listener!=e||n?!0:(n=!0,r.push(a),!1)),r.forEach(a=>{this._stopEvent(a)}),this}removeAllListeners(t){let e=[];if(t==null)e=this._events,this._events=[];else{const r=Me(t);this._events=this._events.filter(n=>n.tag!==r?!0:(e.push(n),!1))}return e.forEach(r=>{this._stopEvent(r)}),this}}var ae=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Tt=new x(Jt),mo=["call","estimateGas"];function De(s,t){if(s==null)return null;if(typeof s.message=="string"&&s.message.match("reverted")){const e=Bt(s.data)?s.data:null;if(!t||e)return{message:s.message,data:e}}if(typeof s=="object"){for(const e in s){const r=De(s[e],t);if(r)return r}return null}if(typeof s=="string")try{return De(JSON.parse(s),t)}catch{}return null}function Tn(s,t,e){const r=e.transaction||e.signedTransaction;if(s==="call"){const i=De(t,!0);if(i)return i.data;Tt.throwError("missing revert data in call exception; Transaction reverted without a reason string",x.errors.CALL_EXCEPTION,{data:"0x",transaction:r,error:t})}if(s==="estimateGas"){let i=De(t.body,!1);i==null&&(i=De(t,!1)),i&&Tt.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",x.errors.UNPREDICTABLE_GAS_LIMIT,{reason:i.message,method:s,transaction:r,error:t})}let n=t.message;throw t.code===x.errors.SERVER_ERROR&&t.error&&typeof t.error.message=="string"?n=t.error.message:typeof t.body=="string"?n=t.body:typeof t.responseText=="string"&&(n=t.responseText),n=(n||"").toLowerCase(),n.match(/insufficient funds|base fee exceeds gas limit|InsufficientFunds/i)&&Tt.throwError("insufficient funds for intrinsic transaction cost",x.errors.INSUFFICIENT_FUNDS,{error:t,method:s,transaction:r}),n.match(/nonce (is )?too low/i)&&Tt.throwError("nonce has already been used",x.errors.NONCE_EXPIRED,{error:t,method:s,transaction:r}),n.match(/replacement transaction underpriced|transaction gas price.*too low/i)&&Tt.throwError("replacement fee too low",x.errors.REPLACEMENT_UNDERPRICED,{error:t,method:s,transaction:r}),n.match(/only replay-protected/i)&&Tt.throwError("legacy pre-eip-155 transactions not supported",x.errors.UNSUPPORTED_OPERATION,{error:t,method:s,transaction:r}),mo.indexOf(s)>=0&&n.match(/gas required exceeds allowance|always failing transaction|execution reverted|revert/)&&Tt.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",x.errors.UNPREDICTABLE_GAS_LIMIT,{error:t,method:s,transaction:r}),t}function ji(s){return new Promise(function(t){setTimeout(t,s)})}function vo(s){if(s.error){const t=new Error(s.error.message);throw t.code=s.error.code,t.data=s.error.data,t}return s.result}function Be(s){return s&&s.toLowerCase()}const Yr={};class Bn extends Vr{constructor(t,e,r){if(super(),t!==Yr)throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner");R(this,"provider",e),r==null&&(r=0),typeof r=="string"?(R(this,"_address",this.provider.formatter.address(r)),R(this,"_index",null)):typeof r=="number"?(R(this,"_index",r),R(this,"_address",null)):Tt.throwArgumentError("invalid address or index","addressOrIndex",r)}connect(t){return Tt.throwError("cannot alter JSON-RPC Signer connection",x.errors.UNSUPPORTED_OPERATION,{operation:"connect"})}connectUnchecked(){return new wo(Yr,this.provider,this._address||this._index)}getAddress(){return this._address?Promise.resolve(this._address):this.provider.send("eth_accounts",[]).then(t=>(t.length<=this._index&&Tt.throwError("unknown account #"+this._index,x.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"}),this.provider.formatter.address(t[this._index])))}sendUncheckedTransaction(t){t=Ct(t);const e=this.getAddress().then(r=>(r&&(r=r.toLowerCase()),r));if(t.gasLimit==null){const r=Ct(t);r.from=e,t.gasLimit=this.provider.estimateGas(r)}return t.to!=null&&(t.to=Promise.resolve(t.to).then(r=>ae(this,void 0,void 0,function*(){if(r==null)return null;const n=yield this.provider.resolveName(r);return n==null&&Tt.throwArgumentError("provided ENS name resolves to null","tx.to",r),n}))),Lt({tx:Lt(t),sender:e}).then(({tx:r,sender:n})=>{r.from!=null?r.from.toLowerCase()!==n&&Tt.throwArgumentError("from address mismatch","transaction",t):r.from=n;const i=this.provider.constructor.hexlifyTransaction(r,{from:!0});return this.provider.send("eth_sendTransaction",[i]).then(a=>a,a=>(typeof a.message=="string"&&a.message.match(/user denied/i)&&Tt.throwError("user rejected transaction",x.errors.ACTION_REJECTED,{action:"sendTransaction",transaction:r}),Tn("sendTransaction",a,i)))})}signTransaction(t){return Tt.throwError("signing transactions is unsupported",x.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})}sendTransaction(t){return ae(this,void 0,void 0,function*(){const e=yield this.provider._getInternalBlockNumber(100+2*this.provider.pollingInterval),r=yield this.sendUncheckedTransaction(t);try{return yield _e(()=>ae(this,void 0,void 0,function*(){const n=yield this.provider.getTransaction(r);if(n!==null)return this.provider._wrapTransaction(n,r,e)}),{oncePoll:this.provider})}catch(n){throw n.transactionHash=r,n}})}signMessage(t){return ae(this,void 0,void 0,function*(){const e=typeof t=="string"?ke(t):t,r=yield this.getAddress();try{return yield this.provider.send("personal_sign",[Q(e),r.toLowerCase()])}catch(n){throw typeof n.message=="string"&&n.message.match(/user denied/i)&&Tt.throwError("user rejected signing",x.errors.ACTION_REJECTED,{action:"signMessage",from:r,messageData:t}),n}})}_legacySignMessage(t){return ae(this,void 0,void 0,function*(){const e=typeof t=="string"?ke(t):t,r=yield this.getAddress();try{return yield this.provider.send("eth_sign",[r.toLowerCase(),Q(e)])}catch(n){throw typeof n.message=="string"&&n.message.match(/user denied/i)&&Tt.throwError("user rejected signing",x.errors.ACTION_REJECTED,{action:"_legacySignMessage",from:r,messageData:t}),n}})}_signTypedData(t,e,r){return ae(this,void 0,void 0,function*(){const n=yield jt.resolveNames(t,e,r,a=>this.provider.resolveName(a)),i=yield this.getAddress();try{return yield this.provider.send("eth_signTypedData_v4",[i.toLowerCase(),JSON.stringify(jt.getPayload(n.domain,e,n.value))])}catch(a){throw typeof a.message=="string"&&a.message.match(/user denied/i)&&Tt.throwError("user rejected signing",x.errors.ACTION_REJECTED,{action:"_signTypedData",from:i,messageData:{domain:n.domain,types:e,value:n.value}}),a}})}unlock(t){return ae(this,void 0,void 0,function*(){const e=this.provider,r=yield this.getAddress();return e.send("personal_unlockAccount",[r.toLowerCase(),t,null])})}}class wo extends Bn{sendTransaction(t){return this.sendUncheckedTransaction(t).then(e=>({hash:e,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:r=>this.provider.waitForTransaction(e,r)}))}}const yo={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0,type:!0,accessList:!0,maxFeePerGas:!0,maxPriorityFeePerGas:!0};class Pe extends ri{constructor(t,e){let r=e;r==null&&(r=new Promise((n,i)=>{setTimeout(()=>{this.detectNetwork().then(a=>{n(a)},a=>{i(a)})},0)})),super(r),t||(t=pe(this.constructor,"defaultUrl")()),typeof t=="string"?R(this,"connection",Object.freeze({url:t})):R(this,"connection",Object.freeze(Ct(t))),this._nextId=42}get _cache(){return this._eventLoopCache==null&&(this._eventLoopCache={}),this._eventLoopCache}static defaultUrl(){return"http://localhost:8545"}detectNetwork(){return this._cache.detectNetwork||(this._cache.detectNetwork=this._uncachedDetectNetwork(),setTimeout(()=>{this._cache.detectNetwork=null},0)),this._cache.detectNetwork}_uncachedDetectNetwork(){return ae(this,void 0,void 0,function*(){yield ji(0);let t=null;try{t=yield this.send("eth_chainId",[])}catch{try{t=yield this.send("net_version",[])}catch{}}if(t!=null){const e=pe(this.constructor,"getNetwork");try{return e(O.from(t).toNumber())}catch(r){return Tt.throwError("could not detect network",x.errors.NETWORK_ERROR,{chainId:t,event:"invalidNetwork",serverError:r})}}return Tt.throwError("could not detect network",x.errors.NETWORK_ERROR,{event:"noNetwork"})})}getSigner(t){return new Bn(Yr,this,t)}getUncheckedSigner(t){return this.getSigner(t).connectUnchecked()}listAccounts(){return this.send("eth_accounts",[]).then(t=>t.map(e=>this.formatter.address(e)))}send(t,e){const r={method:t,params:e,id:this._nextId++,jsonrpc:"2.0"};this.emit("debug",{action:"request",request:le(r),provider:this});const n=["eth_chainId","eth_blockNumber"].indexOf(t)>=0;if(n&&this._cache[t])return this._cache[t];const i=Ge(this.connection,JSON.stringify(r),vo).then(a=>(this.emit("debug",{action:"response",request:r,response:a,provider:this}),a),a=>{throw this.emit("debug",{action:"response",error:a,request:r,provider:this}),a});return n&&(this._cache[t]=i,setTimeout(()=>{this._cache[t]=null},0)),i}prepareRequest(t,e){switch(t){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[Be(e.address),e.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[Be(e.address),e.blockTag]];case"getCode":return["eth_getCode",[Be(e.address),e.blockTag]];case"getStorageAt":return["eth_getStorageAt",[Be(e.address),Dt(e.position,32),e.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[e.signedTransaction]];case"getBlock":return e.blockTag?["eth_getBlockByNumber",[e.blockTag,!!e.includeTransactions]]:e.blockHash?["eth_getBlockByHash",[e.blockHash,!!e.includeTransactions]]:null;case"getTransaction":return["eth_getTransactionByHash",[e.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[e.transactionHash]];case"call":return["eth_call",[pe(this.constructor,"hexlifyTransaction")(e.transaction,{from:!0}),e.blockTag]];case"estimateGas":return["eth_estimateGas",[pe(this.constructor,"hexlifyTransaction")(e.transaction,{from:!0})]];case"getLogs":return e.filter&&e.filter.address!=null&&(e.filter.address=Be(e.filter.address)),["eth_getLogs",[e.filter]]}return null}perform(t,e){return ae(this,void 0,void 0,function*(){if(t==="call"||t==="estimateGas"){const n=e.transaction;if(n&&n.type!=null&&O.from(n.type).isZero()&&n.maxFeePerGas==null&&n.maxPriorityFeePerGas==null){const i=yield this.getFeeData();i.maxFeePerGas==null&&i.maxPriorityFeePerGas==null&&(e=Ct(e),e.transaction=Ct(n),delete e.transaction.type)}}const r=this.prepareRequest(t,e);r==null&&Tt.throwError(t+" not implemented",x.errors.NOT_IMPLEMENTED,{operation:t});try{return yield this.send(r[0],r[1])}catch(n){return Tn(t,n,e)}})}_startEvent(t){t.tag==="pending"&&this._startPending(),super._startEvent(t)}_startPending(){if(this._pendingFilter!=null)return;const t=this,e=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=e,e.then(function(r){function n(){t.send("eth_getFilterChanges",[r]).then(function(i){if(t._pendingFilter!=e)return null;let a=Promise.resolve();return i.forEach(function(u){t._emitted["t:"+u.toLowerCase()]="pending",a=a.then(function(){return t.getTransaction(u).then(function(h){return t.emit("pending",h),null})})}),a.then(function(){return ji(1e3)})}).then(function(){if(t._pendingFilter!=e){t.send("eth_uninstallFilter",[r]);return}return setTimeout(function(){n()},0),null}).catch(i=>{})}return n(),r}).catch(r=>{})}_stopEvent(t){t.tag==="pending"&&this.listenerCount("pending")===0&&(this._pendingFilter=null),super._stopEvent(t)}static hexlifyTransaction(t,e){const r=Ct(yo);if(e)for(const i in e)e[i]&&(r[i]=!0);Jn(t,r);const n={};return["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach(function(i){if(t[i]==null)return;const a=ar(O.from(t[i]));i==="gasLimit"&&(i="gas"),n[i]=a}),["from","to","data"].forEach(function(i){t[i]!=null&&(n[i]=Q(t[i]))}),t.accessList&&(n.accessList=Se(t.accessList)),n}}let qe=null;try{if(qe=WebSocket,qe==null)throw new Error("inject please")}catch{const t=new x(Jt);qe=function(){t.throwError("WebSockets not supported in this environment",x.errors.UNSUPPORTED_OPERATION,{operation:"new WebSocket()"})}}var Gr=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Je=new x(Jt);let Ao=1;class ii extends Pe{constructor(t,e){e==="any"&&Je.throwError("WebSocketProvider does not support 'any' network yet",x.errors.UNSUPPORTED_OPERATION,{operation:"network:any"}),typeof t=="string"?super(t,e):super("_websocket",e),this._pollingInterval=-1,this._wsReady=!1,typeof t=="string"?R(this,"_websocket",new qe(this.connection.url)):R(this,"_websocket",t),R(this,"_requests",{}),R(this,"_subs",{}),R(this,"_subIds",{}),R(this,"_detectNetwork",super.detectNetwork()),this.websocket.onopen=()=>{this._wsReady=!0,Object.keys(this._requests).forEach(n=>{this.websocket.send(this._requests[n].payload)})},this.websocket.onmessage=n=>{const i=n.data,a=JSON.parse(i);if(a.id!=null){const u=String(a.id),h=this._requests[u];if(delete this._requests[u],a.result!==void 0)h.callback(null,a.result),this.emit("debug",{action:"response",request:JSON.parse(h.payload),response:a.result,provider:this});else{let d=null;a.error?(d=new Error(a.error.message||"unknown error"),R(d,"code",a.error.code||null),R(d,"response",i)):d=new Error("unknown error"),h.callback(d,void 0),this.emit("debug",{action:"response",error:d,request:JSON.parse(h.payload),provider:this})}}else if(a.method==="eth_subscription"){const u=this._subs[a.params.subscription];u&&u.processFunc(a.params.result)}else console.warn("this should not happen")};const r=setInterval(()=>{this.emit("poll")},1e3);r.unref&&r.unref()}get websocket(){return this._websocket}detectNetwork(){return this._detectNetwork}get pollingInterval(){return 0}resetEventsBlock(t){Je.throwError("cannot reset events block on WebSocketProvider",x.errors.UNSUPPORTED_OPERATION,{operation:"resetEventBlock"})}set pollingInterval(t){Je.throwError("cannot set polling interval on WebSocketProvider",x.errors.UNSUPPORTED_OPERATION,{operation:"setPollingInterval"})}poll(){return Gr(this,void 0,void 0,function*(){return null})}set polling(t){t&&Je.throwError("cannot set polling on WebSocketProvider",x.errors.UNSUPPORTED_OPERATION,{operation:"setPolling"})}send(t,e){const r=Ao++;return new Promise((n,i)=>{function a(h,d){return h?i(h):n(d)}const u=JSON.stringify({method:t,params:e,id:r,jsonrpc:"2.0"});this.emit("debug",{action:"request",request:JSON.parse(u),provider:this}),this._requests[String(r)]={callback:a,payload:u},this._wsReady&&this.websocket.send(u)})}static defaultUrl(){return"ws://localhost:8546"}_subscribe(t,e,r){return Gr(this,void 0,void 0,function*(){let n=this._subIds[t];n==null&&(n=Promise.all(e).then(a=>this.send("eth_subscribe",a)),this._subIds[t]=n);const i=yield n;this._subs[i]={tag:t,processFunc:r}})}_startEvent(t){switch(t.type){case"block":this._subscribe("block",["newHeads"],e=>{const r=O.from(e.number).toNumber();this._emitted.block=r,this.emit("block",r)});break;case"pending":this._subscribe("pending",["newPendingTransactions"],e=>{this.emit("pending",e)});break;case"filter":this._subscribe(t.tag,["logs",this._getFilter(t.filter)],e=>{e.removed==null&&(e.removed=!1),this.emit(t.filter,this.formatter.filterLog(e))});break;case"tx":{const e=r=>{const n=r.hash;this.getTransactionReceipt(n).then(i=>{i&&this.emit(n,i)})};e(t),this._subscribe("tx",["newHeads"],r=>{this._events.filter(n=>n.type==="tx").forEach(e)});break}case"debug":case"poll":case"willPoll":case"didPoll":case"error":break;default:console.log("unhandled:",t);break}}_stopEvent(t){let e=t.tag;if(t.type==="tx"){if(this._events.filter(n=>n.type==="tx").length)return;e="tx"}else if(this.listenerCount(t.event))return;const r=this._subIds[e];r&&(delete this._subIds[e],r.then(n=>{this._subs[n]&&(delete this._subs[n],this.send("eth_unsubscribe",[n]))}))}destroy(){return Gr(this,void 0,void 0,function*(){this.websocket.readyState===qe.CONNECTING&&(yield new Promise(t=>{this.websocket.onopen=function(){t(!0)},this.websocket.onerror=function(){t(!1)}})),this.websocket.close(1e3)})}}var bo=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Oe=new x(Jt);class ko extends Pe{detectNetwork(){const t=Object.create(null,{detectNetwork:{get:()=>super.detectNetwork}});return bo(this,void 0,void 0,function*(){let e=this.network;return e==null&&(e=yield t.detectNetwork.call(this),e||Oe.throwError("no network detected",x.errors.UNKNOWN_ERROR,{}),this._network==null&&(R(this,"_network",e),this.emit("network",e,null))),e})}}class ve extends ko{constructor(t,e){Oe.checkAbstract(new.target,ve),t=pe(new.target,"getNetwork")(t),e=pe(new.target,"getApiKey")(e);const r=pe(new.target,"getUrl")(t,e);super(r,t),typeof e=="string"?R(this,"apiKey",e):e!=null&&Object.keys(e).forEach(n=>{R(this,n,e[n])})}_startPending(){Oe.warn("WARNING: API provider does not support pending filters")}isCommunityResource(){return!1}getSigner(t){return Oe.throwError("API provider does not support signing",x.errors.UNSUPPORTED_OPERATION,{operation:"getSigner"})}listAccounts(){return Promise.resolve([])}static getApiKey(t){return t}static getUrl(t,e){return Oe.throwError("not implemented; sub-classes must override getUrl",x.errors.NOT_IMPLEMENTED,{operation:"getUrl"})}}const Yi=new x(Jt),Ze="_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC";class Eo extends ii{constructor(t,e){const r=new Cn(t,e),n=r.connection.url.replace(/^http/i,"ws").replace(".alchemyapi.",".ws.alchemyapi.");super(n,r.network),R(this,"apiKey",r.apiKey)}isCommunityResource(){return this.apiKey===Ze}}class Cn extends ve{static getWebSocketProvider(t,e){return new Eo(t,e)}static getApiKey(t){return t==null?Ze:(t&&typeof t!="string"&&Yi.throwArgumentError("invalid apiKey","apiKey",t),t)}static getUrl(t,e){let r=null;switch(t.name){case"homestead":r="eth-mainnet.alchemyapi.io/v2/";break;case"goerli":r="eth-goerli.g.alchemy.com/v2/";break;case"matic":r="polygon-mainnet.g.alchemy.com/v2/";break;case"maticmum":r="polygon-mumbai.g.alchemy.com/v2/";break;case"arbitrum":r="arb-mainnet.g.alchemy.com/v2/";break;case"arbitrum-goerli":r="arb-goerli.g.alchemy.com/v2/";break;case"optimism":r="opt-mainnet.g.alchemy.com/v2/";break;case"optimism-goerli":r="opt-goerli.g.alchemy.com/v2/";break;default:Yi.throwArgumentError("unsupported network","network",arguments[0])}return{allowGzip:!0,url:"https://"+r+e,throttleCallback:(n,i)=>(e===Ze&&cr(),Promise.resolve(!0))}}isCommunityResource(){return this.apiKey===Ze}}const xo=new x(Jt),Ke="9f7d929b018cdffb338517efa06f58359e86ff1ffd350bc889738523659e7972";function Mo(s){switch(s){case"homestead":return"rpc.ankr.com/eth/";case"ropsten":return"rpc.ankr.com/eth_ropsten/";case"rinkeby":return"rpc.ankr.com/eth_rinkeby/";case"goerli":return"rpc.ankr.com/eth_goerli/";case"matic":return"rpc.ankr.com/polygon/";case"arbitrum":return"rpc.ankr.com/arbitrum/"}return xo.throwArgumentError("unsupported network","name",s)}class _o extends ve{isCommunityResource(){return this.apiKey===Ke}static getApiKey(t){return t??Ke}static getUrl(t,e){e==null&&(e=Ke);const r={allowGzip:!0,url:"https://"+Mo(t.name)+e,throttleCallback:(n,i)=>(e.apiKey===Ke&&cr(),Promise.resolve(!0))};return e.projectSecret!=null&&(r.user="",r.password=e.projectSecret),r}}var Io=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Wi=new x(Jt);class Po extends ve{static getApiKey(t){return t!=null&&Wi.throwArgumentError("apiKey not supported for cloudflare","apiKey",t),null}static getUrl(t,e){let r=null;switch(t.name){case"homestead":r="https://cloudflare-eth.com/";break;default:Wi.throwArgumentError("unsupported network","network",arguments[0])}return r}perform(t,e){const r=Object.create(null,{perform:{get:()=>super.perform}});return Io(this,void 0,void 0,function*(){return t==="getBlockNumber"?(yield r.perform.call(this,"getBlock",{blockTag:"latest"})).number:r.perform.call(this,t,e)})}}var He=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const de=new x(Jt);function Xi(s){const t={};for(let e in s){if(s[e]==null)continue;let r=s[e];e==="type"&&r===0||({type:!0,gasLimit:!0,gasPrice:!0,maxFeePerGs:!0,maxPriorityFeePerGas:!0,nonce:!0,value:!0}[e]?r=ar(Q(r)):e==="accessList"?r="["+Se(r).map(n=>`{address:"${n.address}",storageKeys:["${n.storageKeys.join('","')}"]}`).join(",")+"]":r=Q(r),t[e]=r)}return t}function No(s){if(s.status==0&&(s.message==="No records found"||s.message==="No transactions found"))return s.result;if(s.status!=1||typeof s.message!="string"||!s.message.match(/^OK/)){const t=new Error("invalid response");throw t.result=JSON.stringify(s),(s.result||"").toLowerCase().indexOf("rate limit")>=0&&(t.throttleRetry=!0),t}return s.result}function Vi(s){if(s&&s.status==0&&s.message=="NOTOK"&&(s.result||"").toLowerCase().indexOf("rate limit")>=0){const t=new Error("throttled response");throw t.result=JSON.stringify(s),t.throttleRetry=!0,t}if(s.jsonrpc!="2.0"){const t=new Error("invalid response");throw t.result=JSON.stringify(s),t}if(s.error){const t=new Error(s.error.message||"unknown error");throw s.error.code&&(t.code=s.error.code),s.error.data&&(t.data=s.error.data),t}return s.result}function Zi(s){if(s==="pending")throw new Error("pending not supported");return s==="latest"?s:parseInt(s.substring(2),16)}function zr(s,t,e){if(s==="call"&&t.code===x.errors.SERVER_ERROR){const n=t.error;if(n&&(n.message.match(/reverted/i)||n.message.match(/VM execution error/i))){let i=n.data;if(i&&(i="0x"+i.replace(/^.*0x/i,"")),Bt(i))return i;de.throwError("missing revert data in call exception",x.errors.CALL_EXCEPTION,{error:t,data:"0x"})}}let r=t.message;throw t.code===x.errors.SERVER_ERROR&&(t.error&&typeof t.error.message=="string"?r=t.error.message:typeof t.body=="string"?r=t.body:typeof t.responseText=="string"&&(r=t.responseText)),r=(r||"").toLowerCase(),r.match(/insufficient funds/)&&de.throwError("insufficient funds for intrinsic transaction cost",x.errors.INSUFFICIENT_FUNDS,{error:t,method:s,transaction:e}),r.match(/same hash was already imported|transaction nonce is too low|nonce too low/)&&de.throwError("nonce has already been used",x.errors.NONCE_EXPIRED,{error:t,method:s,transaction:e}),r.match(/another transaction with same nonce/)&&de.throwError("replacement fee too low",x.errors.REPLACEMENT_UNDERPRICED,{error:t,method:s,transaction:e}),r.match(/execution failed due to an exception|execution reverted/)&&de.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",x.errors.UNPREDICTABLE_GAS_LIMIT,{error:t,method:s,transaction:e}),t}class So extends ri{constructor(t,e){super(t),R(this,"baseUrl",this.getBaseUrl()),R(this,"apiKey",e||null)}getBaseUrl(){switch(this.network?this.network.name:"invalid"){case"homestead":return"https://api.etherscan.io";case"goerli":return"https://api-goerli.etherscan.io";case"sepolia":return"https://api-sepolia.etherscan.io";case"matic":return"https://api.polygonscan.com";case"maticmum":return"https://api-testnet.polygonscan.com";case"arbitrum":return"https://api.arbiscan.io";case"arbitrum-goerli":return"https://api-goerli.arbiscan.io";case"optimism":return"https://api-optimistic.etherscan.io";case"optimism-goerli":return"https://api-goerli-optimistic.etherscan.io"}return de.throwArgumentError("unsupported network","network",this.network.name)}getUrl(t,e){const r=Object.keys(e).reduce((i,a)=>{const u=e[a];return u!=null&&(i+=`&${a}=${u}`),i},""),n=this.apiKey?`&apikey=${this.apiKey}`:"";return`${this.baseUrl}/api?module=${t}${r}${n}`}getPostUrl(){return`${this.baseUrl}/api`}getPostData(t,e){return e.module=t,e.apikey=this.apiKey,e}fetch(t,e,r){return He(this,void 0,void 0,function*(){const n=r?this.getPostUrl():this.getUrl(t,e),i=r?this.getPostData(t,e):null,a=t==="proxy"?Vi:No;this.emit("debug",{action:"request",request:n,provider:this});const u={url:n,throttleSlotInterval:1e3,throttleCallback:(p,A)=>(this.isCommunityResource()&&cr(),Promise.resolve(!0))};let h=null;i&&(u.headers={"content-type":"application/x-www-form-urlencoded; charset=UTF-8"},h=Object.keys(i).map(p=>`${p}=${i[p]}`).join("&"));const d=yield Ge(u,h,a||Vi);return this.emit("debug",{action:"response",request:n,response:le(d),provider:this}),d})}detectNetwork(){return He(this,void 0,void 0,function*(){return this.network})}perform(t,e){const r=Object.create(null,{perform:{get:()=>super.perform}});return He(this,void 0,void 0,function*(){switch(t){case"getBlockNumber":return this.fetch("proxy",{action:"eth_blockNumber"});case"getGasPrice":return this.fetch("proxy",{action:"eth_gasPrice"});case"getBalance":return this.fetch("account",{action:"balance",address:e.address,tag:e.blockTag});case"getTransactionCount":return this.fetch("proxy",{action:"eth_getTransactionCount",address:e.address,tag:e.blockTag});case"getCode":return this.fetch("proxy",{action:"eth_getCode",address:e.address,tag:e.blockTag});case"getStorageAt":return this.fetch("proxy",{action:"eth_getStorageAt",address:e.address,position:e.position,tag:e.blockTag});case"sendTransaction":return this.fetch("proxy",{action:"eth_sendRawTransaction",hex:e.signedTransaction},!0).catch(n=>zr("sendTransaction",n,e.signedTransaction));case"getBlock":if(e.blockTag)return this.fetch("proxy",{action:"eth_getBlockByNumber",tag:e.blockTag,boolean:e.includeTransactions?"true":"false"});throw new Error("getBlock by blockHash not implemented");case"getTransaction":return this.fetch("proxy",{action:"eth_getTransactionByHash",txhash:e.transactionHash});case"getTransactionReceipt":return this.fetch("proxy",{action:"eth_getTransactionReceipt",txhash:e.transactionHash});case"call":{if(e.blockTag!=="latest")throw new Error("EtherscanProvider does not support blockTag for call");const n=Xi(e.transaction);n.module="proxy",n.action="eth_call";try{return yield this.fetch("proxy",n,!0)}catch(i){return zr("call",i,e.transaction)}}case"estimateGas":{const n=Xi(e.transaction);n.module="proxy",n.action="eth_estimateGas";try{return yield this.fetch("proxy",n,!0)}catch(i){return zr("estimateGas",i,e.transaction)}}case"getLogs":{const n={action:"getLogs"};if(e.filter.fromBlock&&(n.fromBlock=Zi(e.filter.fromBlock)),e.filter.toBlock&&(n.toBlock=Zi(e.filter.toBlock)),e.filter.address&&(n.address=e.filter.address),e.filter.topics&&e.filter.topics.length>0&&(e.filter.topics.length>1&&de.throwError("unsupported topic count",x.errors.UNSUPPORTED_OPERATION,{topics:e.filter.topics}),e.filter.topics.length===1)){const u=e.filter.topics[0];(typeof u!="string"||u.length!==66)&&de.throwError("unsupported topic format",x.errors.UNSUPPORTED_OPERATION,{topic0:u}),n.topic0=u}const i=yield this.fetch("logs",n);let a={};for(let u=0;u{["contractAddress","to"].forEach(function(h){a[h]==""&&delete a[h]}),a.creates==null&&a.contractAddress!=null&&(a.creates=a.contractAddress);const u=this.formatter.transactionResponse(a);return a.timeStamp&&(u.timestamp=parseInt(a.timeStamp)),u})})}isCommunityResource(){return this.apiKey==null}}var nr=globalThis&&globalThis.__awaiter||function(s,t,e,r){function n(i){return i instanceof e?i:new e(function(a){a(i)})}return new(e||(e=Promise))(function(i,a){function u(p){try{d(r.next(p))}catch(A){a(A)}}function h(p){try{d(r.throw(p))}catch(A){a(A)}}function d(p){p.done?i(p.value):n(p.value).then(u,h)}d((r=r.apply(s,t||[])).next())})};const Ae=new x(Jt);function Qe(){return new Date().getTime()}function $i(s){let t=null;for(let e=0;et?null:(r+n)/2}function Ie(s){if(s===null)return"null";if(typeof s=="number"||typeof s=="boolean")return JSON.stringify(s);if(typeof s=="string")return s;if(O.isBigNumber(s))return s.toString();if(Array.isArray(s))return JSON.stringify(s.map(t=>Ie(t)));if(typeof s=="object"){const t=Object.keys(s);return t.sort(),"{"+t.map(e=>{let r=s[e];return typeof r=="function"?r="[function]":r=Ie(r),JSON.stringify(e)+":"+r}).join(",")+"}"}throw new Error("unknown value type: "+typeof s)}let Ro=1;function en(s){let t=null,e=null,r=new Promise(a=>{t=function(){e&&(clearTimeout(e),e=null),a()},e=setTimeout(t,s)});const n=a=>(r=r.then(a),r);function i(){return r}return{cancel:t,getPromise:i,wait:n}}const To=[x.errors.CALL_EXCEPTION,x.errors.INSUFFICIENT_FUNDS,x.errors.NONCE_EXPIRED,x.errors.REPLACEMENT_UNDERPRICED,x.errors.UNPREDICTABLE_GAS_LIMIT],Bo=["address","args","errorArgs","errorSignature","method","transaction"];function je(s,t){const e={weight:s.weight};return Object.defineProperty(e,"provider",{get:()=>s.provider}),s.start&&(e.start=s.start),t&&(e.duration=t-s.start),s.done&&(s.error?e.error=s.error:e.result=s.result||null),e}function Co(s,t){return function(e){const r={};e.forEach(i=>{const a=s(i.result);r[a]||(r[a]={count:0,result:i.result}),r[a].count++});const n=Object.keys(r);for(let i=0;i=t)return a.result}}}function Oo(s,t,e){let r=Ie;switch(t){case"getBlockNumber":return function(n){const i=n.map(u=>u.result);let a=tn(n.map(u=>u.result),2);if(a!=null)return a=Math.ceil(a),i.indexOf(a+1)>=0&&a++,a>=s._highestBlockNumber&&(s._highestBlockNumber=a),s._highestBlockNumber};case"getGasPrice":return function(n){const i=n.map(a=>a.result);return i.sort(),i[Math.floor(i.length/2)]};case"getEtherPrice":return function(n){return tn(n.map(i=>i.result))};case"getBalance":case"getTransactionCount":case"getCode":case"getStorageAt":case"call":case"estimateGas":case"getLogs":break;case"getTransaction":case"getTransactionReceipt":r=function(n){return n==null?null:(n=Ct(n),n.confirmations=-1,Ie(n))};break;case"getBlock":e.includeTransactions?r=function(n){return n==null?null:(n=Ct(n),n.transactions=n.transactions.map(i=>(i=Ct(i),i.confirmations=-1,i)),Ie(n))}:r=function(n){return n==null?null:Ie(n)};break;default:throw new Error("unknown method: "+t)}return Co(r,s.quorum)}function Ce(s,t){return nr(this,void 0,void 0,function*(){const e=s.provider;return e.blockNumber!=null&&e.blockNumber>=t||t===-1?e:_e(()=>new Promise((r,n)=>{setTimeout(function(){return e.blockNumber>=t?r(e):s.cancelled?r(null):r(void 0)},0)}),{oncePoll:e})})}function Lo(s,t,e,r){return nr(this,void 0,void 0,function*(){let n=s.provider;switch(e){case"getBlockNumber":case"getGasPrice":return n[e]();case"getEtherPrice":if(n.getEtherPrice)return n.getEtherPrice();break;case"getBalance":case"getTransactionCount":case"getCode":return r.blockTag&&Bt(r.blockTag)&&(n=yield Ce(s,t)),n[e](r.address,r.blockTag||"latest");case"getStorageAt":return r.blockTag&&Bt(r.blockTag)&&(n=yield Ce(s,t)),n.getStorageAt(r.address,r.position,r.blockTag||"latest");case"getBlock":return r.blockTag&&Bt(r.blockTag)&&(n=yield Ce(s,t)),n[r.includeTransactions?"getBlockWithTransactions":"getBlock"](r.blockTag||r.blockHash);case"call":case"estimateGas":return r.blockTag&&Bt(r.blockTag)&&(n=yield Ce(s,t)),e==="call"&&r.blockTag?n[e](r.transaction,r.blockTag):n[e](r.transaction);case"getTransaction":case"getTransactionReceipt":return n[e](r.transactionHash);case"getLogs":{let i=r.filter;return(i.fromBlock&&Bt(i.fromBlock)||i.toBlock&&Bt(i.toBlock))&&(n=yield Ce(s,t)),n.getLogs(i)}}return Ae.throwError("unknown method error",x.errors.UNKNOWN_ERROR,{method:e,params:r})})}class Do extends ri{constructor(t,e){t.length===0&&Ae.throwArgumentError("missing providers","providers",t);const r=t.map((a,u)=>{if(fr.isProvider(a)){const p=qi(a)?2e3:750;return Object.freeze({provider:a,weight:1,stallTimeout:p,priority:1})}const h=Ct(a);h.priority==null&&(h.priority=1),h.stallTimeout==null&&(h.stallTimeout=qi(a)?2e3:750),h.weight==null&&(h.weight=1);const d=h.weight;return(d%1||d>512||d<1)&&Ae.throwArgumentError("invalid weight; must be integer in [1, 512]",`providers[${u}].weight`,d),Object.freeze(h)}),n=r.reduce((a,u)=>a+u.weight,0);e==null?e=n/2:e>n&&Ae.throwArgumentError("quorum will always fail; larger than total weight","quorum",e);let i=$i(r.map(a=>a.provider.network));i==null&&(i=new Promise((a,u)=>{setTimeout(()=>{this.detectNetwork().then(a,u)},0)})),super(i),R(this,"providerConfigs",Object.freeze(r)),R(this,"quorum",e),this._highestBlockNumber=-1}detectNetwork(){return nr(this,void 0,void 0,function*(){const t=yield Promise.all(this.providerConfigs.map(e=>e.provider.getNetwork()));return $i(t)})}perform(t,e){return nr(this,void 0,void 0,function*(){if(t==="sendTransaction"){const h=yield Promise.all(this.providerConfigs.map(d=>d.provider.sendTransaction(e.signedTransaction).then(p=>p.hash,p=>p)));for(let d=0;dh.priority-d.priority);const i=this._highestBlockNumber;let a=0,u=!0;for(;;){const h=Qe();let d=n.filter(E=>E.runner&&h-E.startE+_.weight,0);for(;d{E.staller=null}),E.runner=Lo(E,i,t,e).then(I=>{E.done=!0,E.result=I,this.listenerCount("debug")&&this.emit("debug",{action:"request",rid:_,backend:je(E,Qe()),request:{method:t,params:le(e)},provider:this})},I=>{E.done=!0,E.error=I,this.listenerCount("debug")&&this.emit("debug",{action:"request",rid:_,backend:je(E,Qe()),request:{method:t,params:le(e)},provider:this})}),this.listenerCount("debug")&&this.emit("debug",{action:"request",rid:_,backend:je(E,null),request:{method:t,params:le(e)},provider:this}),d+=E.weight}const p=[];n.forEach(E=>{E.done||!E.runner||(p.push(E.runner),E.staller&&p.push(E.staller.getPromise()))}),p.length&&(yield Promise.race(p));const A=n.filter(E=>E.done&&E.error==null);if(A.length>=this.quorum){const E=r(A);if(E!==void 0)return n.forEach(_=>{_.staller&&_.staller.cancel(),_.cancelled=!0}),E;u||(yield en(100).getPromise()),u=!1}const M=n.reduce((E,_)=>{if(!_.done||_.error==null)return E;const I=_.error.code;return To.indexOf(I)>=0&&(E[I]||(E[I]={error:_.error,weight:0}),E[I].weight+=_.weight),E},{});if(Object.keys(M).forEach(E=>{const _=M[E];if(_.weight{P.staller&&P.staller.cancel(),P.cancelled=!0});const I=_.error,T={};Bo.forEach(P=>{I[P]!=null&&(T[P]=I[P])}),Ae.throwError(I.reason||I.message,E,T)}),n.filter(E=>!E.done).length===0)break}return n.forEach(h=>{h.staller&&h.staller.cancel(),h.cancelled=!0}),Ae.throwError("failed to meet quorum",x.errors.SERVER_ERROR,{method:t,params:e,results:n.map(h=>je(h)),provider:this})})}}const qo=null,$e=new x(Jt),Le="84842078b09946638c03157f83405213";class Fo extends ii{constructor(t,e){const r=new On(t,e),n=r.connection;n.password&&$e.throwError("INFURA WebSocket project secrets unsupported",x.errors.UNSUPPORTED_OPERATION,{operation:"InfuraProvider.getWebSocketProvider()"});const i=n.url.replace(/^http/i,"ws").replace("/v3/","/ws/v3/");super(i,t),R(this,"apiKey",r.projectId),R(this,"projectId",r.projectId),R(this,"projectSecret",r.projectSecret)}isCommunityResource(){return this.projectId===Le}}class On extends ve{static getWebSocketProvider(t,e){return new Fo(t,e)}static getApiKey(t){const e={apiKey:Le,projectId:Le,projectSecret:null};return t==null||(typeof t=="string"?e.projectId=t:t.projectSecret!=null?($e.assertArgument(typeof t.projectId=="string","projectSecret requires a projectId","projectId",t.projectId),$e.assertArgument(typeof t.projectSecret=="string","invalid projectSecret","projectSecret","[REDACTED]"),e.projectId=t.projectId,e.projectSecret=t.projectSecret):t.projectId&&(e.projectId=t.projectId),e.apiKey=e.projectId),e}static getUrl(t,e){let r=null;switch(t?t.name:"unknown"){case"homestead":r="mainnet.infura.io";break;case"goerli":r="goerli.infura.io";break;case"sepolia":r="sepolia.infura.io";break;case"matic":r="polygon-mainnet.infura.io";break;case"maticmum":r="polygon-mumbai.infura.io";break;case"optimism":r="optimism-mainnet.infura.io";break;case"optimism-goerli":r="optimism-goerli.infura.io";break;case"arbitrum":r="arbitrum-mainnet.infura.io";break;case"arbitrum-goerli":r="arbitrum-goerli.infura.io";break;default:$e.throwError("unsupported network",x.errors.INVALID_ARGUMENT,{argument:"network",value:t})}const n={allowGzip:!0,url:"https://"+r+"/v3/"+e.projectId,throttleCallback:(i,a)=>(e.projectId===Le&&cr(),Promise.resolve(!0))};return e.projectSecret!=null&&(n.user="",n.password=e.projectSecret),n}isCommunityResource(){return this.projectId===Le}}class jo extends Pe{send(t,e){const r={method:t,params:e,id:this._nextId++,jsonrpc:"2.0"};this._pendingBatch==null&&(this._pendingBatch=[]);const n={request:r,resolve:null,reject:null},i=new Promise((a,u)=>{n.resolve=a,n.reject=u});return this._pendingBatch.push(n),this._pendingBatchAggregator||(this._pendingBatchAggregator=setTimeout(()=>{const a=this._pendingBatch;this._pendingBatch=null,this._pendingBatchAggregator=null;const u=a.map(h=>h.request);return this.emit("debug",{action:"requestBatch",request:le(u),provider:this}),Ge(this.connection,JSON.stringify(u)).then(h=>{this.emit("debug",{action:"response",request:u,response:h,provider:this}),a.forEach((d,p)=>{const A=h[p];if(A.error){const M=new Error(A.error.message);M.code=A.error.code,M.data=A.error.data,d.reject(M)}else d.resolve(A.result)})},h=>{this.emit("debug",{action:"response",error:h,request:u,provider:this}),a.forEach(d=>{d.reject(h)})})},10)),i}}const Jr=new x(Jt),Uo="ETHERS_JS_SHARED";class Go extends ve{static getApiKey(t){return t&&typeof t!="string"&&Jr.throwArgumentError("invalid apiKey","apiKey",t),t||Uo}static getUrl(t,e){Jr.warn("NodeSmith will be discontinued on 2019-12-20; please migrate to another platform.");let r=null;switch(t.name){case"homestead":r="https://ethereum.api.nodesmith.io/v1/mainnet/jsonrpc";break;case"ropsten":r="https://ethereum.api.nodesmith.io/v1/ropsten/jsonrpc";break;case"rinkeby":r="https://ethereum.api.nodesmith.io/v1/rinkeby/jsonrpc";break;case"goerli":r="https://ethereum.api.nodesmith.io/v1/goerli/jsonrpc";break;case"kovan":r="https://ethereum.api.nodesmith.io/v1/kovan/jsonrpc";break;default:Jr.throwArgumentError("unsupported network","network",arguments[0])}return r+"?apiKey="+e}}const rn=new x(Jt),nn="62e1ad51b37b8e00394bda3b";class zo extends ve{static getApiKey(t){const e={applicationId:null,loadBalancer:!0,applicationSecretKey:null};return t==null?e.applicationId=nn:typeof t=="string"?e.applicationId=t:t.applicationSecretKey!=null?(e.applicationId=t.applicationId,e.applicationSecretKey=t.applicationSecretKey):t.applicationId?e.applicationId=t.applicationId:rn.throwArgumentError("unsupported PocketProvider apiKey","apiKey",t),e}static getUrl(t,e){let r=null;switch(t?t.name:"unknown"){case"goerli":r="eth-goerli.gateway.pokt.network";break;case"homestead":r="eth-mainnet.gateway.pokt.network";break;case"kovan":r="poa-kovan.gateway.pokt.network";break;case"matic":r="poly-mainnet.gateway.pokt.network";break;case"maticmum":r="polygon-mumbai-rpc.gateway.pokt.network";break;case"rinkeby":r="eth-rinkeby.gateway.pokt.network";break;case"ropsten":r="eth-ropsten.gateway.pokt.network";break;default:rn.throwError("unsupported network",x.errors.INVALID_ARGUMENT,{argument:"network",value:t})}const n=`https://${r}/v1/lb/${e.applicationId}`,i={headers:{},url:n};return e.applicationSecretKey!=null&&(i.user="",i.password=e.applicationSecretKey),i}isCommunityResource(){return this.applicationId===nn}}const sn=new x(Jt);let Jo=1;function on(s,t){const e="Web3LegacyFetcher";return function(r,n){const i={method:r,params:n,id:Jo++,jsonrpc:"2.0"};return new Promise((a,u)=>{this.emit("debug",{action:"request",fetcher:e,request:le(i),provider:this}),t(i,(h,d)=>{if(h)return this.emit("debug",{action:"response",fetcher:e,error:h,request:i,provider:this}),u(h);if(this.emit("debug",{action:"response",fetcher:e,request:i,response:d,provider:this}),d.error){const p=new Error(d.error.message);return p.code=d.error.code,p.data=d.error.data,u(p)}a(d.result)})})}}function Ko(s){return function(t,e){e==null&&(e=[]);const r={method:t,params:e};return this.emit("debug",{action:"request",fetcher:"Eip1193Fetcher",request:le(r),provider:this}),s.request(r).then(n=>(this.emit("debug",{action:"response",fetcher:"Eip1193Fetcher",request:r,response:n,provider:this}),n),n=>{throw this.emit("debug",{action:"response",fetcher:"Eip1193Fetcher",request:r,error:n,provider:this}),n})}}class Ho extends Pe{constructor(t,e){t==null&&sn.throwArgumentError("missing provider","provider",t);let r=null,n=null,i=null;typeof t=="function"?(r="unknown:",n=t):(r=t.host||t.path||"",!r&&t.isMetaMask&&(r="metamask"),i=t,t.request?(r===""&&(r="eip-1193:"),n=Ko(t)):t.sendAsync?n=on(t,t.sendAsync.bind(t)):t.send?n=on(t,t.send.bind(t)):sn.throwArgumentError("unsupported provider","provider",t),r||(r="unknown:")),super(r,e),R(this,"jsonRpcFetchFunc",n),R(this,"provider",i)}send(t,e){return this.jsonRpcFetchFunc(t,e)}}const an=new x(Jt);function Yo(s,t){if(s==null&&(s="homestead"),typeof s=="string"){const r=s.match(/^(ws|http)s?:/i);if(r)switch(r[1].toLowerCase()){case"http":case"https":return new Pe(s);case"ws":case"wss":return new ii(s);default:an.throwArgumentError("unsupported URL scheme","network",s)}}const e=Nn(s);return(!e||!e._defaultProvider)&&an.throwError("unsupported getDefaultProvider network",x.errors.NETWORK_ERROR,{operation:"getDefaultProvider",network:s}),e._defaultProvider({FallbackProvider:Do,AlchemyProvider:Cn,AnkrProvider:_o,CloudflareProvider:Po,EtherscanProvider:So,InfuraProvider:On,JsonRpcProvider:Pe,NodesmithProvider:Go,PocketProvider:zo,Web3Provider:Ho,IpcProvider:qo},t)}export{Cn as AlchemyProvider,Eo as AlchemyWebSocketProvider,_o as AnkrProvider,ri as BaseProvider,Po as CloudflareProvider,So as EtherscanProvider,Do as FallbackProvider,N as Formatter,On as InfuraProvider,Fo as InfuraWebSocketProvider,qo as IpcProvider,jo as JsonRpcBatchProvider,Pe as JsonRpcProvider,Bn as JsonRpcSigner,Go as NodesmithProvider,zo as PocketProvider,fr as Provider,Qi as Resolver,ko as StaticJsonRpcProvider,ve as UrlJsonRpcProvider,Ho as Web3Provider,ii as WebSocketProvider,Yo as getDefaultProvider,Nn as getNetwork,ao as isCommunityResourcable,qi as isCommunityResource,cr as showThrottleMessage}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js.meta deleted file mode 100644 index b1fcb33c7..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-32fe098f.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 0b63872e0a3c6a848840b58a7d343f17 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js deleted file mode 100644 index 8fbc529a0..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js +++ /dev/null @@ -1 +0,0 @@ -import{i as pr,g as mr,d as vr,a as Ke,s as gr,r as Qe,b as Fe,c as yr,m as Le}from"./mobile-122d5339.js";import{n as Ft,o as Tt,U as Mr,V as he,W as _r,_ as Pe}from"./index-b28afd98.js";import{t as wr}from"./tslib.es6-c2094241.js";const br=["session_request","session_update","exchange_key","connect","disconnect","display_uri","modal_closed","transport_open","transport_close","transport_error"],Ge=["eth_sendTransaction","eth_signTransaction","eth_sign","eth_signTypedData","eth_signTypedData_v1","eth_signTypedData_v2","eth_signTypedData_v3","eth_signTypedData_v4","personal_sign","wallet_addEthereumChain","wallet_switchEthereumChain","wallet_getPermissions","wallet_requestPermissions","wallet_registerOnboarding","wallet_watchAsset","wallet_scanQRCode"];var le={},Sr={get exports(){return le},set exports(s){le=s}};(function(s){(function(i,a){function p(l,t){if(!l)throw new Error(t||"Assertion failed")}function v(l,t){l.super_=t;var r=function(){};r.prototype=t.prototype,l.prototype=new r,l.prototype.constructor=l}function c(l,t,r){if(c.isBN(l))return l;this.negative=0,this.words=null,this.length=0,this.red=null,l!==null&&((t==="le"||t==="be")&&(r=t,t=10),this._init(l||0,t||10,r||"be"))}typeof i=="object"?i.exports=c:a.BN=c,c.BN=c,c.wordSize=26;var T;try{T=Ft.Buffer}catch{}c.isBN=function(t){return t instanceof c?!0:t!==null&&typeof t=="object"&&t.constructor.wordSize===c.wordSize&&Array.isArray(t.words)},c.max=function(t,r){return t.cmp(r)>0?t:r},c.min=function(t,r){return t.cmp(r)<0?t:r},c.prototype._init=function(t,r,n){if(typeof t=="number")return this._initNumber(t,r,n);if(typeof t=="object")return this._initArray(t,r,n);r==="hex"&&(r=16),p(r===(r|0)&&r>=2&&r<=36),t=t.toString().replace(/\s+/g,"");var o=0;t[0]==="-"&&o++,r===16?this._parseHex(t,o):this._parseBase(t,r,o),t[0]==="-"&&(this.negative=1),this.strip(),n==="le"&&this._initArray(this.toArray(),r,n)},c.prototype._initNumber=function(t,r,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[t&67108863],this.length=1):t<4503599627370496?(this.words=[t&67108863,t/67108864&67108863],this.length=2):(p(t<9007199254740992),this.words=[t&67108863,t/67108864&67108863,1],this.length=3),n==="le"&&this._initArray(this.toArray(),r,n)},c.prototype._initArray=function(t,r,n){if(p(typeof t.length=="number"),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var o=0;o=0;o-=3)d=t[o]|t[o-1]<<8|t[o-2]<<16,this.words[u]|=d<>>26-m&67108863,m+=24,m>=26&&(m-=26,u++);else if(n==="le")for(o=0,u=0;o>>26-m&67108863,m+=24,m>=26&&(m-=26,u++);return this.strip()};function mt(l,t,r){for(var n=0,o=Math.min(l.length,r),u=t;u=49&&d<=54?n|=d-49+10:d>=17&&d<=22?n|=d-17+10:n|=d&15}return n}c.prototype._parseHex=function(t,r){this.length=Math.ceil((t.length-r)/6),this.words=new Array(this.length);for(var n=0;n=r;n-=6)u=mt(t,n,n+6),this.words[o]|=u<>>26-d&4194303,d+=24,d>=26&&(d-=26,o++);n+6!==r&&(u=mt(t,r,n+6),this.words[o]|=u<>>26-d&4194303),this.strip()};function k(l,t,r,n){for(var o=0,u=Math.min(l.length,r),d=t;d=49?o+=m-49+10:m>=17?o+=m-17+10:o+=m}return o}c.prototype._parseBase=function(t,r,n){this.words=[0],this.length=1;for(var o=0,u=1;u<=67108863;u*=r)o++;o--,u=u/r|0;for(var d=t.length-n,m=d%o,h=Math.min(d,d-m)+n,e=0,f=n;f1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},c.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},c.prototype.inspect=function(){return(this.red?""};var vt=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],It=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],Mt=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];c.prototype.toString=function(t,r){t=t||10,r=r|0||1;var n;if(t===16||t==="hex"){n="";for(var o=0,u=0,d=0;d>>24-o&16777215,u!==0||d!==this.length-1?n=vt[6-h.length]+h+n:n=h+n,o+=2,o>=26&&(o-=26,d--)}for(u!==0&&(n=u.toString(16)+n);n.length%r!==0;)n="0"+n;return this.negative!==0&&(n="-"+n),n}if(t===(t|0)&&t>=2&&t<=36){var e=It[t],f=Mt[t];n="";var _=this.clone();for(_.negative=0;!_.isZero();){var b=_.modn(f).toString(t);_=_.idivn(f),_.isZero()?n=b+n:n=vt[e-b.length]+b+n}for(this.isZero()&&(n="0"+n);n.length%r!==0;)n="0"+n;return this.negative!==0&&(n="-"+n),n}p(!1,"Base should be between 2 and 36")},c.prototype.toNumber=function(){var t=this.words[0];return this.length===2?t+=this.words[1]*67108864:this.length===3&&this.words[2]===1?t+=4503599627370496+this.words[1]*67108864:this.length>2&&p(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-t:t},c.prototype.toJSON=function(){return this.toString(16)},c.prototype.toBuffer=function(t,r){return p(typeof T<"u"),this.toArrayLike(T,t,r)},c.prototype.toArray=function(t,r){return this.toArrayLike(Array,t,r)},c.prototype.toArrayLike=function(t,r,n){var o=this.byteLength(),u=n||Math.max(1,o);p(o<=u,"byte array longer than desired length"),p(u>0,"Requested array length <= 0"),this.strip();var d=r==="le",m=new t(u),h,e,f=this.clone();if(d){for(e=0;!f.isZero();e++)h=f.andln(255),f.iushrn(8),m[e]=h;for(;e=4096&&(n+=13,r>>>=13),r>=64&&(n+=7,r>>>=7),r>=8&&(n+=4,r>>>=4),r>=2&&(n+=2,r>>>=2),n+r},c.prototype._zeroBits=function(t){if(t===0)return 26;var r=t,n=0;return r&8191||(n+=13,r>>>=13),r&127||(n+=7,r>>>=7),r&15||(n+=4,r>>>=4),r&3||(n+=2,r>>>=2),r&1||n++,n},c.prototype.bitLength=function(){var t=this.words[this.length-1],r=this._countBits(t);return(this.length-1)*26+r};function _t(l){for(var t=new Array(l.bitLength()),r=0;r>>o}return t}c.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,r=0;rt.length?this.clone().ior(t):t.clone().ior(this)},c.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},c.prototype.iuand=function(t){var r;this.length>t.length?r=t:r=this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},c.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},c.prototype.iuxor=function(t){var r,n;this.length>t.length?(r=this,n=t):(r=t,n=this);for(var o=0;ot.length?this.clone().ixor(t):t.clone().ixor(this)},c.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},c.prototype.inotn=function(t){p(typeof t=="number"&&t>=0);var r=Math.ceil(t/26)|0,n=t%26;this._expand(r),n>0&&r--;for(var o=0;o0&&(this.words[o]=~this.words[o]&67108863>>26-n),this.strip()},c.prototype.notn=function(t){return this.clone().inotn(t)},c.prototype.setn=function(t,r){p(typeof t=="number"&&t>=0);var n=t/26|0,o=t%26;return this._expand(n+1),r?this.words[n]=this.words[n]|1<t.length?(n=this,o=t):(n=t,o=this);for(var u=0,d=0;d>>26;for(;u!==0&&d>>26;if(this.length=n.length,u!==0)this.words[this.length]=u,this.length++;else if(n!==this)for(;dt.length?this.clone().iadd(t):t.clone().iadd(this)},c.prototype.isub=function(t){if(t.negative!==0){t.negative=0;var r=this.iadd(t);return t.negative=1,r._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n=this.cmp(t);if(n===0)return this.negative=0,this.length=1,this.words[0]=0,this;var o,u;n>0?(o=this,u=t):(o=t,u=this);for(var d=0,m=0;m>26,this.words[m]=r&67108863;for(;d!==0&&m>26,this.words[m]=r&67108863;if(d===0&&m>>26,_=h&67108863,b=Math.min(e,t.length-1),S=Math.max(0,e-l.length+1);S<=b;S++){var x=e-S|0;o=l.words[x]|0,u=t.words[S]|0,d=o*u+_,f+=d/67108864|0,_=d&67108863}r.words[e]=_|0,h=f|0}return h!==0?r.words[e]=h|0:r.length--,r.strip()}var Ot=function(t,r,n){var o=t.words,u=r.words,d=n.words,m=0,h,e,f,_=o[0]|0,b=_&8191,S=_>>>13,x=o[1]|0,E=x&8191,O=x>>>13,St=o[2]|0,q=St&8191,A=St>>>13,_e=o[3]|0,B=_e&8191,U=_e>>>13,we=o[4]|0,F=we&8191,L=we>>>13,be=o[5]|0,P=be&8191,j=be>>>13,Se=o[6]|0,H=Se&8191,$=Se>>>13,xe=o[7]|0,Z=xe&8191,D=xe>>>13,Re=o[8]|0,J=Re&8191,W=Re>>>13,Ie=o[9]|0,z=Ie&8191,K=Ie>>>13,ke=u[0]|0,Q=ke&8191,G=ke>>>13,Ee=u[1]|0,V=Ee&8191,Y=Ee>>>13,Te=u[2]|0,X=Te&8191,tt=Te>>>13,Oe=u[3]|0,et=Oe&8191,rt=Oe>>>13,qe=u[4]|0,it=qe&8191,nt=qe>>>13,Ae=u[5]|0,st=Ae&8191,ot=Ae>>>13,Ce=u[6]|0,at=Ce&8191,ht=Ce>>>13,Ne=u[7]|0,ft=Ne&8191,ut=Ne>>>13,Be=u[8]|0,ct=Be&8191,lt=Be>>>13,Ue=u[9]|0,dt=Ue&8191,pt=Ue>>>13;n.negative=t.negative^r.negative,n.length=19,h=Math.imul(b,Q),e=Math.imul(b,G),e=e+Math.imul(S,Q)|0,f=Math.imul(S,G);var Zt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Zt>>>26)|0,Zt&=67108863,h=Math.imul(E,Q),e=Math.imul(E,G),e=e+Math.imul(O,Q)|0,f=Math.imul(O,G),h=h+Math.imul(b,V)|0,e=e+Math.imul(b,Y)|0,e=e+Math.imul(S,V)|0,f=f+Math.imul(S,Y)|0;var Dt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,h=Math.imul(q,Q),e=Math.imul(q,G),e=e+Math.imul(A,Q)|0,f=Math.imul(A,G),h=h+Math.imul(E,V)|0,e=e+Math.imul(E,Y)|0,e=e+Math.imul(O,V)|0,f=f+Math.imul(O,Y)|0,h=h+Math.imul(b,X)|0,e=e+Math.imul(b,tt)|0,e=e+Math.imul(S,X)|0,f=f+Math.imul(S,tt)|0;var Jt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Jt>>>26)|0,Jt&=67108863,h=Math.imul(B,Q),e=Math.imul(B,G),e=e+Math.imul(U,Q)|0,f=Math.imul(U,G),h=h+Math.imul(q,V)|0,e=e+Math.imul(q,Y)|0,e=e+Math.imul(A,V)|0,f=f+Math.imul(A,Y)|0,h=h+Math.imul(E,X)|0,e=e+Math.imul(E,tt)|0,e=e+Math.imul(O,X)|0,f=f+Math.imul(O,tt)|0,h=h+Math.imul(b,et)|0,e=e+Math.imul(b,rt)|0,e=e+Math.imul(S,et)|0,f=f+Math.imul(S,rt)|0;var Wt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Wt>>>26)|0,Wt&=67108863,h=Math.imul(F,Q),e=Math.imul(F,G),e=e+Math.imul(L,Q)|0,f=Math.imul(L,G),h=h+Math.imul(B,V)|0,e=e+Math.imul(B,Y)|0,e=e+Math.imul(U,V)|0,f=f+Math.imul(U,Y)|0,h=h+Math.imul(q,X)|0,e=e+Math.imul(q,tt)|0,e=e+Math.imul(A,X)|0,f=f+Math.imul(A,tt)|0,h=h+Math.imul(E,et)|0,e=e+Math.imul(E,rt)|0,e=e+Math.imul(O,et)|0,f=f+Math.imul(O,rt)|0,h=h+Math.imul(b,it)|0,e=e+Math.imul(b,nt)|0,e=e+Math.imul(S,it)|0,f=f+Math.imul(S,nt)|0;var zt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(zt>>>26)|0,zt&=67108863,h=Math.imul(P,Q),e=Math.imul(P,G),e=e+Math.imul(j,Q)|0,f=Math.imul(j,G),h=h+Math.imul(F,V)|0,e=e+Math.imul(F,Y)|0,e=e+Math.imul(L,V)|0,f=f+Math.imul(L,Y)|0,h=h+Math.imul(B,X)|0,e=e+Math.imul(B,tt)|0,e=e+Math.imul(U,X)|0,f=f+Math.imul(U,tt)|0,h=h+Math.imul(q,et)|0,e=e+Math.imul(q,rt)|0,e=e+Math.imul(A,et)|0,f=f+Math.imul(A,rt)|0,h=h+Math.imul(E,it)|0,e=e+Math.imul(E,nt)|0,e=e+Math.imul(O,it)|0,f=f+Math.imul(O,nt)|0,h=h+Math.imul(b,st)|0,e=e+Math.imul(b,ot)|0,e=e+Math.imul(S,st)|0,f=f+Math.imul(S,ot)|0;var Kt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Kt>>>26)|0,Kt&=67108863,h=Math.imul(H,Q),e=Math.imul(H,G),e=e+Math.imul($,Q)|0,f=Math.imul($,G),h=h+Math.imul(P,V)|0,e=e+Math.imul(P,Y)|0,e=e+Math.imul(j,V)|0,f=f+Math.imul(j,Y)|0,h=h+Math.imul(F,X)|0,e=e+Math.imul(F,tt)|0,e=e+Math.imul(L,X)|0,f=f+Math.imul(L,tt)|0,h=h+Math.imul(B,et)|0,e=e+Math.imul(B,rt)|0,e=e+Math.imul(U,et)|0,f=f+Math.imul(U,rt)|0,h=h+Math.imul(q,it)|0,e=e+Math.imul(q,nt)|0,e=e+Math.imul(A,it)|0,f=f+Math.imul(A,nt)|0,h=h+Math.imul(E,st)|0,e=e+Math.imul(E,ot)|0,e=e+Math.imul(O,st)|0,f=f+Math.imul(O,ot)|0,h=h+Math.imul(b,at)|0,e=e+Math.imul(b,ht)|0,e=e+Math.imul(S,at)|0,f=f+Math.imul(S,ht)|0;var Qt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Qt>>>26)|0,Qt&=67108863,h=Math.imul(Z,Q),e=Math.imul(Z,G),e=e+Math.imul(D,Q)|0,f=Math.imul(D,G),h=h+Math.imul(H,V)|0,e=e+Math.imul(H,Y)|0,e=e+Math.imul($,V)|0,f=f+Math.imul($,Y)|0,h=h+Math.imul(P,X)|0,e=e+Math.imul(P,tt)|0,e=e+Math.imul(j,X)|0,f=f+Math.imul(j,tt)|0,h=h+Math.imul(F,et)|0,e=e+Math.imul(F,rt)|0,e=e+Math.imul(L,et)|0,f=f+Math.imul(L,rt)|0,h=h+Math.imul(B,it)|0,e=e+Math.imul(B,nt)|0,e=e+Math.imul(U,it)|0,f=f+Math.imul(U,nt)|0,h=h+Math.imul(q,st)|0,e=e+Math.imul(q,ot)|0,e=e+Math.imul(A,st)|0,f=f+Math.imul(A,ot)|0,h=h+Math.imul(E,at)|0,e=e+Math.imul(E,ht)|0,e=e+Math.imul(O,at)|0,f=f+Math.imul(O,ht)|0,h=h+Math.imul(b,ft)|0,e=e+Math.imul(b,ut)|0,e=e+Math.imul(S,ft)|0,f=f+Math.imul(S,ut)|0;var Gt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,h=Math.imul(J,Q),e=Math.imul(J,G),e=e+Math.imul(W,Q)|0,f=Math.imul(W,G),h=h+Math.imul(Z,V)|0,e=e+Math.imul(Z,Y)|0,e=e+Math.imul(D,V)|0,f=f+Math.imul(D,Y)|0,h=h+Math.imul(H,X)|0,e=e+Math.imul(H,tt)|0,e=e+Math.imul($,X)|0,f=f+Math.imul($,tt)|0,h=h+Math.imul(P,et)|0,e=e+Math.imul(P,rt)|0,e=e+Math.imul(j,et)|0,f=f+Math.imul(j,rt)|0,h=h+Math.imul(F,it)|0,e=e+Math.imul(F,nt)|0,e=e+Math.imul(L,it)|0,f=f+Math.imul(L,nt)|0,h=h+Math.imul(B,st)|0,e=e+Math.imul(B,ot)|0,e=e+Math.imul(U,st)|0,f=f+Math.imul(U,ot)|0,h=h+Math.imul(q,at)|0,e=e+Math.imul(q,ht)|0,e=e+Math.imul(A,at)|0,f=f+Math.imul(A,ht)|0,h=h+Math.imul(E,ft)|0,e=e+Math.imul(E,ut)|0,e=e+Math.imul(O,ft)|0,f=f+Math.imul(O,ut)|0,h=h+Math.imul(b,ct)|0,e=e+Math.imul(b,lt)|0,e=e+Math.imul(S,ct)|0,f=f+Math.imul(S,lt)|0;var Vt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,h=Math.imul(z,Q),e=Math.imul(z,G),e=e+Math.imul(K,Q)|0,f=Math.imul(K,G),h=h+Math.imul(J,V)|0,e=e+Math.imul(J,Y)|0,e=e+Math.imul(W,V)|0,f=f+Math.imul(W,Y)|0,h=h+Math.imul(Z,X)|0,e=e+Math.imul(Z,tt)|0,e=e+Math.imul(D,X)|0,f=f+Math.imul(D,tt)|0,h=h+Math.imul(H,et)|0,e=e+Math.imul(H,rt)|0,e=e+Math.imul($,et)|0,f=f+Math.imul($,rt)|0,h=h+Math.imul(P,it)|0,e=e+Math.imul(P,nt)|0,e=e+Math.imul(j,it)|0,f=f+Math.imul(j,nt)|0,h=h+Math.imul(F,st)|0,e=e+Math.imul(F,ot)|0,e=e+Math.imul(L,st)|0,f=f+Math.imul(L,ot)|0,h=h+Math.imul(B,at)|0,e=e+Math.imul(B,ht)|0,e=e+Math.imul(U,at)|0,f=f+Math.imul(U,ht)|0,h=h+Math.imul(q,ft)|0,e=e+Math.imul(q,ut)|0,e=e+Math.imul(A,ft)|0,f=f+Math.imul(A,ut)|0,h=h+Math.imul(E,ct)|0,e=e+Math.imul(E,lt)|0,e=e+Math.imul(O,ct)|0,f=f+Math.imul(O,lt)|0,h=h+Math.imul(b,dt)|0,e=e+Math.imul(b,pt)|0,e=e+Math.imul(S,dt)|0,f=f+Math.imul(S,pt)|0;var Yt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Yt>>>26)|0,Yt&=67108863,h=Math.imul(z,V),e=Math.imul(z,Y),e=e+Math.imul(K,V)|0,f=Math.imul(K,Y),h=h+Math.imul(J,X)|0,e=e+Math.imul(J,tt)|0,e=e+Math.imul(W,X)|0,f=f+Math.imul(W,tt)|0,h=h+Math.imul(Z,et)|0,e=e+Math.imul(Z,rt)|0,e=e+Math.imul(D,et)|0,f=f+Math.imul(D,rt)|0,h=h+Math.imul(H,it)|0,e=e+Math.imul(H,nt)|0,e=e+Math.imul($,it)|0,f=f+Math.imul($,nt)|0,h=h+Math.imul(P,st)|0,e=e+Math.imul(P,ot)|0,e=e+Math.imul(j,st)|0,f=f+Math.imul(j,ot)|0,h=h+Math.imul(F,at)|0,e=e+Math.imul(F,ht)|0,e=e+Math.imul(L,at)|0,f=f+Math.imul(L,ht)|0,h=h+Math.imul(B,ft)|0,e=e+Math.imul(B,ut)|0,e=e+Math.imul(U,ft)|0,f=f+Math.imul(U,ut)|0,h=h+Math.imul(q,ct)|0,e=e+Math.imul(q,lt)|0,e=e+Math.imul(A,ct)|0,f=f+Math.imul(A,lt)|0,h=h+Math.imul(E,dt)|0,e=e+Math.imul(E,pt)|0,e=e+Math.imul(O,dt)|0,f=f+Math.imul(O,pt)|0;var Xt=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(Xt>>>26)|0,Xt&=67108863,h=Math.imul(z,X),e=Math.imul(z,tt),e=e+Math.imul(K,X)|0,f=Math.imul(K,tt),h=h+Math.imul(J,et)|0,e=e+Math.imul(J,rt)|0,e=e+Math.imul(W,et)|0,f=f+Math.imul(W,rt)|0,h=h+Math.imul(Z,it)|0,e=e+Math.imul(Z,nt)|0,e=e+Math.imul(D,it)|0,f=f+Math.imul(D,nt)|0,h=h+Math.imul(H,st)|0,e=e+Math.imul(H,ot)|0,e=e+Math.imul($,st)|0,f=f+Math.imul($,ot)|0,h=h+Math.imul(P,at)|0,e=e+Math.imul(P,ht)|0,e=e+Math.imul(j,at)|0,f=f+Math.imul(j,ht)|0,h=h+Math.imul(F,ft)|0,e=e+Math.imul(F,ut)|0,e=e+Math.imul(L,ft)|0,f=f+Math.imul(L,ut)|0,h=h+Math.imul(B,ct)|0,e=e+Math.imul(B,lt)|0,e=e+Math.imul(U,ct)|0,f=f+Math.imul(U,lt)|0,h=h+Math.imul(q,dt)|0,e=e+Math.imul(q,pt)|0,e=e+Math.imul(A,dt)|0,f=f+Math.imul(A,pt)|0;var te=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(te>>>26)|0,te&=67108863,h=Math.imul(z,et),e=Math.imul(z,rt),e=e+Math.imul(K,et)|0,f=Math.imul(K,rt),h=h+Math.imul(J,it)|0,e=e+Math.imul(J,nt)|0,e=e+Math.imul(W,it)|0,f=f+Math.imul(W,nt)|0,h=h+Math.imul(Z,st)|0,e=e+Math.imul(Z,ot)|0,e=e+Math.imul(D,st)|0,f=f+Math.imul(D,ot)|0,h=h+Math.imul(H,at)|0,e=e+Math.imul(H,ht)|0,e=e+Math.imul($,at)|0,f=f+Math.imul($,ht)|0,h=h+Math.imul(P,ft)|0,e=e+Math.imul(P,ut)|0,e=e+Math.imul(j,ft)|0,f=f+Math.imul(j,ut)|0,h=h+Math.imul(F,ct)|0,e=e+Math.imul(F,lt)|0,e=e+Math.imul(L,ct)|0,f=f+Math.imul(L,lt)|0,h=h+Math.imul(B,dt)|0,e=e+Math.imul(B,pt)|0,e=e+Math.imul(U,dt)|0,f=f+Math.imul(U,pt)|0;var ee=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(ee>>>26)|0,ee&=67108863,h=Math.imul(z,it),e=Math.imul(z,nt),e=e+Math.imul(K,it)|0,f=Math.imul(K,nt),h=h+Math.imul(J,st)|0,e=e+Math.imul(J,ot)|0,e=e+Math.imul(W,st)|0,f=f+Math.imul(W,ot)|0,h=h+Math.imul(Z,at)|0,e=e+Math.imul(Z,ht)|0,e=e+Math.imul(D,at)|0,f=f+Math.imul(D,ht)|0,h=h+Math.imul(H,ft)|0,e=e+Math.imul(H,ut)|0,e=e+Math.imul($,ft)|0,f=f+Math.imul($,ut)|0,h=h+Math.imul(P,ct)|0,e=e+Math.imul(P,lt)|0,e=e+Math.imul(j,ct)|0,f=f+Math.imul(j,lt)|0,h=h+Math.imul(F,dt)|0,e=e+Math.imul(F,pt)|0,e=e+Math.imul(L,dt)|0,f=f+Math.imul(L,pt)|0;var re=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(re>>>26)|0,re&=67108863,h=Math.imul(z,st),e=Math.imul(z,ot),e=e+Math.imul(K,st)|0,f=Math.imul(K,ot),h=h+Math.imul(J,at)|0,e=e+Math.imul(J,ht)|0,e=e+Math.imul(W,at)|0,f=f+Math.imul(W,ht)|0,h=h+Math.imul(Z,ft)|0,e=e+Math.imul(Z,ut)|0,e=e+Math.imul(D,ft)|0,f=f+Math.imul(D,ut)|0,h=h+Math.imul(H,ct)|0,e=e+Math.imul(H,lt)|0,e=e+Math.imul($,ct)|0,f=f+Math.imul($,lt)|0,h=h+Math.imul(P,dt)|0,e=e+Math.imul(P,pt)|0,e=e+Math.imul(j,dt)|0,f=f+Math.imul(j,pt)|0;var ie=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(ie>>>26)|0,ie&=67108863,h=Math.imul(z,at),e=Math.imul(z,ht),e=e+Math.imul(K,at)|0,f=Math.imul(K,ht),h=h+Math.imul(J,ft)|0,e=e+Math.imul(J,ut)|0,e=e+Math.imul(W,ft)|0,f=f+Math.imul(W,ut)|0,h=h+Math.imul(Z,ct)|0,e=e+Math.imul(Z,lt)|0,e=e+Math.imul(D,ct)|0,f=f+Math.imul(D,lt)|0,h=h+Math.imul(H,dt)|0,e=e+Math.imul(H,pt)|0,e=e+Math.imul($,dt)|0,f=f+Math.imul($,pt)|0;var ne=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(ne>>>26)|0,ne&=67108863,h=Math.imul(z,ft),e=Math.imul(z,ut),e=e+Math.imul(K,ft)|0,f=Math.imul(K,ut),h=h+Math.imul(J,ct)|0,e=e+Math.imul(J,lt)|0,e=e+Math.imul(W,ct)|0,f=f+Math.imul(W,lt)|0,h=h+Math.imul(Z,dt)|0,e=e+Math.imul(Z,pt)|0,e=e+Math.imul(D,dt)|0,f=f+Math.imul(D,pt)|0;var se=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(se>>>26)|0,se&=67108863,h=Math.imul(z,ct),e=Math.imul(z,lt),e=e+Math.imul(K,ct)|0,f=Math.imul(K,lt),h=h+Math.imul(J,dt)|0,e=e+Math.imul(J,pt)|0,e=e+Math.imul(W,dt)|0,f=f+Math.imul(W,pt)|0;var oe=(m+h|0)+((e&8191)<<13)|0;m=(f+(e>>>13)|0)+(oe>>>26)|0,oe&=67108863,h=Math.imul(z,dt),e=Math.imul(z,pt),e=e+Math.imul(K,dt)|0,f=Math.imul(K,pt);var ae=(m+h|0)+((e&8191)<<13)|0;return m=(f+(e>>>13)|0)+(ae>>>26)|0,ae&=67108863,d[0]=Zt,d[1]=Dt,d[2]=Jt,d[3]=Wt,d[4]=zt,d[5]=Kt,d[6]=Qt,d[7]=Gt,d[8]=Vt,d[9]=Yt,d[10]=Xt,d[11]=te,d[12]=ee,d[13]=re,d[14]=ie,d[15]=ne,d[16]=se,d[17]=oe,d[18]=ae,m!==0&&(d[19]=m,n.length++),n};Math.imul||(Ot=yt);function Lt(l,t,r){r.negative=t.negative^l.negative,r.length=l.length+t.length;for(var n=0,o=0,u=0;u>>26)|0,o+=d>>>26,d&=67108863}r.words[u]=m,n=d,d=o}return n!==0?r.words[u]=n:r.length--,r.strip()}function g(l,t,r){var n=new y;return n.mulp(l,t,r)}c.prototype.mulTo=function(t,r){var n,o=this.length+t.length;return this.length===10&&t.length===10?n=Ot(this,t,r):o<63?n=yt(this,t,r):o<1024?n=Lt(this,t,r):n=g(this,t,r),n};function y(l,t){this.x=l,this.y=t}y.prototype.makeRBT=function(t){for(var r=new Array(t),n=c.prototype._countBits(t)-1,o=0;o>=1;return o},y.prototype.permute=function(t,r,n,o,u,d){for(var m=0;m>>1)u++;return 1<>>13,n[2*d+1]=u&8191,u=u>>>13;for(d=2*r;d>=26,r+=o/67108864|0,r+=u>>>26,this.words[n]=u&67108863}return r!==0&&(this.words[n]=r,this.length++),this},c.prototype.muln=function(t){return this.clone().imuln(t)},c.prototype.sqr=function(){return this.mul(this)},c.prototype.isqr=function(){return this.imul(this.clone())},c.prototype.pow=function(t){var r=_t(t);if(r.length===0)return new c(1);for(var n=this,o=0;o=0);var r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r,u;if(r!==0){var d=0;for(u=0;u>>26-r}d&&(this.words[u]=d,this.length++)}if(n!==0){for(u=this.length-1;u>=0;u--)this.words[u+n]=this.words[u];for(u=0;u=0);var o;r?o=(r-r%26)/26:o=0;var u=t%26,d=Math.min((t-u)/26,this.length),m=67108863^67108863>>>u<d)for(this.length-=d,e=0;e=0&&(f!==0||e>=o);e--){var _=this.words[e]|0;this.words[e]=f<<26-u|_>>>u,f=_&m}return h&&f!==0&&(h.words[h.length++]=f),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},c.prototype.ishrn=function(t,r,n){return p(this.negative===0),this.iushrn(t,r,n)},c.prototype.shln=function(t){return this.clone().ishln(t)},c.prototype.ushln=function(t){return this.clone().iushln(t)},c.prototype.shrn=function(t){return this.clone().ishrn(t)},c.prototype.ushrn=function(t){return this.clone().iushrn(t)},c.prototype.testn=function(t){p(typeof t=="number"&&t>=0);var r=t%26,n=(t-r)/26,o=1<=0);var r=t%26,n=(t-r)/26;if(p(this.negative===0,"imaskn works only with positive numbers"),this.length<=n)return this;if(r!==0&&n++,this.length=Math.min(n,this.length),r!==0){var o=67108863^67108863>>>r<=67108864;r++)this.words[r]-=67108864,r===this.length-1?this.words[r+1]=1:this.words[r+1]++;return this.length=Math.max(this.length,r+1),this},c.prototype.isubn=function(t){if(p(typeof t=="number"),p(t<67108864),t<0)return this.iaddn(-t);if(this.negative!==0)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var r=0;r>26)-(h/67108864|0),this.words[u+n]=d&67108863}for(;u>26,this.words[u+n]=d&67108863;if(m===0)return this.strip();for(p(m===-1),m=0,u=0;u>26,this.words[u]=d&67108863;return this.negative=1,this.strip()},c.prototype._wordDiv=function(t,r){var n=this.length-t.length,o=this.clone(),u=t,d=u.words[u.length-1]|0,m=this._countBits(d);n=26-m,n!==0&&(u=u.ushln(n),o.iushln(n),d=u.words[u.length-1]|0);var h=o.length-u.length,e;if(r!=="mod"){e=new c(null),e.length=h+1,e.words=new Array(e.length);for(var f=0;f=0;b--){var S=(o.words[u.length+b]|0)*67108864+(o.words[u.length+b-1]|0);for(S=Math.min(S/d|0,67108863),o._ishlnsubmul(u,S,b);o.negative!==0;)S--,o.negative=0,o._ishlnsubmul(u,1,b),o.isZero()||(o.negative^=1);e&&(e.words[b]=S)}return e&&e.strip(),o.strip(),r!=="div"&&n!==0&&o.iushrn(n),{div:e||null,mod:o}},c.prototype.divmod=function(t,r,n){if(p(!t.isZero()),this.isZero())return{div:new c(0),mod:new c(0)};var o,u,d;return this.negative!==0&&t.negative===0?(d=this.neg().divmod(t,r),r!=="mod"&&(o=d.div.neg()),r!=="div"&&(u=d.mod.neg(),n&&u.negative!==0&&u.iadd(t)),{div:o,mod:u}):this.negative===0&&t.negative!==0?(d=this.divmod(t.neg(),r),r!=="mod"&&(o=d.div.neg()),{div:o,mod:d.mod}):this.negative&t.negative?(d=this.neg().divmod(t.neg(),r),r!=="div"&&(u=d.mod.neg(),n&&u.negative!==0&&u.isub(t)),{div:d.div,mod:u}):t.length>this.length||this.cmp(t)<0?{div:new c(0),mod:this}:t.length===1?r==="div"?{div:this.divn(t.words[0]),mod:null}:r==="mod"?{div:null,mod:new c(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new c(this.modn(t.words[0]))}:this._wordDiv(t,r)},c.prototype.div=function(t){return this.divmod(t,"div",!1).div},c.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},c.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},c.prototype.divRound=function(t){var r=this.divmod(t);if(r.mod.isZero())return r.div;var n=r.div.negative!==0?r.mod.isub(t):r.mod,o=t.ushrn(1),u=t.andln(1),d=n.cmp(o);return d<0||u===1&&d===0?r.div:r.div.negative!==0?r.div.isubn(1):r.div.iaddn(1)},c.prototype.modn=function(t){p(t<=67108863);for(var r=(1<<26)%t,n=0,o=this.length-1;o>=0;o--)n=(r*n+(this.words[o]|0))%t;return n},c.prototype.idivn=function(t){p(t<=67108863);for(var r=0,n=this.length-1;n>=0;n--){var o=(this.words[n]|0)+r*67108864;this.words[n]=o/t|0,r=o%t}return this.strip()},c.prototype.divn=function(t){return this.clone().idivn(t)},c.prototype.egcd=function(t){p(t.negative===0),p(!t.isZero());var r=this,n=t.clone();r.negative!==0?r=r.umod(t):r=r.clone();for(var o=new c(1),u=new c(0),d=new c(0),m=new c(1),h=0;r.isEven()&&n.isEven();)r.iushrn(1),n.iushrn(1),++h;for(var e=n.clone(),f=r.clone();!r.isZero();){for(var _=0,b=1;!(r.words[0]&b)&&_<26;++_,b<<=1);if(_>0)for(r.iushrn(_);_-- >0;)(o.isOdd()||u.isOdd())&&(o.iadd(e),u.isub(f)),o.iushrn(1),u.iushrn(1);for(var S=0,x=1;!(n.words[0]&x)&&S<26;++S,x<<=1);if(S>0)for(n.iushrn(S);S-- >0;)(d.isOdd()||m.isOdd())&&(d.iadd(e),m.isub(f)),d.iushrn(1),m.iushrn(1);r.cmp(n)>=0?(r.isub(n),o.isub(d),u.isub(m)):(n.isub(r),d.isub(o),m.isub(u))}return{a:d,b:m,gcd:n.iushln(h)}},c.prototype._invmp=function(t){p(t.negative===0),p(!t.isZero());var r=this,n=t.clone();r.negative!==0?r=r.umod(t):r=r.clone();for(var o=new c(1),u=new c(0),d=n.clone();r.cmpn(1)>0&&n.cmpn(1)>0;){for(var m=0,h=1;!(r.words[0]&h)&&m<26;++m,h<<=1);if(m>0)for(r.iushrn(m);m-- >0;)o.isOdd()&&o.iadd(d),o.iushrn(1);for(var e=0,f=1;!(n.words[0]&f)&&e<26;++e,f<<=1);if(e>0)for(n.iushrn(e);e-- >0;)u.isOdd()&&u.iadd(d),u.iushrn(1);r.cmp(n)>=0?(r.isub(n),o.isub(u)):(n.isub(r),u.isub(o))}var _;return r.cmpn(1)===0?_=o:_=u,_.cmpn(0)<0&&_.iadd(t),_},c.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var r=this.clone(),n=t.clone();r.negative=0,n.negative=0;for(var o=0;r.isEven()&&n.isEven();o++)r.iushrn(1),n.iushrn(1);do{for(;r.isEven();)r.iushrn(1);for(;n.isEven();)n.iushrn(1);var u=r.cmp(n);if(u<0){var d=r;r=n,n=d}else if(u===0||n.cmpn(1)===0)break;r.isub(n)}while(!0);return n.iushln(o)},c.prototype.invm=function(t){return this.egcd(t).a.umod(t)},c.prototype.isEven=function(){return(this.words[0]&1)===0},c.prototype.isOdd=function(){return(this.words[0]&1)===1},c.prototype.andln=function(t){return this.words[0]&t},c.prototype.bincn=function(t){p(typeof t=="number");var r=t%26,n=(t-r)/26,o=1<>>26,m&=67108863,this.words[d]=m}return u!==0&&(this.words[d]=u,this.length++),this},c.prototype.isZero=function(){return this.length===1&&this.words[0]===0},c.prototype.cmpn=function(t){var r=t<0;if(this.negative!==0&&!r)return-1;if(this.negative===0&&r)return 1;this.strip();var n;if(this.length>1)n=1;else{r&&(t=-t),p(t<=67108863,"Number is too big");var o=this.words[0]|0;n=o===t?0:ot.length)return 1;if(this.length=0;n--){var o=this.words[n]|0,u=t.words[n]|0;if(o!==u){ou&&(r=1);break}}return r},c.prototype.gtn=function(t){return this.cmpn(t)===1},c.prototype.gt=function(t){return this.cmp(t)===1},c.prototype.gten=function(t){return this.cmpn(t)>=0},c.prototype.gte=function(t){return this.cmp(t)>=0},c.prototype.ltn=function(t){return this.cmpn(t)===-1},c.prototype.lt=function(t){return this.cmp(t)===-1},c.prototype.lten=function(t){return this.cmpn(t)<=0},c.prototype.lte=function(t){return this.cmp(t)<=0},c.prototype.eqn=function(t){return this.cmpn(t)===0},c.prototype.eq=function(t){return this.cmp(t)===0},c.red=function(t){return new N(t)},c.prototype.toRed=function(t){return p(!this.red,"Already a number in reduction context"),p(this.negative===0,"red works only with positives"),t.convertTo(this)._forceRed(t)},c.prototype.fromRed=function(){return p(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},c.prototype._forceRed=function(t){return this.red=t,this},c.prototype.forceRed=function(t){return p(!this.red,"Already a number in reduction context"),this._forceRed(t)},c.prototype.redAdd=function(t){return p(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},c.prototype.redIAdd=function(t){return p(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},c.prototype.redSub=function(t){return p(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},c.prototype.redISub=function(t){return p(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},c.prototype.redShl=function(t){return p(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},c.prototype.redMul=function(t){return p(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},c.prototype.redIMul=function(t){return p(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},c.prototype.redSqr=function(){return p(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},c.prototype.redISqr=function(){return p(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},c.prototype.redSqrt=function(){return p(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},c.prototype.redInvm=function(){return p(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},c.prototype.redNeg=function(){return p(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},c.prototype.redPow=function(t){return p(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var w={k256:null,p224:null,p192:null,p25519:null};function M(l,t){this.name=l,this.p=new c(t,16),this.n=this.p.bitLength(),this.k=new c(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}M.prototype._tmp=function(){var t=new c(null);return t.words=new Array(Math.ceil(this.n/13)),t},M.prototype.ireduce=function(t){var r=t,n;do this.split(r,this.tmp),r=this.imulK(r),r=r.iadd(this.tmp),n=r.bitLength();while(n>this.n);var o=n0?r.isub(this.p):r.strip(),r},M.prototype.split=function(t,r){t.iushrn(this.n,0,r)},M.prototype.imulK=function(t){return t.imul(this.k)};function R(){M.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}v(R,M),R.prototype.split=function(t,r){for(var n=4194303,o=Math.min(t.length,9),u=0;u>>22,d=m}d>>>=22,t.words[u-10]=d,d===0&&t.length>10?t.length-=10:t.length-=9},R.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var r=0,n=0;n>>=26,t.words[n]=u,r=o}return r!==0&&(t.words[t.length++]=r),t},c._prime=function(t){if(w[t])return w[t];var r;if(t==="k256")r=new R;else if(t==="p224")r=new C;else if(t==="p192")r=new I;else if(t==="p25519")r=new gt;else throw new Error("Unknown prime "+t);return w[t]=r,r};function N(l){if(typeof l=="string"){var t=c._prime(l);this.m=t.p,this.prime=t}else p(l.gtn(1),"modulus must be greater than 1"),this.m=l,this.prime=null}N.prototype._verify1=function(t){p(t.negative===0,"red works only with positives"),p(t.red,"red works only with red numbers")},N.prototype._verify2=function(t,r){p((t.negative|r.negative)===0,"red works only with positives"),p(t.red&&t.red===r.red,"red works only with red numbers")},N.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},N.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},N.prototype.add=function(t,r){this._verify2(t,r);var n=t.add(r);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},N.prototype.iadd=function(t,r){this._verify2(t,r);var n=t.iadd(r);return n.cmp(this.m)>=0&&n.isub(this.m),n},N.prototype.sub=function(t,r){this._verify2(t,r);var n=t.sub(r);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},N.prototype.isub=function(t,r){this._verify2(t,r);var n=t.isub(r);return n.cmpn(0)<0&&n.iadd(this.m),n},N.prototype.shl=function(t,r){return this._verify1(t),this.imod(t.ushln(r))},N.prototype.imul=function(t,r){return this._verify2(t,r),this.imod(t.imul(r))},N.prototype.mul=function(t,r){return this._verify2(t,r),this.imod(t.mul(r))},N.prototype.isqr=function(t){return this.imul(t,t.clone())},N.prototype.sqr=function(t){return this.mul(t,t)},N.prototype.sqrt=function(t){if(t.isZero())return t.clone();var r=this.m.andln(3);if(p(r%2===1),r===3){var n=this.m.add(new c(1)).iushrn(2);return this.pow(t,n)}for(var o=this.m.subn(1),u=0;!o.isZero()&&o.andln(1)===0;)u++,o.iushrn(1);p(!o.isZero());var d=new c(1).toRed(this),m=d.redNeg(),h=this.m.subn(1).iushrn(1),e=this.m.bitLength();for(e=new c(2*e*e).toRed(this);this.pow(e,h).cmp(m)!==0;)e.redIAdd(m);for(var f=this.pow(e,o),_=this.pow(t,o.addn(1).iushrn(1)),b=this.pow(t,o),S=u;b.cmp(d)!==0;){for(var x=b,E=0;x.cmp(d)!==0;E++)x=x.redSqr();p(E=0;u--){for(var f=r.words[u],_=e-1;_>=0;_--){var b=f>>_&1;if(d!==o[0]&&(d=this.sqr(d)),b===0&&m===0){h=0;continue}m<<=1,m|=b,h++,!(h!==n&&(u!==0||_!==0))&&(d=this.mul(d,o[m]),h=0,m=0)}e=26}return d},N.prototype.convertTo=function(t){var r=t.umod(this.m);return r===t?r.clone():r},N.prototype.convertFrom=function(t){var r=t.clone();return r.red=null,r},c.mont=function(t){return new kt(t)};function kt(l){N.call(this,l),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new c(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v(kt,N),kt.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},kt.prototype.convertFrom=function(t){var r=this.imod(t.mul(this.rinv));return r.red=null,r},kt.prototype.imul=function(t,r){if(t.isZero()||r.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(r),o=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u=n.isub(o).iushrn(this.shift),d=u;return u.cmp(this.m)>=0?d=u.isub(this.m):u.cmpn(0)<0&&(d=u.iadd(this.m)),d._forceRed(this)},kt.prototype.mul=function(t,r){if(t.isZero()||r.isZero())return new c(0)._forceRed(this);var n=t.mul(r),o=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),u=n.isub(o).iushrn(this.shift),d=u;return u.cmp(this.m)>=0?d=u.isub(this.m):u.cmpn(0)<0&&(d=u.iadd(this.m)),d._forceRed(this)},kt.prototype.invm=function(t){var r=this.imod(t._invmp(this.m).mul(this.r2));return r._forceRed(this)}})(s,Tt)})(Sr);const xr=le;var Rr=ve;ve.strict=Ve;ve.loose=Ye;var Ir=Object.prototype.toString,kr={"[object Int8Array]":!0,"[object Int16Array]":!0,"[object Int32Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Uint16Array]":!0,"[object Uint32Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0};function ve(s){return Ve(s)||Ye(s)}function Ve(s){return s instanceof Int8Array||s instanceof Int16Array||s instanceof Int32Array||s instanceof Uint8Array||s instanceof Uint8ClampedArray||s instanceof Uint16Array||s instanceof Uint32Array||s instanceof Float32Array||s instanceof Float64Array}function Ye(s){return kr[Ir.call(s)]}var Er=Rr.strict,Tr=function(i){if(Er(i)){var a=Ft.Buffer.from(i.buffer);return i.byteLength!==i.buffer.byteLength&&(a=a.slice(i.byteOffset,i.byteOffset+i.byteLength)),a}else return Ft.Buffer.from(i)};const Xe="hex",tr="utf8",Ht="0";function Ct(s){return new Uint8Array(s)}function er(s,i=!1){const a=s.toString(Xe);return i?Nt(a):a}function Or(s){return s.toString(tr)}function $t(s){return Tr(s)}function qt(s,i=!1){return er($t(s),i)}function qr(s){return Or($t(s))}function Ar(s){return Ft.Buffer.from(xt(s),Xe)}function At(s){return Ct(Ar(s))}function ge(s){return Ft.Buffer.from(s,tr)}function Cr(s){return Ct(ge(s))}function Nr(s,i=!1){return er(ge(s),i)}function Br(s,i){return!(typeof s!="string"||!s.match(/^0x[0-9A-Fa-f]*$/)||i&&s.length!==2+2*i)}function rr(...s){let i=[];return s.forEach(a=>i=i.concat(Array.from(a))),new Uint8Array([...i])}function Ur(s,i=8){const a=s%i;return a?(s-a)/i*i+i:s}function Fr(s,i=8,a=Ht){return Lr(s,Ur(s.length,i),a)}function Lr(s,i,a=Ht){return jr(s,i,!0,a)}function xt(s){return s.replace(/^0x/,"")}function Nt(s){return s.startsWith("0x")?s:`0x${s}`}function ir(s){return s=xt(s),s=Fr(s,2),s&&(s=Nt(s)),s}function Pr(s){const i=s.startsWith("0x");return s=xt(s),s=s.startsWith(Ht)?s.substring(1):s,i?Nt(s):s}function jr(s,i,a,p=Ht){const v=i-s.length;let c=s;if(v>0){const T=p.repeat(v);c=a?T+s:s+T}return c}function de(s){return $t(new Uint8Array(s))}function Hr(s,i){return qt(new Uint8Array(s),!i)}function $r(s){return Ct(s).buffer}function Zr(s){return ge(s)}function Dr(s,i){return Nr(s,!i)}function Jr(s){return At(s).buffer}function nr(s,i){const a=xt(ir(new xr(s).toString(16)));return i?a:Nt(a)}var Bt={};const Wr=Mr(wr);var wt={},je;function zr(){if(je)return wt;je=1,Object.defineProperty(wt,"__esModule",{value:!0}),wt.isBrowserCryptoAvailable=wt.getSubtleCrypto=wt.getBrowerCrypto=void 0;function s(){return(Tt===null||Tt===void 0?void 0:Tt.crypto)||(Tt===null||Tt===void 0?void 0:Tt.msCrypto)||{}}wt.getBrowerCrypto=s;function i(){const p=s();return p.subtle||p.webkitSubtle}wt.getSubtleCrypto=i;function a(){return!!s()&&!!i()}return wt.isBrowserCryptoAvailable=a,wt}var bt={},He;function Kr(){if(He)return bt;He=1,Object.defineProperty(bt,"__esModule",{value:!0}),bt.isBrowser=bt.isNode=bt.isReactNative=void 0;function s(){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"}bt.isReactNative=s;function i(){return typeof he<"u"&&typeof he.versions<"u"&&typeof he.versions.node<"u"}bt.isNode=i;function a(){return!s()&&!i()}return bt.isBrowser=a,bt}(function(s){Object.defineProperty(s,"__esModule",{value:!0});const i=Wr;i.__exportStar(zr(),s),i.__exportStar(Kr(),s)})(Bt);function Qr(){const s=Date.now()*Math.pow(10,3),i=Math.floor(Math.random()*Math.pow(10,3));return s+i}function Pt(s){return ir(s)}function Gr(s){return Pr(Nt(s))}const Vr=Qr;function fe(){return((i,a)=>{for(a=i="";i++<36;a+=i*51&52?(i^15?8^Math.random()*(i^20?16:4):4).toString(16):"-");return a})()}function Yr(s){return s===""||typeof s=="string"&&s.trim()===""}function Xr(s){return!(s&&s.length)}function sr(s,i){return Br(s,i)}function ti(s){return typeof s.method<"u"}function Ut(s){return typeof s.result<"u"}function jt(s){return typeof s.error<"u"}function $e(s){return typeof s.event<"u"}function ei(s){return br.includes(s)||s.startsWith("wc_")}function ri(s){return s.method.startsWith("wc_")?!0:!Ge.includes(s.method)}function ii(s){s=xt(s.toLowerCase());const i=xt(_r.keccak_256(Zr(s)));let a="";for(let p=0;p7?a+=s[p].toUpperCase():a+=s[p];return Nt(a)}const ni=s=>s?s.toLowerCase().substring(0,2)!=="0x"?!1:/^(0x)?[0-9a-f]{40}$/i.test(s)?/^(0x)?[0-9a-f]{40}$/.test(s)||/^(0x)?[0-9A-F]{40}$/.test(s)?!0:s===ii(s):!1:!1;function Ze(s){return!Xr(s)&&!sr(s[0])&&(s[0]=Dr(s[0])),s}function ue(s){if(typeof s.type<"u"&&s.type!=="0")return s;if(typeof s.from>"u"||!ni(s.from))throw new Error("Transaction object must include a valid 'from' value.");function i(v){let c=v;return(typeof v=="number"||typeof v=="string"&&!Yr(v))&&(sr(v)?typeof v=="string"&&(c=Pt(v)):c=nr(v)),typeof c=="string"&&(c=Gr(c)),c}const a={from:Pt(s.from),to:typeof s.to>"u"?void 0:Pt(s.to),gasPrice:typeof s.gasPrice>"u"?"":i(s.gasPrice),gas:typeof s.gas>"u"?typeof s.gasLimit>"u"?"":i(s.gasLimit):i(s.gas),value:typeof s.value>"u"?"":i(s.value),nonce:typeof s.nonce>"u"?"":i(s.nonce),data:typeof s.data>"u"?"":Pt(s.data)||"0x"},p=["gasPrice","gas","value","nonce"];return Object.keys(a).forEach(v=>{(typeof a[v]>"u"||typeof a[v]=="string"&&!a[v].trim().length)&&p.includes(v)&&delete a[v]}),a}function si(s){const i=s.message||"Failed or Rejected Request";let a=-32e3;if(s&&!s.code)switch(i){case"Parse error":a=-32700;break;case"Invalid request":a=-32600;break;case"Method not found":a=-32601;break;case"Invalid params":a=-32602;break;case"Internal error":a=-32603;break;default:a=-32e3;break}const p={code:a,message:i};return s.data&&(p.data=s.data),p}var ye={},oi=s=>encodeURIComponent(s).replace(/[!'()*]/g,i=>`%${i.charCodeAt(0).toString(16).toUpperCase()}`),or="%[a-f0-9]{2}",De=new RegExp("("+or+")|([^%]+?)","gi"),Je=new RegExp("("+or+")+","gi");function pe(s,i){try{return[decodeURIComponent(s.join(""))]}catch{}if(s.length===1)return s;i=i||1;var a=s.slice(0,i),p=s.slice(i);return Array.prototype.concat.call([],pe(a),pe(p))}function ai(s){try{return decodeURIComponent(s)}catch{for(var i=s.match(De)||[],a=1;a{if(!(typeof s=="string"&&typeof i=="string"))throw new TypeError("Expected the arguments to be of type `string`");if(i==="")return[s];const a=s.indexOf(i);return a===-1?[s]:[s.slice(0,a),s.slice(a+i.length)]};(function(s){const i=oi,a=fi,p=ui,v=g=>g==null;function c(g){switch(g.arrayFormat){case"index":return y=>(w,M)=>{const R=w.length;return M===void 0||g.skipNull&&M===null||g.skipEmptyString&&M===""?w:M===null?[...w,[k(y,g),"[",R,"]"].join("")]:[...w,[k(y,g),"[",k(R,g),"]=",k(M,g)].join("")]};case"bracket":return y=>(w,M)=>M===void 0||g.skipNull&&M===null||g.skipEmptyString&&M===""?w:M===null?[...w,[k(y,g),"[]"].join("")]:[...w,[k(y,g),"[]=",k(M,g)].join("")];case"comma":case"separator":return y=>(w,M)=>M==null||M.length===0?w:w.length===0?[[k(y,g),"=",k(M,g)].join("")]:[[w,k(M,g)].join(g.arrayFormatSeparator)];default:return y=>(w,M)=>M===void 0||g.skipNull&&M===null||g.skipEmptyString&&M===""?w:M===null?[...w,k(y,g)]:[...w,[k(y,g),"=",k(M,g)].join("")]}}function T(g){let y;switch(g.arrayFormat){case"index":return(w,M,R)=>{if(y=/\[(\d*)\]$/.exec(w),w=w.replace(/\[\d*\]$/,""),!y){R[w]=M;return}R[w]===void 0&&(R[w]={}),R[w][y[1]]=M};case"bracket":return(w,M,R)=>{if(y=/(\[\])$/.exec(w),w=w.replace(/\[\]$/,""),!y){R[w]=M;return}if(R[w]===void 0){R[w]=[M];return}R[w]=[].concat(R[w],M)};case"comma":case"separator":return(w,M,R)=>{const I=typeof M=="string"&&M.split("").indexOf(g.arrayFormatSeparator)>-1?M.split(g.arrayFormatSeparator).map(gt=>vt(gt,g)):M===null?M:vt(M,g);R[w]=I};default:return(w,M,R)=>{if(R[w]===void 0){R[w]=M;return}R[w]=[].concat(R[w],M)}}}function mt(g){if(typeof g!="string"||g.length!==1)throw new TypeError("arrayFormatSeparator must be single character string")}function k(g,y){return y.encode?y.strict?i(g):encodeURIComponent(g):g}function vt(g,y){return y.decode?a(g):g}function It(g){return Array.isArray(g)?g.sort():typeof g=="object"?It(Object.keys(g)).sort((y,w)=>Number(y)-Number(w)).map(y=>g[y]):g}function Mt(g){const y=g.indexOf("#");return y!==-1&&(g=g.slice(0,y)),g}function _t(g){let y="";const w=g.indexOf("#");return w!==-1&&(y=g.slice(w)),y}function yt(g){g=Mt(g);const y=g.indexOf("?");return y===-1?"":g.slice(y+1)}function Ot(g,y){return y.parseNumbers&&!Number.isNaN(Number(g))&&typeof g=="string"&&g.trim()!==""?g=Number(g):y.parseBooleans&&g!==null&&(g.toLowerCase()==="true"||g.toLowerCase()==="false")&&(g=g.toLowerCase()==="true"),g}function Lt(g,y){y=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},y),mt(y.arrayFormatSeparator);const w=T(y),M=Object.create(null);if(typeof g!="string"||(g=g.trim().replace(/^[?#&]/,""),!g))return M;for(const R of g.split("&")){let[C,I]=p(y.decode?R.replace(/\+/g," "):R,"=");I=I===void 0?null:["comma","separator"].includes(y.arrayFormat)?I:vt(I,y),w(vt(C,y),I,M)}for(const R of Object.keys(M)){const C=M[R];if(typeof C=="object"&&C!==null)for(const I of Object.keys(C))C[I]=Ot(C[I],y);else M[R]=Ot(C,y)}return y.sort===!1?M:(y.sort===!0?Object.keys(M).sort():Object.keys(M).sort(y.sort)).reduce((R,C)=>{const I=M[C];return Boolean(I)&&typeof I=="object"&&!Array.isArray(I)?R[C]=It(I):R[C]=I,R},Object.create(null))}s.extract=yt,s.parse=Lt,s.stringify=(g,y)=>{if(!g)return"";y=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},y),mt(y.arrayFormatSeparator);const w=I=>y.skipNull&&v(g[I])||y.skipEmptyString&&g[I]==="",M=c(y),R={};for(const I of Object.keys(g))w(I)||(R[I]=g[I]);const C=Object.keys(R);return y.sort!==!1&&C.sort(y.sort),C.map(I=>{const gt=g[I];return gt===void 0?"":gt===null?k(I,y):Array.isArray(gt)?gt.reduce(M(I),[]).join("&"):k(I,y)+"="+k(gt,y)}).filter(I=>I.length>0).join("&")},s.parseUrl=(g,y)=>{y=Object.assign({decode:!0},y);const[w,M]=p(g,"#");return Object.assign({url:w.split("?")[0]||"",query:Lt(yt(g),y)},y&&y.parseFragmentIdentifier&&M?{fragmentIdentifier:vt(M,y)}:{})},s.stringifyUrl=(g,y)=>{y=Object.assign({encode:!0,strict:!0},y);const w=Mt(g.url).split("?")[0]||"",M=s.extract(g.url),R=s.parse(M,{sort:!1}),C=Object.assign(R,g.query);let I=s.stringify(C,y);I&&(I=`?${I}`);let gt=_t(g.url);return g.fragmentIdentifier&&(gt=`#${k(g.fragmentIdentifier,y)}`),`${w}${I}${gt}`}})(ye);function ci(s){const i=s.indexOf("?")!==-1?s.indexOf("?"):void 0;return typeof i<"u"?s.substr(i):""}function li(s,i){let a=ar(s);return a=Object.assign(Object.assign({},a),i),s=di(a),s}function ar(s){return ye.parse(s)}function di(s){return ye.stringify(s)}function pi(s){return typeof s.bridge<"u"}function mi(s){const i=s.indexOf(":"),a=s.indexOf("?")!==-1?s.indexOf("?"):void 0,p=s.substring(0,i),v=s.substring(i+1,a);function c(Mt){const _t="@",yt=Mt.split(_t);return{handshakeTopic:yt[0],version:parseInt(yt[1],10)}}const T=c(v),mt=typeof a<"u"?s.substr(a):"";function k(Mt){const _t=ar(Mt);return{key:_t.key||"",bridge:_t.bridge||""}}const vt=k(mt);return Object.assign(Object.assign({protocol:p},T),vt)}class vi{constructor(){this._eventEmitters=[],typeof window<"u"&&typeof window.addEventListener<"u"&&(window.addEventListener("online",()=>this.trigger("online")),window.addEventListener("offline",()=>this.trigger("offline")))}on(i,a){this._eventEmitters.push({event:i,callback:a})}trigger(i){let a=[];i&&(a=this._eventEmitters.filter(p=>p.event===i)),a.forEach(p=>{p.callback()})}}const gi=typeof Pe.WebSocket<"u"?Pe.WebSocket:require("ws");class yi{constructor(i){if(this.opts=i,this._queue=[],this._events=[],this._subscriptions=[],this._protocol=i.protocol,this._version=i.version,this._url="",this._netMonitor=null,this._socket=null,this._nextSocket=null,this._subscriptions=i.subscriptions||[],this._netMonitor=i.netMonitor||new vi,!i.url||typeof i.url!="string")throw new Error("Missing or invalid WebSocket url");this._url=i.url,this._netMonitor.on("online",()=>this._socketCreate())}set readyState(i){}get readyState(){return this._socket?this._socket.readyState:-1}set connecting(i){}get connecting(){return this.readyState===0}set connected(i){}get connected(){return this.readyState===1}set closing(i){}get closing(){return this.readyState===2}set closed(i){}get closed(){return this.readyState===3}open(){this._socketCreate()}close(){this._socketClose()}send(i,a,p){if(!a||typeof a!="string")throw new Error("Missing or invalid topic field");this._socketSend({topic:a,type:"pub",payload:i,silent:!!p})}subscribe(i){this._socketSend({topic:i,type:"sub",payload:"",silent:!0})}on(i,a){this._events.push({event:i,callback:a})}_socketCreate(){if(this._nextSocket)return;const i=Mi(this._url,this._protocol,this._version);if(this._nextSocket=new gi(i),!this._nextSocket)throw new Error("Failed to create socket");this._nextSocket.onmessage=a=>this._socketReceive(a),this._nextSocket.onopen=()=>this._socketOpen(),this._nextSocket.onerror=a=>this._socketError(a),this._nextSocket.onclose=()=>{setTimeout(()=>{this._nextSocket=null,this._socketCreate()},1e3)}}_socketOpen(){this._socketClose(),this._socket=this._nextSocket,this._nextSocket=null,this._queueSubscriptions(),this._pushQueue()}_socketClose(){this._socket&&(this._socket.onclose=()=>{},this._socket.close())}_socketSend(i){const a=JSON.stringify(i);this._socket&&this._socket.readyState===1?this._socket.send(a):(this._setToQueue(i),this._socketCreate())}async _socketReceive(i){let a;try{a=JSON.parse(i.data)}catch{return}if(this._socketSend({topic:a.topic,type:"ack",payload:"",silent:!0}),this._socket&&this._socket.readyState===1){const p=this._events.filter(v=>v.event==="message");p&&p.length&&p.forEach(v=>v.callback(a))}}_socketError(i){const a=this._events.filter(p=>p.event==="error");a&&a.length&&a.forEach(p=>p.callback(i))}_queueSubscriptions(){this._subscriptions.forEach(a=>this._queue.push({topic:a,type:"sub",payload:"",silent:!0})),this._subscriptions=this.opts.subscriptions||[]}_setToQueue(i){this._queue.push(i)}_pushQueue(){this._queue.forEach(a=>this._socketSend(a)),this._queue=[]}}function Mi(s,i,a){var p,v;const T=(s.startsWith("https")?s.replace("https","wss"):s.startsWith("http")?s.replace("http","ws"):s).split("?"),mt=pr()?{protocol:i,version:a,env:"browser",host:((p=mr())===null||p===void 0?void 0:p.host)||""}:{protocol:i,version:a,env:((v=vr())===null||v===void 0?void 0:v.name)||""},k=li(ci(T[1]||""),mt);return T[0]+"?"+k}const ce="Session currently connected",Et="Session currently disconnected",_i="Session Rejected",wi="Missing JSON RPC response",bi='JSON-RPC success response must include "result" field',Si='JSON-RPC error response must include "error" field',xi='JSON RPC request must have valid "method" value',Ri='JSON RPC request must have valid "id" value',Ii="Missing one of the required parameters: bridge / uri / session",We="JSON RPC response format is invalid",ki="URI format is invalid",Ei="QRCode Modal not provided",ze="User close QRCode Modal";class Ti{constructor(){this._eventEmitters=[]}subscribe(i){this._eventEmitters.push(i)}unsubscribe(i){this._eventEmitters=this._eventEmitters.filter(a=>a.event!==i)}trigger(i){let a=[],p;ti(i)?p=i.method:Ut(i)||jt(i)?p=`response:${i.id}`:$e(i)?p=i.event:p="",p&&(a=this._eventEmitters.filter(v=>v.event===p)),(!a||!a.length)&&!ei(p)&&!$e(p)&&(a=this._eventEmitters.filter(v=>v.event==="call_request")),a.forEach(v=>{if(jt(i)){const c=new Error(i.error.message);v.callback(c,null)}else v.callback(null,i)})}}class Oi{constructor(i="walletconnect"){this.storageId=i}getSession(){let i=null;const a=Ke(this.storageId);return a&&pi(a)&&(i=a),i}setSession(i){return gr(this.storageId,i),i}removeSession(){Qe(this.storageId)}}const qi="walletconnect.org",Ai="abcdefghijklmnopqrstuvwxyz0123456789",hr=Ai.split("").map(s=>`https://${s}.bridge.walletconnect.org`);function Ci(s){let i=s.indexOf("//")>-1?s.split("/")[2]:s.split("/")[0];return i=i.split(":")[0],i=i.split("?")[0],i}function Ni(s){return Ci(s).split(".").slice(-2).join(".")}function Bi(){return Math.floor(Math.random()*hr.length)}function Ui(){return hr[Bi()]}function Fi(s){return Ni(s)===qi}function Li(s){return Fi(s)?Ui():s}class Pi{constructor(i){if(this.protocol="wc",this.version=1,this._bridge="",this._key=null,this._clientId="",this._clientMeta=null,this._peerId="",this._peerMeta=null,this._handshakeId=0,this._handshakeTopic="",this._connected=!1,this._accounts=[],this._chainId=0,this._networkId=0,this._rpcUrl="",this._eventManager=new Ti,this._clientMeta=Fe()||i.connectorOpts.clientMeta||null,this._cryptoLib=i.cryptoLib,this._sessionStorage=i.sessionStorage||new Oi(i.connectorOpts.storageId),this._qrcodeModal=i.connectorOpts.qrcodeModal,this._qrcodeModalOptions=i.connectorOpts.qrcodeModalOptions,this._signingMethods=[...Ge,...i.connectorOpts.signingMethods||[]],!i.connectorOpts.bridge&&!i.connectorOpts.uri&&!i.connectorOpts.session)throw new Error(Ii);i.connectorOpts.bridge&&(this.bridge=Li(i.connectorOpts.bridge)),i.connectorOpts.uri&&(this.uri=i.connectorOpts.uri);const a=i.connectorOpts.session||this._getStorageSession();a&&(this.session=a),this.handshakeId&&this._subscribeToSessionResponse(this.handshakeId,"Session request rejected"),this._transport=i.transport||new yi({protocol:this.protocol,version:this.version,url:this.bridge,subscriptions:[this.clientId]}),this._subscribeToInternalEvents(),this._initTransport(),i.connectorOpts.uri&&this._subscribeToSessionRequest(),i.pushServerOpts&&this._registerPushServer(i.pushServerOpts)}set bridge(i){i&&(this._bridge=i)}get bridge(){return this._bridge}set key(i){if(!i)return;const a=Jr(i);this._key=a}get key(){return this._key?Hr(this._key,!0):""}set clientId(i){i&&(this._clientId=i)}get clientId(){let i=this._clientId;return i||(i=this._clientId=fe()),this._clientId}set peerId(i){i&&(this._peerId=i)}get peerId(){return this._peerId}set clientMeta(i){}get clientMeta(){let i=this._clientMeta;return i||(i=this._clientMeta=Fe()),i}set peerMeta(i){this._peerMeta=i}get peerMeta(){return this._peerMeta}set handshakeTopic(i){i&&(this._handshakeTopic=i)}get handshakeTopic(){return this._handshakeTopic}set handshakeId(i){i&&(this._handshakeId=i)}get handshakeId(){return this._handshakeId}get uri(){return this._formatUri()}set uri(i){if(!i)return;const{handshakeTopic:a,bridge:p,key:v}=this._parseUri(i);this.handshakeTopic=a,this.bridge=p,this.key=v}set chainId(i){this._chainId=i}get chainId(){return this._chainId}set networkId(i){this._networkId=i}get networkId(){return this._networkId}set accounts(i){this._accounts=i}get accounts(){return this._accounts}set rpcUrl(i){this._rpcUrl=i}get rpcUrl(){return this._rpcUrl}set connected(i){}get connected(){return this._connected}set pending(i){}get pending(){return!!this._handshakeTopic}get session(){return{connected:this.connected,accounts:this.accounts,chainId:this.chainId,bridge:this.bridge,key:this.key,clientId:this.clientId,clientMeta:this.clientMeta,peerId:this.peerId,peerMeta:this.peerMeta,handshakeId:this.handshakeId,handshakeTopic:this.handshakeTopic}}set session(i){i&&(this._connected=i.connected,this.accounts=i.accounts,this.chainId=i.chainId,this.bridge=i.bridge,this.key=i.key,this.clientId=i.clientId,this.clientMeta=i.clientMeta,this.peerId=i.peerId,this.peerMeta=i.peerMeta,this.handshakeId=i.handshakeId,this.handshakeTopic=i.handshakeTopic)}on(i,a){const p={event:i,callback:a};this._eventManager.subscribe(p)}off(i){this._eventManager.unsubscribe(i)}async createInstantRequest(i){this._key=await this._generateKey();const a=this._formatRequest({method:"wc_instantRequest",params:[{peerId:this.clientId,peerMeta:this.clientMeta,request:this._formatRequest(i)}]});this.handshakeId=a.id,this.handshakeTopic=fe(),this._eventManager.trigger({event:"display_uri",params:[this.uri]}),this.on("modal_closed",()=>{throw new Error(ze)});const p=()=>{this.killSession()};try{const v=await this._sendCallRequest(a);return v&&p(),v}catch(v){throw p(),v}}async connect(i){if(!this._qrcodeModal)throw new Error(Ei);return this.connected?{chainId:this.chainId,accounts:this.accounts}:(await this.createSession(i),new Promise(async(a,p)=>{this.on("modal_closed",()=>p(new Error(ze))),this.on("connect",(v,c)=>{if(v)return p(v);a(c.params[0])})}))}async createSession(i){if(this._connected)throw new Error(ce);if(this.pending)return;this._key=await this._generateKey();const a=this._formatRequest({method:"wc_sessionRequest",params:[{peerId:this.clientId,peerMeta:this.clientMeta,chainId:i&&i.chainId?i.chainId:null}]});this.handshakeId=a.id,this.handshakeTopic=fe(),this._sendSessionRequest(a,"Session update rejected",{topic:this.handshakeTopic}),this._eventManager.trigger({event:"display_uri",params:[this.uri]})}approveSession(i){if(this._connected)throw new Error(ce);this.chainId=i.chainId,this.accounts=i.accounts,this.networkId=i.networkId||0,this.rpcUrl=i.rpcUrl||"";const a={approved:!0,chainId:this.chainId,networkId:this.networkId,accounts:this.accounts,rpcUrl:this.rpcUrl,peerId:this.clientId,peerMeta:this.clientMeta},p={id:this.handshakeId,jsonrpc:"2.0",result:a};this._sendResponse(p),this._connected=!0,this._setStorageSession(),this._eventManager.trigger({event:"connect",params:[{peerId:this.peerId,peerMeta:this.peerMeta,chainId:this.chainId,accounts:this.accounts}]})}rejectSession(i){if(this._connected)throw new Error(ce);const a=i&&i.message?i.message:_i,p=this._formatResponse({id:this.handshakeId,error:{message:a}});this._sendResponse(p),this._connected=!1,this._eventManager.trigger({event:"disconnect",params:[{message:a}]}),this._removeStorageSession()}updateSession(i){if(!this._connected)throw new Error(Et);this.chainId=i.chainId,this.accounts=i.accounts,this.networkId=i.networkId||0,this.rpcUrl=i.rpcUrl||"";const a={approved:!0,chainId:this.chainId,networkId:this.networkId,accounts:this.accounts,rpcUrl:this.rpcUrl},p=this._formatRequest({method:"wc_sessionUpdate",params:[a]});this._sendSessionRequest(p,"Session update rejected"),this._eventManager.trigger({event:"session_update",params:[{chainId:this.chainId,accounts:this.accounts}]}),this._manageStorageSession()}async killSession(i){const a=i?i.message:"Session Disconnected",p={approved:!1,chainId:null,networkId:null,accounts:null},v=this._formatRequest({method:"wc_sessionUpdate",params:[p]});await this._sendRequest(v),this._handleSessionDisconnect(a)}async sendTransaction(i){if(!this._connected)throw new Error(Et);const a=ue(i),p=this._formatRequest({method:"eth_sendTransaction",params:[a]});return await this._sendCallRequest(p)}async signTransaction(i){if(!this._connected)throw new Error(Et);const a=ue(i),p=this._formatRequest({method:"eth_signTransaction",params:[a]});return await this._sendCallRequest(p)}async signMessage(i){if(!this._connected)throw new Error(Et);const a=this._formatRequest({method:"eth_sign",params:i});return await this._sendCallRequest(a)}async signPersonalMessage(i){if(!this._connected)throw new Error(Et);i=Ze(i);const a=this._formatRequest({method:"personal_sign",params:i});return await this._sendCallRequest(a)}async signTypedData(i){if(!this._connected)throw new Error(Et);const a=this._formatRequest({method:"eth_signTypedData",params:i});return await this._sendCallRequest(a)}async updateChain(i){if(!this._connected)throw new Error("Session currently disconnected");const a=this._formatRequest({method:"wallet_updateChain",params:[i]});return await this._sendCallRequest(a)}unsafeSend(i,a){return this._sendRequest(i,a),this._eventManager.trigger({event:"call_request_sent",params:[{request:i,options:a}]}),new Promise((p,v)=>{this._subscribeToResponse(i.id,(c,T)=>{if(c){v(c);return}if(!T)throw new Error(wi);p(T)})})}async sendCustomRequest(i,a){if(!this._connected)throw new Error(Et);switch(i.method){case"eth_accounts":return this.accounts;case"eth_chainId":return nr(this.chainId);case"eth_sendTransaction":case"eth_signTransaction":i.params&&(i.params[0]=ue(i.params[0]));break;case"personal_sign":i.params&&(i.params=Ze(i.params));break}const p=this._formatRequest(i);return await this._sendCallRequest(p,a)}approveRequest(i){if(Ut(i)){const a=this._formatResponse(i);this._sendResponse(a)}else throw new Error(bi)}rejectRequest(i){if(jt(i)){const a=this._formatResponse(i);this._sendResponse(a)}else throw new Error(Si)}transportClose(){this._transport.close()}async _sendRequest(i,a){const p=this._formatRequest(i),v=await this._encrypt(p),c=typeof(a==null?void 0:a.topic)<"u"?a.topic:this.peerId,T=JSON.stringify(v),mt=typeof(a==null?void 0:a.forcePushNotification)<"u"?!a.forcePushNotification:ri(p);this._transport.send(T,c,mt)}async _sendResponse(i){const a=await this._encrypt(i),p=this.peerId,v=JSON.stringify(a),c=!0;this._transport.send(v,p,c)}async _sendSessionRequest(i,a,p){this._sendRequest(i,p),this._subscribeToSessionResponse(i.id,a)}_sendCallRequest(i,a){return this._sendRequest(i,a),this._eventManager.trigger({event:"call_request_sent",params:[{request:i,options:a}]}),this._subscribeToCallResponse(i.id)}_formatRequest(i){if(typeof i.method>"u")throw new Error(xi);return{id:typeof i.id>"u"?Vr():i.id,jsonrpc:"2.0",method:i.method,params:typeof i.params>"u"?[]:i.params}}_formatResponse(i){if(typeof i.id>"u")throw new Error(Ri);const a={id:i.id,jsonrpc:"2.0"};if(jt(i)){const p=si(i.error);return Object.assign(Object.assign(Object.assign({},a),i),{error:p})}else if(Ut(i))return Object.assign(Object.assign({},a),i);throw new Error(We)}_handleSessionDisconnect(i){const a=i||"Session Disconnected";this._connected||(this._qrcodeModal&&this._qrcodeModal.close(),Qe(Le)),this._connected&&(this._connected=!1),this._handshakeId&&(this._handshakeId=0),this._handshakeTopic&&(this._handshakeTopic=""),this._peerId&&(this._peerId=""),this._eventManager.trigger({event:"disconnect",params:[{message:a}]}),this._removeStorageSession(),this.transportClose()}_handleSessionResponse(i,a){a?a.approved?(this._connected?(a.chainId&&(this.chainId=a.chainId),a.accounts&&(this.accounts=a.accounts),this._eventManager.trigger({event:"session_update",params:[{chainId:this.chainId,accounts:this.accounts}]})):(this._connected=!0,a.chainId&&(this.chainId=a.chainId),a.accounts&&(this.accounts=a.accounts),a.peerId&&!this.peerId&&(this.peerId=a.peerId),a.peerMeta&&!this.peerMeta&&(this.peerMeta=a.peerMeta),this._eventManager.trigger({event:"connect",params:[{peerId:this.peerId,peerMeta:this.peerMeta,chainId:this.chainId,accounts:this.accounts}]})),this._manageStorageSession()):this._handleSessionDisconnect(i):this._handleSessionDisconnect(i)}async _handleIncomingMessages(i){if(![this.clientId,this.handshakeTopic].includes(i.topic))return;let p;try{p=JSON.parse(i.payload)}catch{return}const v=await this._decrypt(p);v&&this._eventManager.trigger(v)}_subscribeToSessionRequest(){this._transport.subscribe(this.handshakeTopic)}_subscribeToResponse(i,a){this.on(`response:${i}`,a)}_subscribeToSessionResponse(i,a){this._subscribeToResponse(i,(p,v)=>{if(p){this._handleSessionResponse(p.message);return}Ut(v)?this._handleSessionResponse(a,v.result):v.error&&v.error.message?this._handleSessionResponse(v.error.message):this._handleSessionResponse(a)})}_subscribeToCallResponse(i){return new Promise((a,p)=>{this._subscribeToResponse(i,(v,c)=>{if(v){p(v);return}Ut(c)?a(c.result):c.error&&c.error.message?p(c.error):p(new Error(We))})})}_subscribeToInternalEvents(){this.on("display_uri",()=>{this._qrcodeModal&&this._qrcodeModal.open(this.uri,()=>{this._eventManager.trigger({event:"modal_closed",params:[]})},this._qrcodeModalOptions)}),this.on("connect",()=>{this._qrcodeModal&&this._qrcodeModal.close()}),this.on("call_request_sent",(i,a)=>{const{request:p}=a.params[0];if(yr()&&this._signingMethods.includes(p.method)){const v=Ke(Le);v&&(window.location.href=v.href)}}),this.on("wc_sessionRequest",(i,a)=>{i&&this._eventManager.trigger({event:"error",params:[{code:"SESSION_REQUEST_ERROR",message:i.toString()}]}),this.handshakeId=a.id,this.peerId=a.params[0].peerId,this.peerMeta=a.params[0].peerMeta;const p=Object.assign(Object.assign({},a),{method:"session_request"});this._eventManager.trigger(p)}),this.on("wc_sessionUpdate",(i,a)=>{i&&this._handleSessionResponse(i.message),this._handleSessionResponse("Session disconnected",a.params[0])})}_initTransport(){this._transport.on("message",i=>this._handleIncomingMessages(i)),this._transport.on("open",()=>this._eventManager.trigger({event:"transport_open",params:[]})),this._transport.on("close",()=>this._eventManager.trigger({event:"transport_close",params:[]})),this._transport.on("error",()=>this._eventManager.trigger({event:"transport_error",params:["Websocket connection failed"]})),this._transport.open()}_formatUri(){const i=this.protocol,a=this.handshakeTopic,p=this.version,v=encodeURIComponent(this.bridge),c=this.key;return`${i}:${a}@${p}?bridge=${v}&key=${c}`}_parseUri(i){const a=mi(i);if(a.protocol===this.protocol){if(!a.handshakeTopic)throw Error("Invalid or missing handshakeTopic parameter value");const p=a.handshakeTopic;if(!a.bridge)throw Error("Invalid or missing bridge url parameter value");const v=decodeURIComponent(a.bridge);if(!a.key)throw Error("Invalid or missing key parameter value");const c=a.key;return{handshakeTopic:p,bridge:v,key:c}}else throw new Error(ki)}async _generateKey(){return this._cryptoLib?await this._cryptoLib.generateKey():null}async _encrypt(i){const a=this._key;return this._cryptoLib&&a?await this._cryptoLib.encrypt(i,a):null}async _decrypt(i){const a=this._key;return this._cryptoLib&&a?await this._cryptoLib.decrypt(i,a):null}_getStorageSession(){let i=null;return this._sessionStorage&&(i=this._sessionStorage.getSession()),i}_setStorageSession(){this._sessionStorage&&this._sessionStorage.setSession(this.session)}_removeStorageSession(){this._sessionStorage&&this._sessionStorage.removeSession()}_manageStorageSession(){this._connected?this._setStorageSession():this._removeStorageSession()}_registerPushServer(i){if(!i.url||typeof i.url!="string")throw Error("Invalid or missing pushServerOpts.url parameter value");if(!i.type||typeof i.type!="string")throw Error("Invalid or missing pushServerOpts.type parameter value");if(!i.token||typeof i.token!="string")throw Error("Invalid or missing pushServerOpts.token parameter value");const a={bridge:this.bridge,topic:this.clientId,type:i.type,token:i.token,peerName:"",language:i.language||""};this.on("connect",async(p,v)=>{if(p)throw p;if(i.peerMeta){const c=v.params[0].peerMeta.name;a.peerName=c}try{if(!(await(await fetch(`${i.url}/new`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(a)})).json()).success)throw Error("Failed to register in Push Server")}catch{throw Error("Failed to register in Push Server")}})}}function ji(s){return Bt.getBrowerCrypto().getRandomValues(new Uint8Array(s))}const fr=256,ur=fr,Hi=fr,Rt="AES-CBC",$i=`SHA-${ur}`,me="HMAC",Zi="encrypt",Di="decrypt",Ji="sign",Wi="verify";function zi(s){return s===Rt?{length:ur,name:Rt}:{hash:{name:$i},name:me}}function Ki(s){return s===Rt?[Zi,Di]:[Ji,Wi]}async function Me(s,i=Rt){return Bt.getSubtleCrypto().importKey("raw",s,zi(i),!0,Ki(i))}async function Qi(s,i,a){const p=Bt.getSubtleCrypto(),v=await Me(i,Rt),c=await p.encrypt({iv:s,name:Rt},v,a);return new Uint8Array(c)}async function Gi(s,i,a){const p=Bt.getSubtleCrypto(),v=await Me(i,Rt),c=await p.decrypt({iv:s,name:Rt},v,a);return new Uint8Array(c)}async function Vi(s,i){const a=Bt.getSubtleCrypto(),p=await Me(s,me),v=await a.sign({length:Hi,name:me},p,i);return new Uint8Array(v)}function Yi(s,i,a){return Qi(s,i,a)}function Xi(s,i,a){return Gi(s,i,a)}async function cr(s,i){return await Vi(s,i)}async function lr(s){const i=(s||256)/8,a=ji(i);return $r($t(a))}async function dr(s,i){const a=At(s.data),p=At(s.iv),v=At(s.hmac),c=qt(v,!1),T=rr(a,p),mt=await cr(i,T),k=qt(mt,!1);return xt(c)===xt(k)}async function tn(s,i,a){const p=Ct(de(i)),v=a||await lr(128),c=Ct(de(v)),T=qt(c,!1),mt=JSON.stringify(s),k=Cr(mt),vt=await Yi(c,p,k),It=qt(vt,!1),Mt=rr(vt,c),_t=await cr(p,Mt),yt=qt(_t,!1);return{data:It,hmac:yt,iv:T}}async function en(s,i){const a=Ct(de(i));if(!a)throw new Error("Missing key: required for decryption");if(!await dr(s,a))return null;const v=At(s.data),c=At(s.iv),T=await Xi(c,a,v),mt=qr(T);let k;try{k=JSON.parse(mt)}catch{return null}return k}const rn=Object.freeze(Object.defineProperty({__proto__:null,decrypt:en,encrypt:tn,generateKey:lr,verifyHmac:dr},Symbol.toStringTag,{value:"Module"}));class an extends Pi{constructor(i,a){super({cryptoLib:rn,connectorOpts:i,pushServerOpts:a})}}export{an as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js.meta deleted file mode 100644 index c5f88d864..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-368abf3a.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 55ac24832096ee14eb7e8220d132335b -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-581511fd.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-581511fd.js deleted file mode 100644 index be6991961..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-581511fd.js +++ /dev/null @@ -1 +0,0 @@ -import{X as C,Y as A,$ as y,a0 as d,a1 as h,a2 as k,a3 as D,a4 as L,a5 as N,a6 as P,a7 as B,a8 as S,a9 as H,aa as K,ab as w,ac as Q,ad as G,ae as J,af as O,ag as Y,ah as X,ai as W,aj as V}from"./index-b28afd98.js";import{al as Ue,aq as De,am as Pe,an as Be,ar as He,as as Ke,ay as Qe,ax as Ge,az as Je,aA as Ye,at as Xe,ap as $e,au as Ze,av as _e,aB as ea,aC as aa,aD as ta,aE as na,ak as ra,ao as ia,aF as sa,aw as ua,aG as oa,aH as ca,aI as la,aJ as fa,aK as ma,aL as da,aM as ha}from"./index-b28afd98.js";import{A as $,a as Z,c as _,n as ee}from"./zipWith-29b37a07.js";import{d as pa,C as ga,e as Aa,N as ba,b as ya,S as wa,T as Fa,j as Ia,k as xa,l as Ea,m as qa,p as Ta,q as Sa,s as ka,u as Oa,v as Wa,f as Ma,w as Ca,x as La,y as Na,B as Va,D as ja,E as za,F as Ra,G as Ua,H as Da,I as Pa,J as Ba,K as Ha,L as Ka,M as Qa,O as Ga,P as Ja,Q as Ya,R as Xa,U as $a,V as Za,W as _a,X as et,Y as at,Z as tt,a4 as nt,_ as rt,$ as it,i as st,a0 as ut,a1 as ot,a2 as ct,a3 as lt,a5 as ft,a6 as mt,a7 as dt,a8 as ht,a9 as vt,o as pt,g as gt,aa as At,ab as bt,ac as yt,ad as wt,ae as Ft,af as It,r as xt,ag as Et,ah as qt,am as Tt,ai as St,aj as kt,ak as Ot,al as Wt,an as Mt,ao as Ct,ap as Lt,aq as Nt,ar as Vt,as as jt,at as zt,au as Rt,av as Ut,aw as Dt,ax as Pt,ay as Bt,az as Ht,aA as Kt,aB as Qt,aC as Gt,t as Jt,aD as Yt,aE as Xt,aF as $t,aG as Zt,h as _t,aH as en,aI as an,aJ as tn,aK as nn,aL as rn,aM as sn,aN as un,z as on,aO as cn,aP as ln}from"./zipWith-29b37a07.js";import{A as x,a as E}from"./skip-2d52d7ac.js";import{S as mn,b as dn,c as hn,d as vn,s as pn}from"./skip-2d52d7ac.js";import{m as An}from"./merge-7af99d5f.js";var j={now:function(){return(j.delegate||performance).now()},delegate:void 0},p={schedule:function(n){var t=requestAnimationFrame,e=cancelAnimationFrame,r=p.delegate;r&&(t=r.requestAnimationFrame,e=r.cancelAnimationFrame);var a=t(function(i){e=void 0,n(i)});return new C(function(){return e==null?void 0:e(a)})},requestAnimationFrame:function(){for(var n=[],t=0;t0?n.prototype.requestAsyncId.call(this,e,r,a):(e.actions.push(this),e._scheduled||(e._scheduled=F.setImmediate(e.flush.bind(e,void 0))))},t.prototype.recycleAsyncId=function(e,r,a){var i;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return n.prototype.recycleAsyncId.call(this,e,r,a);var s=e.actions;r!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==r&&(F.clearImmediate(r),e._scheduled=void 0)},t}(x),se=function(n){h(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.flush=function(e){this._active=!0;var r=this._scheduled;this._scheduled=void 0;var a=this.actions,i;e=e||a.shift();do if(i=e.execute(e.state,e.delay))break;while((e=a[0])&&e.id===r&&a.shift());if(this._active=!1,i){for(;(e=a[0])&&e.id===r&&a.shift();)e.unsubscribe();throw i}},t}(E),ue=new se(ie),we=ue,oe=function(n){h(t,n);function t(e,r){var a=n.call(this,e,r)||this;return a.scheduler=e,a.work=r,a}return t.prototype.schedule=function(e,r){return r===void 0&&(r=0),r>0?n.prototype.schedule.call(this,e,r):(this.delay=r,this.state=e,this.scheduler.flush(this),this)},t.prototype.execute=function(e,r){return r>0||this.closed?n.prototype.execute.call(this,e,r):this._execute(e,r)},t.prototype.requestAsyncId=function(e,r,a){return a===void 0&&(a=0),a!=null&&a>0||a==null&&this.delay>0?n.prototype.requestAsyncId.call(this,e,r,a):(e.flush(this),0)},t}(x),ce=function(n){h(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t}(E),le=new ce(oe),Fe=le,fe=function(n){h(t,n);function t(e,r){var a=n.call(this,e,r)||this;return a.scheduler=e,a.work=r,a}return t.prototype.requestAsyncId=function(e,r,a){return a===void 0&&(a=0),a!==null&&a>0?n.prototype.requestAsyncId.call(this,e,r,a):(e.actions.push(this),e._scheduled||(e._scheduled=p.requestAnimationFrame(function(){return e.flush(void 0)})))},t.prototype.recycleAsyncId=function(e,r,a){var i;if(a===void 0&&(a=0),a!=null?a>0:this.delay>0)return n.prototype.recycleAsyncId.call(this,e,r,a);var s=e.actions;r!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==r&&(p.cancelAnimationFrame(r),e._scheduled=void 0)},t}(x),me=function(n){h(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.flush=function(e){this._active=!0;var r=this._scheduled;this._scheduled=void 0;var a=this.actions,i;e=e||a.shift();do if(i=e.execute(e.state,e.delay))break;while((e=a[0])&&e.id===r&&a.shift());if(this._active=!1,i){for(;(e=a[0])&&e.id===r&&a.shift();)e.unsubscribe();throw i}},t}(E),de=new me(fe),Ie=de,xe=function(n){h(t,n);function t(e,r){e===void 0&&(e=he),r===void 0&&(r=1/0);var a=n.call(this,e,function(){return a.frame})||this;return a.maxFrames=r,a.frame=0,a.index=-1,a}return t.prototype.flush=function(){for(var e=this,r=e.actions,a=e.maxFrames,i,s;(s=r[0])&&s.delay<=a&&(r.shift(),this.frame=s.delay,!(i=s.execute(s.state,s.delay))););if(i){for(;s=r.shift();)s.unsubscribe();throw i}},t.frameTimeFactor=10,t}(E),he=function(n){h(t,n);function t(e,r,a){a===void 0&&(a=e.index+=1);var i=n.call(this,e,r)||this;return i.scheduler=e,i.work=r,i.index=a,i.active=!0,i.index=e.index=a,i}return t.prototype.schedule=function(e,r){if(r===void 0&&(r=0),Number.isFinite(r)){if(!this.id)return n.prototype.schedule.call(this,e,r);this.active=!1;var a=new t(this.scheduler,this.work);return this.add(a),a.schedule(e,r)}else return C.EMPTY},t.prototype.requestAsyncId=function(e,r,a){a===void 0&&(a=0),this.delay=e.frame+a;var i=e.actions;return i.push(this),i.sort(t.sortActions),1},t.prototype.recycleAsyncId=function(e,r,a){},t.prototype._execute=function(e,r){if(this.active===!0)return n.prototype._execute.call(this,e,r)},t.sortActions=function(e,r){return e.delay===r.delay?e.index===r.index?0:e.index>r.index?1:-1:e.delay>r.delay?1:-1},t}(x);function Ee(n){return!!n&&(n instanceof d||k(n.lift)&&k(n.subscribe))}function qe(n,t){var e=typeof t=="object";return new Promise(function(r,a){var i=!1,s;n.subscribe({next:function(u){s=u,i=!0},error:a,complete:function(){i?r(s):e?r(t.defaultValue):a(new D)}})})}function I(n,t,e,r){if(e)if(L(e))r=e;else return function(){for(var a=[],i=0;ie in t?iT(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var xe=(t,e,r)=>(sT(t,typeof e!="symbol"?e+"":e,r),r),Zy=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)};var te=(t,e,r)=>(Zy(t,e,"read from private field"),r?r.call(t):e.get(t)),Fe=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},le=(t,e,r,n)=>(Zy(t,e,"write to private field"),n?n.call(t,r):e.set(t,r),r),a0=(t,e,r,n)=>({set _(s){le(t,e,s,r)},get _(){return te(t,e,n)}}),ct=(t,e,r)=>(Zy(t,e,"access private method"),r);function aT(t,e){for(var r=0;rn[s]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function r(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(s){if(s.ep)return;s.ep=!0;const i=r(s);fetch(s.href,i)}})();var ue=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function oT(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function fT(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var r=function n(){if(this instanceof n){var s=[null];s.push.apply(s,arguments);var i=Function.bind.apply(e,s);return new i}return e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach(function(n){var s=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(r,n,s.get?s:{enumerable:!0,get:function(){return t[n]}})}),r}var gg={},lT={get exports(){return gg},set exports(t){gg=t}};(function(t,e){var r=200,n="Expected a function",s="__lodash_hash_undefined__",i=1,o=2,f=1/0,u=9007199254740991,h="[object Arguments]",p="[object Array]",d="[object Boolean]",v="[object Date]",w="[object Error]",A="[object Function]",M="[object GeneratorFunction]",R="[object Map]",N="[object Number]",C="[object Object]",B="[object Promise]",O="[object RegExp]",D="[object Set]",q="[object String]",W="[object Symbol]",k="[object WeakMap]",I="[object ArrayBuffer]",H="[object DataView]",P="[object Float32Array]",T="[object Float64Array]",g="[object Int8Array]",a="[object Int16Array]",c="[object Int32Array]",m="[object Uint8Array]",b="[object Uint8ClampedArray]",x="[object Uint16Array]",_="[object Uint32Array]",S=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,y=/^\w*$/,l=/^\./,E=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Y=/[\\^$.*+?()[\]{}|]/g,L=/\\(\\)?/g,F=/^\[object .+?Constructor\]$/,V=/^(?:0|[1-9]\d*)$/,Z={};Z[P]=Z[T]=Z[g]=Z[a]=Z[c]=Z[m]=Z[b]=Z[x]=Z[_]=!0,Z[h]=Z[p]=Z[I]=Z[d]=Z[H]=Z[v]=Z[w]=Z[A]=Z[R]=Z[N]=Z[C]=Z[O]=Z[D]=Z[q]=Z[k]=!1;var ee=typeof ue=="object"&&ue&&ue.Object===Object&&ue,ce=typeof self=="object"&&self&&self.Object===Object&&self,U=ee||ce||Function("return this")(),j=e&&!e.nodeType&&e,se=j&&!0&&t&&!t.nodeType&&t,re=se&&se.exports===j,oe=re&&ee.process,Q=function(){try{return oe&&oe.binding("util")}catch{}}(),z=Q&&Q.isTypedArray;function G(K,J){var fe=K?K.length:0;return!!fe&&Me(K,J,0)>-1}function X(K,J,fe){for(var Ae=-1,Qe=K?K.length:0;++Ae-1}function Dr(K,J){var fe=this.__data__,Ae=jo(fe,K);return Ae<0?fe.push([K,J]):fe[Ae][1]=J,this}Gt.prototype.clear=Vt,Gt.prototype.delete=Lr,Gt.prototype.get=Zr,Gt.prototype.has=Ir,Gt.prototype.set=Dr;function ar(K){var J=-1,fe=K?K.length:0;for(this.clear();++J=r){var fr=J?null:Hf(K);if(fr)return qe(fr);yt=!1,Qe=me,Lt=new Mr}else Lt=J?[]:Et;e:for(;++AeEt))return!1;var fr=tt.get(K);if(fr&&tt.get(J))return fr==J;var tr=-1,Jt=!0,Sr=Qe&i?new Mr:void 0;for(tt.set(K,J),tt.set(J,K);++tr-1&&K%1==0&&K-1&&K%1==0&&K<=u}function vn(K){var J=typeof K;return!!K&&(J=="object"||J=="function")}function ji(K){return!!K&&typeof K=="object"}function Aa(K){return typeof K=="symbol"||ji(K)&&Nt.call(K)==W}var $l=z?we(z):e0;function vu(K){return K==null?"":uu(K)}function qy(K,J,fe){var Ae=K==null?void 0:zo(K,J);return Ae===void 0?fe:Ae}function Gy(K,J){return K!=null&&va(K,J,Vl)}function jf(K){return Fr(K)?Xd(K):t0(K)}function Vy(K){return K}function Wy(){}function $(K){return ba(K)?pe(wa(K)):Zl(K)}t.exports=he})(lT,gg);const cT=gg;var wt;(function(t){t.AlphaWallet="isAlphaWallet",t.ApexWallet="isApexWallet",t.AToken="isAToken",t.BifrostWallet="isBifrost",t.Binance="bbcSignTx",t.Bitpie="isBitpie",t.BlockWallet="isBlockWallet",t.Coinbase="isToshi",t.CoinbaseExtension="isCoinbaseWallet",t.Detected="request",t.Dcent="isDcentWallet",t.Exodus="isExodus",t.Frontier="isFrontier",t.Frame="isFrame",t.HuobiWallet="isHbWallet",t.HyperPay="isHyperPay",t.ImToken="isImToken",t.Liquality="isLiquality",t.MeetOne="wallet",t.MetaMask="isMetaMask",t.MyKey="isMYKEY",t.OwnBit="isOwnbit",t.Status="isStatus",t.Trust="isTrust",t.TokenPocket="isTokenPocket",t.TP="isTp",t.WalletIo="isWalletIO",t.XDEFI="isXDEFI",t.OneInch="isOneInchIOSWallet",t.Tokenary="isTokenary",t.Tally="isTally",t.BraveWallet="isBraveWallet",t.Rabby="isRabby",t.MathWallet="isMathWallet",t.GameStop="isGamestop",t.BitKeep="isBitKeep",t.Sequence="isSequence",t.Core="isAvalanche",t.Opera="isOpera",t.Bitski="isBitski",t.Enkrypt="isEnkrypt",t.Phantom="isPhantom",t.OKXWallet="isOkxWallet",t.Zeal="isZeal",t.Zerion="isZerion",t.Rainbow="isRainbow",t.SafePal="isSafePal",t.DeFiWallet="isDeficonnectProvider"})(wt||(wt={}));var Ft;(function(t){t.AlphaWallet="AlphaWallet",t.ApexWallet="Apex Wallet",t.AToken="AToken",t.BifrostWallet="Bifrost Wallet",t.Binance="Binance Smart Wallet",t.Bitpie="Bitpie",t.Bitski="Bitski",t.BlockWallet="BlockWallet",t.Brave="Brave Wallet",t.Coinbase="Coinbase Wallet",t.Dcent="D'CENT",t.Detected="Detected Wallet",t.Exodus="Exodus",t.Frame="Frame",t.Frontier="Frontier",t.HuobiWallet="Huobi Wallet",t.HyperPay="HyperPay",t.ImToken="imToken",t.Liquality="Liquality",t.MeetOne="MeetOne",t.MetaMask="MetaMask",t.MyKey="MyKey",t.Opera="Opera Wallet",t.OwnBit="OwnBit",t.Status="Status Wallet",t.Trust="Trust Wallet",t.TokenPocket="TokenPocket",t.TP="TP Wallet",t.WalletIo="Wallet.io",t.XDEFI="XDEFI Wallet",t.OneInch="1inch Wallet",t.Tokenary="Tokenary Wallet",t.Tally="Tally Ho Wallet",t.Rabby="Rabby",t.MathWallet="MathWallet",t.GameStop="GameStop Wallet",t.BitKeep="BitKeep",t.Sequence="Sequence",t.Core="Core",t.Enkrypt="Enkrypt",t.Zeal="Zeal",t.Phantom="Phantom",t.OKXWallet="OKX Wallet",t.Zerion="Zerion",t.Rainbow="Rainbow",t.SafePal="SafePal",t.DeFiWallet="DeFi Wallet"})(Ft||(Ft={}));var Tt;(function(t){t.Ethereum="ethereum",t.Binance="BinanceChain",t.Tally="tally",t.Web3="web3",t.Arbitrum="arbitrum",t.XFI="xfi",t.GameStop="gamestop",t.BitKeep="bitkeep",t.Avalanche="avalanche",t.Bitski="Bitski",t.Enkrypt="enkrypt",t.Zeal="zeal",t.Phantom="phantom",t.OKXWallet="okxwallet",t.Trust="trustwallet",t.Frontier="frontier",t.DeFiConnectProvider="deficonnectProvider"})(Tt||(Tt={}));const uT="modulepreload",hT=function(t){return"/"+t},G6={},vt=function(e,r,n){if(!r||r.length===0)return e();const s=document.getElementsByTagName("link");return Promise.all(r.map(i=>{if(i=hT(i),i in G6)return;G6[i]=!0;const o=i.endsWith(".css"),f=o?'[rel="stylesheet"]':"";if(!!n)for(let p=s.length-1;p>=0;p--){const d=s[p];if(d.href===i&&(!o||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${i}"]${f}`))return;const h=document.createElement("link");if(h.rel=o?"stylesheet":uT,o||(h.as="script",h.crossOrigin=""),h.href=i,document.head.appendChild(h),o)return new Promise((p,d)=>{h.addEventListener("load",p),h.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>e())};class V6 extends Error{constructor(e){super(e.message),this.message=e.message,this.code=e.code,this.data=e.data}}const Sn=(t,e)=>{let r;t.request?r=t.request.bind(t):t.sendAsync&&(r=dT(t));const n=async({method:s,params:i})=>{const o=s;if(e&&e[o]===null)throw new V6({code:4200,message:`The Provider does not support the requested method: ${s}`});if(e&&e[o])return e[o]({baseRequest:r,params:i});if(r)return r({method:s,params:i});throw new V6({code:4200,message:`The Provider does not support the requested method: ${s}`})};return t.request=n,t},dT=t=>({method:e,params:r})=>new Promise((n,s)=>{t.sendAsync({id:0,jsonrpc:"2.0",method:e,params:r},(i,{result:o})=>{i?s(JSON.parse(i)):n(o??null)})}),pT=` - @font-face { - font-family: Sofia Pro; - src: url(data:application/font-woff2;charset=utf-8;base64,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) format('woff2'), - url(data:application/font-woff;charset=utf-8;base64,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) format('woff'), - url('sofiapro-regular.ttf') format('truetype'); - font-weight: normal; - font-style: normal; - - } -`,Tie=` - @font-face { - font-family: 'Sofia Pro Light'; - src: url(data:application/font-woff2;charset=utf-8;base64,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) format('woff2'), - url(data:application/font-woff;charset=utf-8;base64,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) format('woff'), - url('sofiapro-light.ttf') format('truetype'); - font-weight: normal; - font-style: normal; - - } -`,kie=` - @font-face { - font-family: 'Sofia Pro Semibold'; - src: url(data:application/font-woff2;charset=utf-8;base64,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) format('woff2'), - url(data:application/font-woff;charset=utf-8;base64,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) format('woff'), - url('sofiapro-semibold.ttf') format('truetype'); - font-weight: normal; - font-style: normal; - - } -`;var mT=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Yy=Math.ceil,io=Math.floor,ss="[BigNumber Error] ",W6=ss+"Number primitive has more than 15 significant digits: ",xa=1e14,Kt=14,Qy=9007199254740991,Xy=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],zf=1e7,ii=1e9;function x9(t){var e,r,n,s=C.prototype={constructor:C,toString:null,valueOf:null},i=new C(1),o=20,f=4,u=-7,h=21,p=-1e7,d=1e7,v=!1,w=1,A=0,M={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},R="0123456789abcdefghijklmnopqrstuvwxyz",N=!0;function C(k,I){var H,P,T,g,a,c,m,b,x=this;if(!(x instanceof C))return new C(k,I);if(I==null){if(k&&k._isBigNumber===!0){x.s=k.s,!k.c||k.e>d?x.c=x.e=null:k.e=10;a/=10,g++);g>d?x.c=x.e=null:(x.e=g,x.c=[k]);return}b=String(k)}else{if(!mT.test(b=String(k)))return n(x,b,c);x.s=b.charCodeAt(0)==45?(b=b.slice(1),-1):1}(g=b.indexOf("."))>-1&&(b=b.replace(".","")),(a=b.search(/e/i))>0?(g<0&&(g=a),g+=+b.slice(a+1),b=b.substring(0,a)):g<0&&(g=b.length)}else{if(yn(I,2,R.length,"Base"),I==10&&N)return x=new C(k),q(x,o+x.e+1,f);if(b=String(k),c=typeof k=="number"){if(k*0!=0)return n(x,b,c,I);if(x.s=1/k<0?(b=b.slice(1),-1):1,C.DEBUG&&b.replace(/^0\.0*|\./,"").length>15)throw Error(W6+k)}else x.s=b.charCodeAt(0)===45?(b=b.slice(1),-1):1;for(H=R.slice(0,I),g=a=0,m=b.length;ag){g=m;continue}}else if(!T&&(b==b.toUpperCase()&&(b=b.toLowerCase())||b==b.toLowerCase()&&(b=b.toUpperCase()))){T=!0,a=-1,g=0;continue}return n(x,String(k),c,I)}c=!1,b=r(b,I,10,x.s),(g=b.indexOf("."))>-1?b=b.replace(".",""):g=b.length}for(a=0;b.charCodeAt(a)===48;a++);for(m=b.length;b.charCodeAt(--m)===48;);if(b=b.slice(a,++m)){if(m-=a,c&&C.DEBUG&&m>15&&(k>Qy||k!==io(k)))throw Error(W6+x.s*k);if((g=g-a-1)>d)x.c=x.e=null;else if(g=-ii&&T<=ii&&T===io(T)){if(P[0]===0){if(T===0&&P.length===1)return!0;break e}if(I=(T+1)%Kt,I<1&&(I+=Kt),String(P[0]).length==I){for(I=0;I=xa||H!==io(H))break e;if(H!==0)return!0}}}else if(P===null&&T===null&&(g===null||g===1||g===-1))return!0;throw Error(ss+"Invalid BigNumber: "+k)},C.maximum=C.max=function(){return O(arguments,s.lt)},C.minimum=C.min=function(){return O(arguments,s.gt)},C.random=function(){var k=9007199254740992,I=Math.random()*k&2097151?function(){return io(Math.random()*k)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(H){var P,T,g,a,c,m=0,b=[],x=new C(i);if(H==null?H=o:yn(H,0,ii),a=Yy(H/Kt),v)if(crypto.getRandomValues){for(P=crypto.getRandomValues(new Uint32Array(a*=2));m>>11),c>=9e15?(T=crypto.getRandomValues(new Uint32Array(2)),P[m]=T[0],P[m+1]=T[1]):(b.push(c%1e14),m+=2);m=a/2}else if(crypto.randomBytes){for(P=crypto.randomBytes(a*=7);m=9e15?crypto.randomBytes(7).copy(P,m):(b.push(c%1e14),m+=7);m=a/7}else throw v=!1,Error(ss+"crypto unavailable");if(!v)for(;m=10;c/=10,m++);mT-1&&(c[a+1]==null&&(c[a+1]=0),c[a+1]+=c[a]/T|0,c[a]%=T)}return c.reverse()}return function(H,P,T,g,a){var c,m,b,x,_,S,y,l,E=H.indexOf("."),Y=o,L=f;for(E>=0&&(x=A,A=0,H=H.replace(".",""),l=new C(P),S=l.pow(H.length-E),A=x,l.c=I(Go(Ps(S.c),S.e,"0"),10,T,k),l.e=l.c.length),y=I(H,P,T,a?(c=R,k):(c=k,R)),b=x=y.length;y[--x]==0;y.pop());if(!y[0])return c.charAt(0);if(E<0?--b:(S.c=y,S.e=b,S.s=g,S=e(S,l,Y,L,T),y=S.c,_=S.r,b=S.e),m=b+Y+1,E=y[m],x=T/2,_=_||m<0||y[m+1]!=null,_=L<4?(E!=null||_)&&(L==0||L==(S.s<0?3:2)):E>x||E==x&&(L==4||_||L==6&&y[m-1]&1||L==(S.s<0?8:7)),m<1||!y[0])H=_?Go(c.charAt(1),-Y,c.charAt(0)):c.charAt(0);else{if(y.length=m,_)for(--T;++y[--m]>T;)y[m]=0,m||(++b,y=[1].concat(y));for(x=y.length;!y[--x];);for(E=0,H="";E<=x;H+=c.charAt(y[E++]));H=Go(H,b,c.charAt(0))}return H}}(),e=function(){function k(P,T,g){var a,c,m,b,x=0,_=P.length,S=T%zf,y=T/zf|0;for(P=P.slice();_--;)m=P[_]%zf,b=P[_]/zf|0,a=y*m+b*S,c=S*m+a%zf*zf+x,x=(c/g|0)+(a/zf|0)+y*b,P[_]=c%g;return x&&(P=[x].concat(P)),P}function I(P,T,g,a){var c,m;if(g!=a)m=g>a?1:-1;else for(c=m=0;cT[c]?1:-1;break}return m}function H(P,T,g,a){for(var c=0;g--;)P[g]-=c,c=P[g]1;P.splice(0,1));}return function(P,T,g,a,c){var m,b,x,_,S,y,l,E,Y,L,F,V,Z,ee,ce,U,j,se=P.s==T.s?1:-1,re=P.c,oe=T.c;if(!re||!re[0]||!oe||!oe[0])return new C(!P.s||!T.s||(re?oe&&re[0]==oe[0]:!oe)?NaN:re&&re[0]==0||!oe?se*0:se/0);for(E=new C(se),Y=E.c=[],b=P.e-T.e,se=g+b+1,c||(c=xa,b=Hs(P.e/Kt)-Hs(T.e/Kt),se=se/Kt|0),x=0;oe[x]==(re[x]||0);x++);if(oe[x]>(re[x]||0)&&b--,se<0)Y.push(1),_=!0;else{for(ee=re.length,U=oe.length,x=0,se+=2,S=io(c/(oe[0]+1)),S>1&&(oe=k(oe,S,c),re=k(re,S,c),U=oe.length,ee=re.length),Z=U,L=re.slice(0,U),F=L.length;F=c/2&&ce++;do{if(S=0,m=I(oe,L,U,F),m<0){if(V=L[0],U!=F&&(V=V*c+(L[1]||0)),S=io(V/ce),S>1)for(S>=c&&(S=c-1),y=k(oe,S,c),l=y.length,F=L.length;I(y,L,l,F)==1;)S--,H(y,U=10;se/=10,x++);q(E,g+(E.e=x+b*Kt-1)+1,a,_)}else E.e=b,E.r=+_;return E}}();function B(k,I,H,P){var T,g,a,c,m;if(H==null?H=f:yn(H,0,8),!k.c)return k.toString();if(T=k.c[0],a=k.e,I==null)m=Ps(k.c),m=P==1||P==2&&(a<=u||a>=h)?K1(m,a):Go(m,a,"0");else if(k=q(new C(k),I,H),g=k.e,m=Ps(k.c),c=m.length,P==1||P==2&&(I<=g||g<=u)){for(;cc){if(--I>0)for(m+=".";I--;m+="0");}else if(I+=g-c,I>0)for(g+1==c&&(m+=".");I--;m+="0");return k.s<0&&T?"-"+m:m}function O(k,I){for(var H,P=1,T=new C(k[0]);P=10;T/=10,P++);return(H=P+H*Kt-1)>d?k.c=k.e=null:H=10;c/=10,T++);if(g=I-T,g<0)g+=Kt,a=I,m=_[b=0],x=m/S[T-a-1]%10|0;else if(b=Yy((g+1)/Kt),b>=_.length)if(P){for(;_.length<=b;_.push(0));m=x=0,T=1,g%=Kt,a=g-Kt+1}else break e;else{for(m=c=_[b],T=1;c>=10;c/=10,T++);g%=Kt,a=g-Kt+T,x=a<0?0:m/S[T-a-1]%10|0}if(P=P||I<0||_[b+1]!=null||(a<0?m:m%S[T-a-1]),P=H<4?(x||P)&&(H==0||H==(k.s<0?3:2)):x>5||x==5&&(H==4||P||H==6&&(g>0?a>0?m/S[T-a]:0:_[b-1])%10&1||H==(k.s<0?8:7)),I<1||!_[0])return _.length=0,P?(I-=k.e+1,_[0]=S[(Kt-I%Kt)%Kt],k.e=-I||0):_[0]=k.e=0,k;if(g==0?(_.length=b,c=1,b--):(_.length=b+1,c=S[Kt-g],_[b]=a>0?io(m/S[T-a]%S[a])*c:0),P)for(;;)if(b==0){for(g=1,a=_[0];a>=10;a/=10,g++);for(a=_[0]+=c,c=1;a>=10;a/=10,c++);g!=c&&(k.e++,_[0]==xa&&(_[0]=1));break}else{if(_[b]+=c,_[b]!=xa)break;_[b--]=0,c=1}for(g=_.length;_[--g]===0;_.pop());}k.e>d?k.c=k.e=null:k.e=h?K1(I,H):Go(I,H,"0"),k.s<0?"-"+I:I)}return s.absoluteValue=s.abs=function(){var k=new C(this);return k.s<0&&(k.s=1),k},s.comparedTo=function(k,I){return yu(this,new C(k,I))},s.decimalPlaces=s.dp=function(k,I){var H,P,T,g=this;if(k!=null)return yn(k,0,ii),I==null?I=f:yn(I,0,8),q(new C(g),k+g.e+1,I);if(!(H=g.c))return null;if(P=((T=H.length-1)-Hs(this.e/Kt))*Kt,T=H[T])for(;T%10==0;T/=10,P--);return P<0&&(P=0),P},s.dividedBy=s.div=function(k,I){return e(this,new C(k,I),o,f)},s.dividedToIntegerBy=s.idiv=function(k,I){return e(this,new C(k,I),0,1)},s.exponentiatedBy=s.pow=function(k,I){var H,P,T,g,a,c,m,b,x,_=this;if(k=new C(k),k.c&&!k.isInteger())throw Error(ss+"Exponent not an integer: "+W(k));if(I!=null&&(I=new C(I)),c=k.e>14,!_.c||!_.c[0]||_.c[0]==1&&!_.e&&_.c.length==1||!k.c||!k.c[0])return x=new C(Math.pow(+W(_),c?k.s*(2-z1(k)):+W(k))),I?x.mod(I):x;if(m=k.s<0,I){if(I.c?!I.c[0]:!I.s)return new C(NaN);P=!m&&_.isInteger()&&I.isInteger(),P&&(_=_.mod(I))}else{if(k.e>9&&(_.e>0||_.e<-1||(_.e==0?_.c[0]>1||c&&_.c[1]>=24e7:_.c[0]<8e13||c&&_.c[0]<=9999975e7)))return g=_.s<0&&z1(k)?-0:0,_.e>-1&&(g=1/g),new C(m?1/g:g);A&&(g=Yy(A/Kt+2))}for(c?(H=new C(.5),m&&(k.s=1),b=z1(k)):(T=Math.abs(+W(k)),b=T%2),x=new C(i);;){if(b){if(x=x.times(_),!x.c)break;g?x.c.length>g&&(x.c.length=g):P&&(x=x.mod(I))}if(T){if(T=io(T/2),T===0)break;b=T%2}else if(k=k.times(H),q(k,k.e+1,1),k.e>14)b=z1(k);else{if(T=+W(k),T===0)break;b=T%2}_=_.times(_),g?_.c&&_.c.length>g&&(_.c.length=g):P&&(_=_.mod(I))}return P?x:(m&&(x=i.div(x)),I?x.mod(I):g?q(x,A,f,a):x)},s.integerValue=function(k){var I=new C(this);return k==null?k=f:yn(k,0,8),q(I,I.e+1,k)},s.isEqualTo=s.eq=function(k,I){return yu(this,new C(k,I))===0},s.isFinite=function(){return!!this.c},s.isGreaterThan=s.gt=function(k,I){return yu(this,new C(k,I))>0},s.isGreaterThanOrEqualTo=s.gte=function(k,I){return(I=yu(this,new C(k,I)))===1||I===0},s.isInteger=function(){return!!this.c&&Hs(this.e/Kt)>this.c.length-2},s.isLessThan=s.lt=function(k,I){return yu(this,new C(k,I))<0},s.isLessThanOrEqualTo=s.lte=function(k,I){return(I=yu(this,new C(k,I)))===-1||I===0},s.isNaN=function(){return!this.s},s.isNegative=function(){return this.s<0},s.isPositive=function(){return this.s>0},s.isZero=function(){return!!this.c&&this.c[0]==0},s.minus=function(k,I){var H,P,T,g,a=this,c=a.s;if(k=new C(k,I),I=k.s,!c||!I)return new C(NaN);if(c!=I)return k.s=-I,a.plus(k);var m=a.e/Kt,b=k.e/Kt,x=a.c,_=k.c;if(!m||!b){if(!x||!_)return x?(k.s=-I,k):new C(_?a:NaN);if(!x[0]||!_[0])return _[0]?(k.s=-I,k):new C(x[0]?a:f==3?-0:0)}if(m=Hs(m),b=Hs(b),x=x.slice(),c=m-b){for((g=c<0)?(c=-c,T=x):(b=m,T=_),T.reverse(),I=c;I--;T.push(0));T.reverse()}else for(P=(g=(c=x.length)<(I=_.length))?c:I,c=I=0;I0)for(;I--;x[H++]=0);for(I=xa-1;P>c;){if(x[--P]<_[P]){for(H=P;H&&!x[--H];x[H]=I);--x[H],x[P]+=xa}x[P]-=_[P]}for(;x[0]==0;x.splice(0,1),--b);return x[0]?D(k,x,b):(k.s=f==3?-1:1,k.c=[k.e=0],k)},s.modulo=s.mod=function(k,I){var H,P,T=this;return k=new C(k,I),!T.c||!k.s||k.c&&!k.c[0]?new C(NaN):!k.c||T.c&&!T.c[0]?new C(T):(w==9?(P=k.s,k.s=1,H=e(T,k,0,3),k.s=P,H.s*=P):H=e(T,k,0,w),k=T.minus(H.times(k)),!k.c[0]&&w==1&&(k.s=T.s),k)},s.multipliedBy=s.times=function(k,I){var H,P,T,g,a,c,m,b,x,_,S,y,l,E,Y,L=this,F=L.c,V=(k=new C(k,I)).c;if(!F||!V||!F[0]||!V[0])return!L.s||!k.s||F&&!F[0]&&!V||V&&!V[0]&&!F?k.c=k.e=k.s=null:(k.s*=L.s,!F||!V?k.c=k.e=null:(k.c=[0],k.e=0)),k;for(P=Hs(L.e/Kt)+Hs(k.e/Kt),k.s*=L.s,m=F.length,_=V.length,m<_&&(l=F,F=V,V=l,T=m,m=_,_=T),T=m+_,l=[];T--;l.push(0));for(E=xa,Y=zf,T=_;--T>=0;){for(H=0,S=V[T]%Y,y=V[T]/Y|0,a=m,g=T+a;g>T;)b=F[--a]%Y,x=F[a]/Y|0,c=y*b+x*S,b=S*b+c%Y*Y+l[g]+H,H=(b/E|0)+(c/Y|0)+y*x,l[g--]=b%E;l[g]=H}return H?++P:l.splice(0,1),D(k,l,P)},s.negated=function(){var k=new C(this);return k.s=-k.s||null,k},s.plus=function(k,I){var H,P=this,T=P.s;if(k=new C(k,I),I=k.s,!T||!I)return new C(NaN);if(T!=I)return k.s=-I,P.minus(k);var g=P.e/Kt,a=k.e/Kt,c=P.c,m=k.c;if(!g||!a){if(!c||!m)return new C(T/0);if(!c[0]||!m[0])return m[0]?k:new C(c[0]?P:T*0)}if(g=Hs(g),a=Hs(a),c=c.slice(),T=g-a){for(T>0?(a=g,H=m):(T=-T,H=c),H.reverse();T--;H.push(0));H.reverse()}for(T=c.length,I=m.length,T-I<0&&(H=m,m=c,c=H,I=T),T=0;I;)T=(c[--I]=c[I]+m[I]+T)/xa|0,c[I]=xa===c[I]?0:c[I]%xa;return T&&(c=[T].concat(c),++a),D(k,c,a)},s.precision=s.sd=function(k,I){var H,P,T,g=this;if(k!=null&&k!==!!k)return yn(k,1,ii),I==null?I=f:yn(I,0,8),q(new C(g),k,I);if(!(H=g.c))return null;if(T=H.length-1,P=T*Kt+1,T=H[T]){for(;T%10==0;T/=10,P--);for(T=H[0];T>=10;T/=10,P++);}return k&&g.e+1>P&&(P=g.e+1),P},s.shiftedBy=function(k){return yn(k,-Qy,Qy),this.times("1e"+k)},s.squareRoot=s.sqrt=function(){var k,I,H,P,T,g=this,a=g.c,c=g.s,m=g.e,b=o+4,x=new C("0.5");if(c!==1||!a||!a[0])return new C(!c||c<0&&(!a||a[0])?NaN:a?g:1/0);if(c=Math.sqrt(+W(g)),c==0||c==1/0?(I=Ps(a),(I.length+m)%2==0&&(I+="0"),c=Math.sqrt(+I),m=Hs((m+1)/2)-(m<0||m%2),c==1/0?I="5e"+m:(I=c.toExponential(),I=I.slice(0,I.indexOf("e")+1)+m),H=new C(I)):H=new C(c+""),H.c[0]){for(m=H.e,c=m+b,c<3&&(c=0);;)if(T=H,H=x.times(T.plus(e(g,T,b,1))),Ps(T.c).slice(0,c)===(I=Ps(H.c)).slice(0,c))if(H.e0&&l>0){for(g=l%c||c,x=y.substr(0,g);g0&&(x+=b+y.slice(g)),S&&(x="-"+x)}P=_?x+(H.decimalSeparator||"")+((m=+H.fractionGroupSize)?_.replace(new RegExp("\\d{"+m+"}\\B","g"),"$&"+(H.fractionGroupSeparator||"")):_):x}return(H.prefix||"")+P+(H.suffix||"")},s.toFraction=function(k){var I,H,P,T,g,a,c,m,b,x,_,S,y=this,l=y.c;if(k!=null&&(c=new C(k),!c.isInteger()&&(c.c||c.s!==1)||c.lt(i)))throw Error(ss+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+W(c));if(!l)return new C(y);for(I=new C(i),b=H=new C(i),P=m=new C(i),S=Ps(l),g=I.e=S.length-y.e-1,I.c[0]=Xy[(a=g%Kt)<0?Kt+a:a],k=!k||c.comparedTo(I)>0?g>0?I:b:c,a=d,d=1/0,c=new C(S),m.c[0]=0;x=e(c,I,0,1),T=H.plus(x.times(P)),T.comparedTo(k)!=1;)H=P,P=T,b=m.plus(x.times(T=b)),m=T,I=c.minus(x.times(T=I)),c=T;return T=e(k.minus(H),P,0,1),m=m.plus(T.times(b)),H=H.plus(T.times(P)),m.s=b.s=y.s,g=g*2,_=e(b,P,g,f).minus(y).abs().comparedTo(e(m,H,g,f).minus(y).abs())<1?[b,P]:[m,H],d=a,_},s.toNumber=function(){return+W(this)},s.toPrecision=function(k,I){return k!=null&&yn(k,1,ii),B(this,k,I,2)},s.toString=function(k){var I,H=this,P=H.s,T=H.e;return T===null?P?(I="Infinity",P<0&&(I="-"+I)):I="NaN":(k==null?I=T<=u||T>=h?K1(Ps(H.c),T):Go(Ps(H.c),T,"0"):k===10&&N?(H=q(new C(H),o+T+1,f),I=Go(Ps(H.c),H.e,"0")):(yn(k,2,R.length,"Base"),I=r(Go(Ps(H.c),T,"0"),10,k,P,!0)),P<0&&H.c[0]&&(I="-"+I)),I},s.valueOf=s.toJSON=function(){return W(this)},s._isBigNumber=!0,s[Symbol.toStringTag]="BigNumber",s[Symbol.for("nodejs.util.inspect.custom")]=s.valueOf,t!=null&&C.set(t),C}function Hs(t){var e=t|0;return t>0||t===e?e:e-1}function Ps(t){for(var e,r,n=1,s=t.length,i=t[0]+"";nh^r?1:-1;for(f=(u=s.length)<(h=i.length)?u:h,o=0;oi[o]^r?1:-1;return u==h?0:u>h^r?1:-1}function yn(t,e,r,n){if(tr||t!==io(t))throw Error(ss+(n||"Argument")+(typeof t=="number"?tr?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function z1(t){var e=t.c.length-1;return Hs(t.e/Kt)==e&&t.c[e]%2!=0}function K1(t,e){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(e<0?"e":"e+")+e}function Go(t,e,r){var n,s;if(e<0){for(s=r+".";++e;s+=r);t=s+t}else if(n=t.length,++e>n){for(s=r,e-=n;--e;s+=r);t+=s}else e{return r={7629:(s,i,o)=>{const f=o(375),u=o(8571),h=o(9474),p=o(1687),d=o(8652),v=o(8160),w=o(3292),A=o(6354),M=o(8901),R=o(9708),N=o(6914),C=o(2294),B=o(6133),O=o(1152),D=o(8863),q=o(2036),W={Base:class{constructor(k){this.type=k,this.$_root=null,this._definition={},this._reset()}_reset(){this._ids=new C.Ids,this._preferences=null,this._refs=new B.Manager,this._cache=null,this._valids=null,this._invalids=null,this._flags={},this._rules=[],this._singleRules=new Map,this.$_terms={},this.$_temp={ruleset:null,whens:{}}}describe(){return f(typeof R.describe=="function","Manifest functionality disabled"),R.describe(this)}allow(){for(var k=arguments.length,I=new Array(k),H=0;H1&&arguments[1]!==void 0?arguments[1]:{};return f(k!==void 0,"Missing example"),v.assertOptions(I,["override"]),this._inner("examples",k,{single:!0,override:I.override})}external(k,I){return typeof k=="object"&&(f(!I,"Cannot combine options with description"),I=k.description,k=k.method),f(typeof k=="function","Method must be a function"),f(I===void 0||I&&typeof I=="string","Description must be a non-empty string"),this._inner("externals",{method:k,description:I},{single:!0})}failover(k,I){return this._default("failover",k,I)}forbidden(){return this.presence("forbidden")}id(k){return k?(f(typeof k=="string","id must be a non-empty string"),f(/^[^\.]+$/.test(k),"id cannot contain period character"),this.$_setFlag("id",k)):this.$_setFlag("id",void 0)}invalid(){for(var k=arguments.length,I=new Array(k),H=0;H0&&arguments[0]!==void 0)||arguments[0];return f(typeof k=="boolean","Invalid mode:",k),this.$_setFlag("only",k)}optional(){return this.presence("optional")}prefs(k){f(k,"Missing preferences"),f(k.context===void 0,"Cannot override context"),f(k.externals===void 0,"Cannot override externals"),f(k.warnings===void 0,"Cannot override warnings"),f(k.debug===void 0,"Cannot override debug"),v.checkPreferences(k);const I=this.clone();return I._preferences=v.preferences(I._preferences,k),I}presence(k){return f(["optional","required","forbidden"].includes(k),"Unknown presence mode",k),this.$_setFlag("presence",k)}raw(){let k=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("result",k?"raw":void 0)}result(k){return f(["raw","strip"].includes(k),"Unknown result mode",k),this.$_setFlag("result",k)}required(){return this.presence("required")}strict(k){const I=this.clone(),H=k!==void 0&&!k;return I._preferences=v.preferences(I._preferences,{convert:H}),I}strip(){let k=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("result",k?"strip":void 0)}tag(){for(var k=arguments.length,I=new Array(k),H=0;HP.keep||P.name!==H),I._singleRules.delete(H));for(const H of k._rules)k._definition.rules[H.method].multi||I._singleRules.set(H.name,H),I._rules.push(H);if(I._flags.empty&&k._flags.empty){I._flags.empty=I._flags.empty.concat(k._flags.empty);const H=Object.assign({},k._flags);delete H.empty,p(I._flags,H)}else if(k._flags.empty){I._flags.empty=k._flags.empty;const H=Object.assign({},k._flags);delete H.empty,p(I._flags,H)}else p(I._flags,k._flags);for(const H in k.$_terms){const P=k.$_terms[H];P?I.$_terms[H]?I.$_terms[H]=I.$_terms[H].concat(P):I.$_terms[H]=P.slice():I.$_terms[H]||(I.$_terms[H]=P)}return this.$_root._tracer&&this.$_root._tracer._combine(I,[this,k]),I.$_mutateRebuild()}extend(k){return f(!k.base,"Cannot extend type with another base"),M.type(this,k)}extract(k){return k=Array.isArray(k)?k:k.split("."),this._ids.reach(k)}fork(k,I){f(!this._inRuleset(),"Cannot fork inside a ruleset");let H=this;for(let P of[].concat(k))P=Array.isArray(P)?P:P.split("."),H=H._ids.fork(P,I,H);return H.$_temp.ruleset=!1,H}rule(k){const I=this._definition;v.assertOptions(k,Object.keys(I.modifiers)),f(this.$_temp.ruleset!==!1,"Cannot apply rules to empty ruleset or the last rule added does not support rule properties");const H=this.$_temp.ruleset===null?this._rules.length-1:this.$_temp.ruleset;f(H>=0&&HH.tailor(k),ref:!1}),I.$_temp.ruleset=!1,I.$_mutateRebuild()}tracer(){return O.location?O.location(this):this}validate(k,I){return D.entry(k,this,I)}validateAsync(k,I){return D.entryAsync(k,this,I)}$_addRule(k){typeof k=="string"&&(k={name:k}),f(k&&typeof k=="object","Invalid options"),f(k.name&&typeof k.name=="string","Invalid rule name");for(const g in k)f(g[0]!=="_","Cannot set private rule properties");const I=Object.assign({},k);I._resolve=[],I.method=I.method||I.name;const H=this._definition.rules[I.method],P=I.args;f(H,"Unknown rule",I.method);const T=this.clone();if(P){f(Object.keys(P).length===1||Object.keys(P).length===this._definition.rules[I.name].args.length,"Invalid rule definition for",this.type,I.name);for(const g in P){let a=P[g];if(H.argsByName){const c=H.argsByName.get(g);if(c.ref&&v.isResolvable(a))I._resolve.push(g),T.$_mutateRegister(a);else if(c.normalize&&(a=c.normalize(a),P[g]=a),c.assert){const m=v.validateArg(a,g,c);f(!m,m,"or reference")}}a!==void 0?P[g]=a:delete P[g]}}return H.multi||(T._ruleRemove(I.name,{clone:!1}),T._singleRules.set(I.name,I)),T.$_temp.ruleset===!1&&(T.$_temp.ruleset=null),H.priority?T._rules.unshift(I):T._rules.push(I),T}$_compile(k,I){return w.schema(this.$_root,k,I)}$_createError(k,I,H,P,T){let g=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{};const a=g.flags!==!1?this._flags:{},c=g.messages?N.merge(this._definition.messages,g.messages):this._definition.messages;return new A.Report(k,I,H,a,c,P,T)}$_getFlag(k){return this._flags[k]}$_getRule(k){return this._singleRules.get(k)}$_mapLabels(k){return k=Array.isArray(k)?k:k.split("."),this._ids.labels(k)}$_match(k,I,H,P){(H=Object.assign({},H)).abortEarly=!0,H._externals=!1,I.snapshot();const T=!D.validate(k,this,I,H,P).errors;return I.restore(),T}$_modify(k){return v.assertOptions(k,["each","once","ref","schema"]),C.schema(this,k)||this}$_mutateRebuild(){return f(!this._inRuleset(),"Cannot add this rule inside a ruleset"),this._refs.reset(),this._ids.reset(),this.$_modify({each:(k,I)=>{let{source:H,name:P,path:T,key:g}=I;const a=this._definition[H][P]&&this._definition[H][P].register;a!==!1&&this.$_mutateRegister(k,{family:a,key:g})}}),this._definition.rebuild&&this._definition.rebuild(this),this.$_temp.ruleset=!1,this}$_mutateRegister(k){let{family:I,key:H}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._refs.register(k,I),this._ids.register(k,{key:H})}$_property(k){return this._definition.properties[k]}$_reach(k){return this._ids.reach(k)}$_rootReferences(){return this._refs.roots()}$_setFlag(k,I){let H=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};f(k[0]==="_"||!this._inRuleset(),"Cannot set flag inside a ruleset");const P=this._definition.flags[k]||{};if(h(I,P.default)&&(I=void 0),h(I,this._flags[k]))return this;const T=H.clone!==!1?this.clone():this;return I!==void 0?(T._flags[k]=I,T.$_mutateRegister(I)):delete T._flags[k],k[0]!=="_"&&(T.$_temp.ruleset=!1),T}$_parent(k){for(var I=arguments.length,H=new Array(I>1?I-1:0),P=1;P2&&arguments[2]!==void 0?arguments[2]:{};return v.assertOptions(H,"literal"),f(I!==void 0,"Missing",k,"value"),f(typeof I=="function"||!H.literal,"Only function value supports literal option"),typeof I=="function"&&H.literal&&(I={[v.symbols.literal]:!0,literal:I}),this.$_setFlag(k,I)}_generate(k,I,H){if(!this.$_terms.whens)return{schema:this};const P=[],T=[];for(let c=0;c_)break}const g=T.join(", ");if(I.mainstay.tracer.debug(I,"rule","when",g),!g)return{schema:this};if(!I.mainstay.tracer.active&&this.$_temp.whens[g])return{schema:this.$_temp.whens[g],id:g};let a=this;this._definition.generate&&(a=this._definition.generate(this,k,I,H));for(const c of P)a=a.concat(c);return this.$_root._tracer&&this.$_root._tracer._combine(a,[this,...P]),this.$_temp.whens[g]=a,{schema:a,id:g}}_inner(k,I){let H=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};f(!this._inRuleset(),`Cannot set ${k} inside a ruleset`);const P=this.clone();return P.$_terms[k]&&!H.override||(P.$_terms[k]=[]),H.single?P.$_terms[k].push(I):P.$_terms[k].push(...I),P.$_temp.ruleset=!1,P}_inRuleset(){return this.$_temp.ruleset!==null&&this.$_temp.ruleset!==!1}_ruleRemove(k){let I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this._singleRules.has(k))return this;const H=I.clone!==!1?this.clone():this;H._singleRules.delete(k);const P=[];for(let T=0;T{const f=o(375),u=o(8571),h=o(8160),p={max:1e3,supported:new Set(["undefined","boolean","number","string"])};i.provider={provision:d=>new p.Cache(d)},p.Cache=class{constructor(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};h.assertOptions(d,["max"]),f(d.max===void 0||d.max&&d.max>0&&isFinite(d.max),"Invalid max cache size"),this._max=d.max||p.max,this._map=new Map,this._list=new p.List}get length(){return this._map.size}set(d,v){if(d!==null&&!p.supported.has(typeof d))return;let w=this._map.get(d);if(w)return w.value=v,void this._list.first(w);w=this._list.unshift({key:d,value:v}),this._map.set(d,w),this._compact()}get(d){const v=this._map.get(d);if(v)return this._list.first(v),u(v.value)}_compact(){if(this._map.size>this._max){const d=this._list.pop();this._map.delete(d.key)}}},p.List=class{constructor(){this.tail=null,this.head=null}unshift(d){return d.next=null,d.prev=this.head,this.head&&(this.head.next=d),this.head=d,this.tail||(this.tail=d),d}first(d){d!==this.head&&(this._remove(d),this.unshift(d))}pop(){return this._remove(this.tail)}_remove(d){const{next:v,prev:w}=d;return v.prev=w,w&&(w.next=v),d===this.tail&&(this.tail=v),d.prev=null,d.next=null,d}}},8160:(s,i,o)=>{const f=o(375),u=o(7916),h=o(5934);let p,d;const v={isoDate:/^(?:[-+]\d{2})?(?:\d{4}(?!\d{2}\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\1(?:[12]\d|0[1-9]|3[01]))?|W(?:[0-4]\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[1-6])))(?![T]$|[T][\d]+Z$)(?:[T\s](?:(?:(?:[01]\d|2[0-3])(?:(:?)[0-5]\d)?|24\:?00)(?:[.,]\d+(?!:))?)(?:\2[0-5]\d(?:[.,]\d+)?)?(?:[Z]|(?:[+-])(?:[01]\d|2[0-3])(?::?[0-5]\d)?)?)?)?$/};i.version=h.version,i.defaults={abortEarly:!0,allowUnknown:!1,artifacts:!1,cache:!0,context:null,convert:!0,dateFormat:"iso",errors:{escapeHtml:!1,label:"path",language:null,render:!0,stack:!1,wrap:{label:'"',array:"[]"}},externals:!0,messages:{},nonEnumerables:!1,noDefaults:!1,presence:"optional",skipFunctions:!1,stripUnknown:!1,warnings:!1},i.symbols={any:Symbol.for("@hapi/joi/schema"),arraySingle:Symbol("arraySingle"),deepDefault:Symbol("deepDefault"),errors:Symbol("errors"),literal:Symbol("literal"),override:Symbol("override"),parent:Symbol("parent"),prefs:Symbol("prefs"),ref:Symbol("ref"),template:Symbol("template"),values:Symbol("values")},i.assertOptions=function(w,A){let M=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Options";f(w&&typeof w=="object"&&!Array.isArray(w),"Options must be of type object");const R=Object.keys(w).filter(N=>!A.includes(N));f(R.length===0,`${M} contain unknown keys: ${R}`)},i.checkPreferences=function(w){d=d||o(3378);const A=d.preferences.validate(w);if(A.error)throw new u([A.error.details[0].message])},i.compare=function(w,A,M){switch(M){case"=":return w===A;case">":return w>A;case"<":return w=":return w>=A;case"<=":return w<=A}},i.default=function(w,A){return w===void 0?A:w},i.isIsoDate=function(w){return v.isoDate.test(w)},i.isNumber=function(w){return typeof w=="number"&&!isNaN(w)},i.isResolvable=function(w){return!!w&&(w[i.symbols.ref]||w[i.symbols.template])},i.isSchema=function(w){let A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const M=w&&w[i.symbols.any];return!!M&&(f(A.legacy||M.version===i.version,"Cannot mix different versions of joi schemas"),!0)},i.isValues=function(w){return w[i.symbols.values]},i.limit=function(w){return Number.isSafeInteger(w)&&w>=0},i.preferences=function(w,A){p=p||o(6914),w=w||{},A=A||{};const M=Object.assign({},w,A);return A.errors&&w.errors&&(M.errors=Object.assign({},w.errors,A.errors),M.errors.wrap=Object.assign({},w.errors.wrap,A.errors.wrap)),A.messages&&(M.messages=p.compile(A.messages,w.messages)),delete M[i.symbols.prefs],M},i.tryWithPath=function(w,A){let M=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};try{return w()}catch(R){throw R.path!==void 0?R.path=A+"."+R.path:R.path=A,M.append&&(R.message=`${R.message} (${R.path})`),R}},i.validateArg=function(w,A,M){let{assert:R,message:N}=M;if(i.isSchema(R)){const C=R.validate(w);return C.error?C.error.message:void 0}if(!R(w))return A?`${A} ${N}`:N},i.verifyFlat=function(w,A){for(const M of w)f(!Array.isArray(M),"Method no longer accepts array arguments:",A)}},3292:(s,i,o)=>{const f=o(375),u=o(8160),h=o(6133),p={};i.schema=function(d,v){let w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};u.assertOptions(w,["appendPath","override"]);try{return p.schema(d,v,w)}catch(A){throw w.appendPath&&A.path!==void 0&&(A.message=`${A.message} (${A.path})`),A}},p.schema=function(d,v,w){f(v!==void 0,"Invalid undefined schema"),Array.isArray(v)&&(f(v.length,"Invalid empty array schema"),v.length===1&&(v=v[0]));const A=function(M){for(var R=arguments.length,N=new Array(R>1?R-1:0),C=1;C2&&arguments[2]!==void 0?arguments[2]:{};u.assertOptions(w,["legacy"]);const A=v&&v[u.symbols.any];if(A)return f(w.legacy||A.version===u.version,"Cannot mix different versions of joi schemas:",A.version,u.version),v;if(typeof v!="object"||!w.legacy)return i.schema(d,v,{appendPath:!0});const M=p.walk(v);return M?M.compile(M.root,v):i.schema(d,v,{appendPath:!0})},p.walk=function(d){if(typeof d!="object")return null;if(Array.isArray(d)){for(const w of d){const A=p.walk(w);if(A)return A}return null}const v=d[u.symbols.any];if(v)return{root:d[v.root],compile:v.compile};f(Object.getPrototypeOf(d)===Object.getPrototypeOf({}),"Schema can only contain plain objects");for(const w in d){const A=p.walk(d[w]);if(A)return A}return null},p.simple=function(d){return d===null||["boolean","string","number"].includes(typeof d)},i.when=function(d,v,w){if(w===void 0&&(f(v&&typeof v=="object","Missing options"),w=v,v=h.create(".")),Array.isArray(w)&&(w={switch:w}),u.assertOptions(w,["is","not","then","otherwise","switch","break"]),u.isSchema(v))return f(w.is===void 0,'"is" can not be used with a schema condition'),f(w.not===void 0,'"not" can not be used with a schema condition'),f(w.switch===void 0,'"switch" can not be used with a schema condition'),p.condition(d,{is:v,then:w.then,otherwise:w.otherwise,break:w.break});if(f(h.isRef(v)||typeof v=="string","Invalid condition:",v),f(w.not===void 0||w.is===void 0,'Cannot combine "is" with "not"'),w.switch===void 0){let M=w;w.not!==void 0&&(M={is:w.not,then:w.otherwise,otherwise:w.then,break:w.break});let R=M.is!==void 0?d.$_compile(M.is):d.$_root.invalid(null,!1,0,"").required();return f(M.then!==void 0||M.otherwise!==void 0,'options must have at least one of "then", "otherwise", or "switch"'),f(M.break===void 0||M.then===void 0||M.otherwise===void 0,"Cannot specify then, otherwise, and break all together"),w.is===void 0||h.isRef(w.is)||u.isSchema(w.is)||(R=R.required()),p.condition(d,{ref:i.ref(v),is:R,then:M.then,otherwise:M.otherwise,break:M.break})}f(Array.isArray(w.switch),'"switch" must be an array'),f(w.is===void 0,'Cannot combine "switch" with "is"'),f(w.not===void 0,'Cannot combine "switch" with "not"'),f(w.then===void 0,'Cannot combine "switch" with "then"');const A={ref:i.ref(v),switch:[],break:w.break};for(let M=0;M{const f=o(5688),u=o(8160),h=o(3328);i.Report=class{constructor(p,d,v,w,A,M,R){if(this.code=p,this.flags=w,this.messages=A,this.path=M.path,this.prefs=R,this.state=M,this.value=d,this.message=null,this.template=null,this.local=v||{},this.local.label=i.label(this.flags,this.state,this.prefs,this.messages),this.value===void 0||this.local.hasOwnProperty("value")||(this.local.value=this.value),this.path.length){const N=this.path[this.path.length-1];typeof N!="object"&&(this.local.key=N)}}_setTemplate(p){if(this.template=p,!this.flags.label&&this.path.length===0){const d=this._template(this.template,"root");d&&(this.local.label=d)}}toString(){if(this.message)return this.message;const p=this.code;if(!this.prefs.errors.render)return this.code;const d=this._template(this.template)||this._template(this.prefs.messages)||this._template(this.messages);return d===void 0?`Error code "${p}" is not defined, your custom type is missing the correct messages definition`:(this.message=d.render(this.value,this.state,this.prefs,this.local,{errors:this.prefs.errors,messages:[this.prefs.messages,this.messages]}),this.prefs.errors.label||(this.message=this.message.replace(/^"" /,"").trim()),this.message)}_template(p,d){return i.template(this.value,p,d||this.code,this.state,this.prefs)}},i.path=function(p){let d="";for(const v of p)typeof v!="object"&&(typeof v=="string"?(d&&(d+="."),d+=v):d+=`[${v}]`);return d},i.template=function(p,d,v,w,A){if(!d)return;if(h.isTemplate(d))return v!=="root"?d:null;let M=A.errors.language;if(u.isResolvable(M)&&(M=M.resolve(p,w,A)),M&&d[M]){if(d[M][v]!==void 0)return d[M][v];if(d[M]["*"]!==void 0)return d[M]["*"]}return d[v]?d[v]:d["*"]},i.label=function(p,d,v,w){if(p.label)return p.label;if(!v.errors.label)return"";let A=d.path;return v.errors.label==="key"&&d.path.length>1&&(A=d.path.slice(-1)),i.path(A)||i.template(null,v.messages,"root",d,v)||w&&i.template(null,w,"root",d,v)||"value"},i.process=function(p,d,v){if(!p)return null;const{override:w,message:A,details:M}=i.details(p);if(w)return w;if(v.errors.stack)return new i.ValidationError(A,M,d);const R=Error.stackTraceLimit;Error.stackTraceLimit=0;const N=new i.ValidationError(A,M,d);return Error.stackTraceLimit=R,N},i.details=function(p){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},v=[];const w=[];for(const A of p){if(A instanceof Error){if(d.override!==!1)return{override:A};const R=A.toString();v.push(R),w.push({message:R,type:"override",context:{error:A}});continue}const M=A.toString();v.push(M),w.push({message:M,path:A.path.filter(R=>typeof R!="object"),type:A.code,context:A.local})}return v.length>1&&(v=[...new Set(v)]),{message:v.join(". "),details:w}},i.ValidationError=class extends Error{constructor(p,d,v){super(p),this._original=v,this.details=d}static isError(p){return p instanceof i.ValidationError}},i.ValidationError.prototype.isJoi=!0,i.ValidationError.prototype.name="ValidationError",i.ValidationError.prototype.annotate=f.error},8901:(s,i,o)=>{const f=o(375),u=o(8571),h=o(8160),p=o(6914),d={};i.type=function(v,w){const A=Object.getPrototypeOf(v),M=u(A),R=v._assign(Object.create(M)),N=Object.assign({},w);delete N.base,M._definition=N;const C=A._definition||{};N.messages=p.merge(C.messages,N.messages),N.properties=Object.assign({},C.properties,N.properties),R.type=N.type,N.flags=Object.assign({},C.flags,N.flags);const B=Object.assign({},C.terms);if(N.terms)for(const W in N.terms){const k=N.terms[W];f(R.$_terms[W]===void 0,"Invalid term override for",N.type,W),R.$_terms[W]=k.init,B[W]=k}N.terms=B,N.args||(N.args=C.args),N.prepare=d.prepare(N.prepare,C.prepare),N.coerce&&(typeof N.coerce=="function"&&(N.coerce={method:N.coerce}),N.coerce.from&&!Array.isArray(N.coerce.from)&&(N.coerce={method:N.coerce.method,from:[].concat(N.coerce.from)})),N.coerce=d.coerce(N.coerce,C.coerce),N.validate=d.validate(N.validate,C.validate);const O=Object.assign({},C.rules);if(N.rules)for(const W in N.rules){const k=N.rules[W];f(typeof k=="object","Invalid rule definition for",N.type,W);let I=k.method;if(I===void 0&&(I=function(){return this.$_addRule(W)}),I&&(f(!M[W],"Rule conflict in",N.type,W),M[W]=I),f(!O[W],"Rule conflict in",N.type,W),O[W]=k,k.alias){const H=[].concat(k.alias);for(const P of H)M[P]=k.method}k.args&&(k.argsByName=new Map,k.args=k.args.map(H=>(typeof H=="string"&&(H={name:H}),f(!k.argsByName.has(H.name),"Duplicated argument name",H.name),h.isSchema(H.assert)&&(H.assert=H.assert.strict().label(H.name)),k.argsByName.set(H.name,H),H)))}N.rules=O;const D=Object.assign({},C.modifiers);if(N.modifiers)for(const W in N.modifiers){f(!M[W],"Rule conflict in",N.type,W);const k=N.modifiers[W];f(typeof k=="function","Invalid modifier definition for",N.type,W);const I=function(H){return this.rule({[W]:H})};M[W]=I,D[W]=k}if(N.modifiers=D,N.overrides){M._super=A,R.$_super={};for(const W in N.overrides)f(A[W],"Cannot override missing",W),N.overrides[W][h.symbols.parent]=A[W],R.$_super[W]=A[W].bind(R);Object.assign(M,N.overrides)}N.cast=Object.assign({},C.cast,N.cast);const q=Object.assign({},C.manifest,N.manifest);return q.build=d.build(N.manifest&&N.manifest.build,C.manifest&&C.manifest.build),N.manifest=q,N.rebuild=d.rebuild(N.rebuild,C.rebuild),R},d.build=function(v,w){return v&&w?function(A,M){return w(v(A,M),M)}:v||w},d.coerce=function(v,w){return v&&w?{from:v.from&&w.from?[...new Set([...v.from,...w.from])]:null,method(A,M){let R;if((!w.from||w.from.includes(typeof A))&&(R=w.method(A,M),R)){if(R.errors||R.value===void 0)return R;A=R.value}if(!v.from||v.from.includes(typeof A)){const N=v.method(A,M);if(N)return N}return R}}:v||w},d.prepare=function(v,w){return v&&w?function(A,M){const R=v(A,M);if(R){if(R.errors||R.value===void 0)return R;A=R.value}return w(A,M)||R}:v||w},d.rebuild=function(v,w){return v&&w?function(A){w(A),v(A)}:v||w},d.validate=function(v,w){return v&&w?function(A,M){const R=w(A,M);if(R){if(R.errors&&(!Array.isArray(R.errors)||R.errors.length))return R;A=R.value}return v(A,M)||R}:v||w}},5107:(s,i,o)=>{const f=o(375),u=o(8571),h=o(8652),p=o(8160),d=o(3292),v=o(6354),w=o(8901),A=o(9708),M=o(6133),R=o(3328),N=o(1152);let C;const B={types:{alternatives:o(4946),any:o(8068),array:o(546),boolean:o(4937),date:o(7500),function:o(390),link:o(8785),number:o(3832),object:o(8966),string:o(7417),symbol:o(8826)},aliases:{alt:"alternatives",bool:"boolean",func:"function"},root:function(){const O={_types:new Set(Object.keys(B.types))};for(const D of O._types)O[D]=function(){for(var q=arguments.length,W=new Array(q),k=0;k2?q-2:0),k=2;k2?q-2:0),k=2;k{const f=o(375),u=o(8571),h=o(3328);i.compile=function(p,d){if(typeof p=="string")return f(!d,"Cannot set single message string"),new h(p);if(h.isTemplate(p))return f(!d,"Cannot set single message template"),p;f(typeof p=="object"&&!Array.isArray(p),"Invalid message options"),d=d?u(d):{};for(let v in p){const w=p[v];if(v==="root"||h.isTemplate(w)){d[v]=w;continue}if(typeof w=="string"){d[v]=new h(w);continue}f(typeof w=="object"&&!Array.isArray(w),"Invalid message for",v);const A=v;for(v in d[A]=d[A]||{},w){const M=w[v];v==="root"||h.isTemplate(M)?d[A][v]=M:(f(typeof M=="string","Invalid message for",v,"in",A),d[A][v]=new h(M))}}return d},i.decompile=function(p){const d={};for(let v in p){const w=p[v];if(v==="root"){d.root=w;continue}if(h.isTemplate(w)){d[v]=w.describe({compact:!0});continue}const A=v;for(v in d[A]={},w){const M=w[v];v!=="root"?d[A][v]=M.describe({compact:!0}):d[A].root=M}}return d},i.merge=function(p,d){if(!p)return i.compile(d);if(!d)return p;if(typeof d=="string")return new h(d);if(h.isTemplate(d))return d;const v=u(p);for(let w in d){const A=d[w];if(w==="root"||h.isTemplate(A)){v[w]=A;continue}if(typeof A=="string"){v[w]=new h(A);continue}f(typeof A=="object"&&!Array.isArray(A),"Invalid message for",w);const M=w;for(w in v[M]=v[M]||{},A){const R=A[w];w==="root"||h.isTemplate(R)?v[M][w]=R:(f(typeof R=="string","Invalid message for",w,"in",M),v[M][w]=new h(R))}}return v}},2294:(s,i,o)=>{const f=o(375),u=o(8160),h=o(6133),p={};i.Ids=p.Ids=class{constructor(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}clone(){const d=new p.Ids;return d._byId=new Map(this._byId),d._byKey=new Map(this._byKey),d._schemaChain=this._schemaChain,d}concat(d){d._schemaChain&&(this._schemaChain=!0);for(const[v,w]of d._byId.entries())f(!this._byKey.has(v),"Schema id conflicts with existing key:",v),this._byId.set(v,w);for(const[v,w]of d._byKey.entries())f(!this._byId.has(v),"Schema key conflicts with existing id:",v),this._byKey.set(v,w)}fork(d,v,w){const A=this._collect(d);A.push({schema:w});const M=A.shift();let R={id:M.id,schema:v(M.schema)};f(u.isSchema(R.schema),"adjuster function failed to return a joi schema type");for(const N of A)R={id:N.id,schema:p.fork(N.schema,R.id,R.schema)};return R.schema}labels(d){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const w=d[0],A=this._get(w);if(!A)return[...v,...d].join(".");const M=d.slice(1);return v=[...v,A.schema._flags.label||w],M.length?A.schema._ids.labels(M,v):v.join(".")}reach(d){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const w=d[0],A=this._get(w);f(A,"Schema does not contain path",[...v,...d].join("."));const M=d.slice(1);return M.length?A.schema._ids.reach(M,[...v,w]):A.schema}register(d){let{key:v}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!d||!u.isSchema(d))return;(d.$_property("schemaChain")||d._ids._schemaChain)&&(this._schemaChain=!0);const w=d._flags.id;if(w){const A=this._byId.get(w);f(!A||A.schema===d,"Cannot add different schemas with the same id:",w),f(!this._byKey.has(w),"Schema id conflicts with existing key:",w),this._byId.set(w,{schema:d,id:w})}v&&(f(!this._byKey.has(v),"Schema already contains key:",v),f(!this._byId.has(v),"Schema key conflicts with existing id:",v),this._byKey.set(v,{schema:d,id:v}))}reset(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}_collect(d){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];const A=d[0],M=this._get(A);f(M,"Schema does not contain path",[...v,...d].join(".")),w=[M,...w];const R=d.slice(1);return R.length?M.schema._ids._collect(R,[...v,A],w):w}_get(d){return this._byId.get(d)||this._byKey.get(d)}},p.fork=function(d,v,w){const A=i.schema(d,{each:(M,R)=>{let{key:N}=R;if(v===(M._flags.id||N))return w},ref:!1});return A?A.$_mutateRebuild():d},i.schema=function(d,v){let w;for(const A in d._flags){if(A[0]==="_")continue;const M=p.scan(d._flags[A],{source:"flags",name:A},v);M!==void 0&&(w=w||d.clone(),w._flags[A]=M)}for(let A=0;A{const f=o(375),u=o(8571),h=o(9621),p=o(8160);let d;const v={symbol:Symbol("ref"),defaults:{adjust:null,in:!1,iterables:null,map:null,separator:".",type:"value"}};i.create=function(w){let A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};f(typeof w=="string","Invalid reference key:",w),p.assertOptions(A,["adjust","ancestor","in","iterables","map","prefix","render","separator"]),f(!A.prefix||typeof A.prefix=="object","options.prefix must be of type object");const M=Object.assign({},v.defaults,A);delete M.prefix;const R=M.separator,N=v.context(w,R,A.prefix);if(M.type=N.type,w=N.key,M.type==="value")if(N.root&&(f(!R||w[0]!==R,"Cannot specify relative path with root prefix"),M.ancestor="root",w||(w=null)),R&&R===w)w=null,M.ancestor=0;else if(M.ancestor!==void 0)f(!R||!w||w[0]!==R,"Cannot combine prefix with ancestor option");else{const[C,B]=v.ancestor(w,R);B&&(w=w.slice(B))===""&&(w=null),M.ancestor=C}return M.path=R?w===null?[]:w.split(R):[w],new v.Ref(M)},i.in=function(w){let A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return i.create(w,{...A,in:!0})},i.isRef=function(w){return!!w&&!!w[p.symbols.ref]},v.Ref=class{constructor(w){f(typeof w=="object","Invalid reference construction"),p.assertOptions(w,["adjust","ancestor","in","iterables","map","path","render","separator","type","depth","key","root","display"]),f([!1,void 0].includes(w.separator)||typeof w.separator=="string"&&w.separator.length===1,"Invalid separator"),f(!w.adjust||typeof w.adjust=="function","options.adjust must be a function"),f(!w.map||Array.isArray(w.map),"options.map must be an array"),f(!w.map||!w.adjust,"Cannot set both map and adjust options"),Object.assign(this,v.defaults,w),f(this.type==="value"||this.ancestor===void 0,"Non-value references cannot reference ancestors"),Array.isArray(this.map)&&(this.map=new Map(this.map)),this.depth=this.path.length,this.key=this.path.length?this.path.join(this.separator):null,this.root=this.path[0],this.updateDisplay()}resolve(w,A,M,R){let N=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{};return f(!this.in||N.in,"Invalid in() reference usage"),this.type==="global"?this._resolve(M.context,A,N):this.type==="local"?this._resolve(R,A,N):this.ancestor?this.ancestor==="root"?this._resolve(A.ancestors[A.ancestors.length-1],A,N):(f(this.ancestor<=A.ancestors.length,"Invalid reference exceeds the schema root:",this.display),this._resolve(A.ancestors[this.ancestor-1],A,N)):this._resolve(w,A,N)}_resolve(w,A,M){let R;if(this.type==="value"&&A.mainstay.shadow&&M.shadow!==!1&&(R=A.mainstay.shadow.get(this.absolute(A))),R===void 0&&(R=h(w,this.path,{iterables:this.iterables,functions:!0})),this.adjust&&(R=this.adjust(R)),this.map){const N=this.map.get(R);N!==void 0&&(R=N)}return A.mainstay&&A.mainstay.tracer.resolve(A,this,R),R}toString(){return this.display}absolute(w){return[...w.path.slice(0,-this.ancestor),...this.path]}clone(){return new v.Ref(this)}describe(){const w={path:this.path};this.type!=="value"&&(w.type=this.type),this.separator!=="."&&(w.separator=this.separator),this.type==="value"&&this.ancestor!==1&&(w.ancestor=this.ancestor),this.map&&(w.map=[...this.map]);for(const A of["adjust","iterables","render"])this[A]!==null&&this[A]!==void 0&&(w[A]=this[A]);return this.in!==!1&&(w.in=!0),{ref:w}}updateDisplay(){const w=this.key!==null?this.key:"";if(this.type!=="value")return void(this.display=`ref:${this.type}:${w}`);if(!this.separator)return void(this.display=`ref:${w}`);if(!this.ancestor)return void(this.display=`ref:${this.separator}${w}`);if(this.ancestor==="root")return void(this.display=`ref:root:${w}`);if(this.ancestor===1)return void(this.display=`ref:${w||".."}`);const A=new Array(this.ancestor+1).fill(this.separator).join("");this.display=`ref:${A}${w||""}`}},v.Ref.prototype[p.symbols.ref]=!0,i.build=function(w){return(w=Object.assign({},v.defaults,w)).type==="value"&&w.ancestor===void 0&&(w.ancestor=1),new v.Ref(w)},v.context=function(w,A){let M=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(w=w.trim(),M){const R=M.global===void 0?"$":M.global;if(R!==A&&w.startsWith(R))return{key:w.slice(R.length),type:"global"};const N=M.local===void 0?"#":M.local;if(N!==A&&w.startsWith(N))return{key:w.slice(N.length),type:"local"};const C=M.root===void 0?"/":M.root;if(C!==A&&w.startsWith(C))return{key:w.slice(C.length),type:"value",root:!0}}return{key:w,type:"value"}},v.ancestor=function(w,A){if(!A)return[1,0];if(w[0]!==A)return[1,0];if(w[1]!==A)return[0,1];let M=2;for(;w[M]===A;)++M;return[M-1,M]},i.toSibling=0,i.toParent=1,i.Manager=class{constructor(){this.refs=[]}register(w,A){if(w)if(A=A===void 0?i.toParent:A,Array.isArray(w))for(const M of w)this.register(M,A);else if(p.isSchema(w))for(const M of w._refs.refs)M.ancestor-A>=0&&this.refs.push({ancestor:M.ancestor-A,root:M.root});else i.isRef(w)&&w.type==="value"&&w.ancestor-A>=0&&this.refs.push({ancestor:w.ancestor-A,root:w.root}),d=d||o(3328),d.isTemplate(w)&&this.register(w.refs(),A)}get length(){return this.refs.length}clone(){const w=new i.Manager;return w.refs=u(this.refs),w}reset(){this.refs=[]}roots(){return this.refs.filter(w=>!w.ancestor).map(w=>w.root)}}},3378:(s,i,o)=>{const f=o(5107),u={};u.wrap=f.string().min(1).max(2).allow(!1),i.preferences=f.object({allowUnknown:f.boolean(),abortEarly:f.boolean(),artifacts:f.boolean(),cache:f.boolean(),context:f.object(),convert:f.boolean(),dateFormat:f.valid("date","iso","string","time","utc"),debug:f.boolean(),errors:{escapeHtml:f.boolean(),label:f.valid("path","key",!1),language:[f.string(),f.object().ref()],render:f.boolean(),stack:f.boolean(),wrap:{label:u.wrap,array:u.wrap,string:u.wrap}},externals:f.boolean(),messages:f.object(),noDefaults:f.boolean(),nonEnumerables:f.boolean(),presence:f.valid("required","optional","forbidden"),skipFunctions:f.boolean(),stripUnknown:f.object({arrays:f.boolean(),objects:f.boolean()}).or("arrays","objects").allow(!0,!1),warnings:f.boolean()}).strict(),u.nameRx=/^[a-zA-Z0-9]\w*$/,u.rule=f.object({alias:f.array().items(f.string().pattern(u.nameRx)).single(),args:f.array().items(f.string(),f.object({name:f.string().pattern(u.nameRx).required(),ref:f.boolean(),assert:f.alternatives([f.function(),f.object().schema()]).conditional("ref",{is:!0,then:f.required()}),normalize:f.function(),message:f.string().when("assert",{is:f.function(),then:f.required()})})),convert:f.boolean(),manifest:f.boolean(),method:f.function().allow(!1),multi:f.boolean(),validate:f.function()}),i.extension=f.object({type:f.alternatives([f.string(),f.object().regex()]).required(),args:f.function(),cast:f.object().pattern(u.nameRx,f.object({from:f.function().maxArity(1).required(),to:f.function().minArity(1).maxArity(2).required()})),base:f.object().schema().when("type",{is:f.object().regex(),then:f.forbidden()}),coerce:[f.function().maxArity(3),f.object({method:f.function().maxArity(3).required(),from:f.array().items(f.string()).single()})],flags:f.object().pattern(u.nameRx,f.object({setter:f.string(),default:f.any()})),manifest:{build:f.function().arity(2)},messages:[f.object(),f.string()],modifiers:f.object().pattern(u.nameRx,f.function().minArity(1).maxArity(2)),overrides:f.object().pattern(u.nameRx,f.function()),prepare:f.function().maxArity(3),rebuild:f.function().arity(1),rules:f.object().pattern(u.nameRx,u.rule),terms:f.object().pattern(u.nameRx,f.object({init:f.array().allow(null).required(),manifest:f.object().pattern(/.+/,[f.valid("schema","single"),f.object({mapped:f.object({from:f.string().required(),to:f.string().required()}).required()})])})),validate:f.function().maxArity(3)}).strict(),i.extensions=f.array().items(f.object(),f.function().arity(1)).strict(),u.desc={buffer:f.object({buffer:f.string()}),func:f.object({function:f.function().required(),options:{literal:!0}}),override:f.object({override:!0}),ref:f.object({ref:f.object({type:f.valid("value","global","local"),path:f.array().required(),separator:f.string().length(1).allow(!1),ancestor:f.number().min(0).integer().allow("root"),map:f.array().items(f.array().length(2)).min(1),adjust:f.function(),iterables:f.boolean(),in:f.boolean(),render:f.boolean()}).required()}),regex:f.object({regex:f.string().min(3)}),special:f.object({special:f.valid("deep").required()}),template:f.object({template:f.string().required(),options:f.object()}),value:f.object({value:f.alternatives([f.object(),f.array()]).required()})},u.desc.entity=f.alternatives([f.array().items(f.link("...")),f.boolean(),f.function(),f.number(),f.string(),u.desc.buffer,u.desc.func,u.desc.ref,u.desc.regex,u.desc.special,u.desc.template,u.desc.value,f.link("/")]),u.desc.values=f.array().items(null,f.boolean(),f.function(),f.number().allow(1/0,-1/0),f.string().allow(""),f.symbol(),u.desc.buffer,u.desc.func,u.desc.override,u.desc.ref,u.desc.regex,u.desc.template,u.desc.value),u.desc.messages=f.object().pattern(/.+/,[f.string(),u.desc.template,f.object().pattern(/.+/,[f.string(),u.desc.template])]),i.description=f.object({type:f.string().required(),flags:f.object({cast:f.string(),default:f.any(),description:f.string(),empty:f.link("/"),failover:u.desc.entity,id:f.string(),label:f.string(),only:!0,presence:["optional","required","forbidden"],result:["raw","strip"],strip:f.boolean(),unit:f.string()}).unknown(),preferences:{allowUnknown:f.boolean(),abortEarly:f.boolean(),artifacts:f.boolean(),cache:f.boolean(),convert:f.boolean(),dateFormat:["date","iso","string","time","utc"],errors:{escapeHtml:f.boolean(),label:["path","key"],language:[f.string(),u.desc.ref],wrap:{label:u.wrap,array:u.wrap}},externals:f.boolean(),messages:u.desc.messages,noDefaults:f.boolean(),nonEnumerables:f.boolean(),presence:["required","optional","forbidden"],skipFunctions:f.boolean(),stripUnknown:f.object({arrays:f.boolean(),objects:f.boolean()}).or("arrays","objects").allow(!0,!1),warnings:f.boolean()},allow:u.desc.values,invalid:u.desc.values,rules:f.array().min(1).items({name:f.string().required(),args:f.object().min(1),keep:f.boolean(),message:[f.string(),u.desc.messages],warn:f.boolean()}),keys:f.object().pattern(/.*/,f.link("/")),link:u.desc.ref}).pattern(/^[a-z]\w*$/,f.any())},493:(s,i,o)=>{const f=o(8571),u=o(9621),h=o(8160),p={value:Symbol("value")};s.exports=p.State=class{constructor(d,v,w){this.path=d,this.ancestors=v,this.mainstay=w.mainstay,this.schemas=w.schemas,this.debug=null}localize(d){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;const A=new p.State(d,v,this);return w&&A.schemas&&(A.schemas=[p.schemas(w),...A.schemas]),A}nest(d,v){const w=new p.State(this.path,this.ancestors,this);return w.schemas=w.schemas&&[p.schemas(d),...w.schemas],w.debug=v,w}shadow(d,v){this.mainstay.shadow=this.mainstay.shadow||new p.Shadow,this.mainstay.shadow.set(this.path,d,v)}snapshot(){this.mainstay.shadow&&(this._snapshot=f(this.mainstay.shadow.node(this.path)))}restore(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0)}},p.schemas=function(d){return h.isSchema(d)?{schema:d}:d},p.Shadow=class{constructor(){this._values=null}set(d,v,w){if(!d.length||w==="strip"&&typeof d[d.length-1]=="number")return;this._values=this._values||new Map;let A=this._values;for(let M=0;M{const f=o(375),u=o(8571),h=o(5277),p=o(1447),d=o(8160),v=o(6354),w=o(6133),A={symbol:Symbol("template"),opens:new Array(1e3).join("\0"),closes:new Array(1e3).join(""),dateFormat:{date:Date.prototype.toDateString,iso:Date.prototype.toISOString,string:Date.prototype.toString,time:Date.prototype.toTimeString,utc:Date.prototype.toUTCString}};s.exports=A.Template=class{constructor(M,R){f(typeof M=="string","Template source must be a string"),f(!M.includes("\0")&&!M.includes(""),"Template source cannot contain reserved control characters"),this.source=M,this.rendered=M,this._template=null,this._settings=u(R),this._parse()}_parse(){if(!this.source.includes("{"))return;const M=A.encode(this.source),R=A.split(M);let N=!1;const C=[],B=R.shift();B&&C.push(B);for(const O of R){const D=O[0]!=="{",q=D?"}":"}}",W=O.indexOf(q);if(W===-1||O[1]==="{"){C.push(`{${A.decode(O)}`);continue}let k=O.slice(D?0:1,W);const I=k[0]===":";I&&(k=k.slice(1));const H=this._ref(A.decode(k),{raw:D,wrapped:I});C.push(H),typeof H!="string"&&(N=!0);const P=O.slice(W+q.length);P&&C.push(A.decode(P))}N?this._template=C:this.rendered=C.join("")}static date(M,R){return A.dateFormat[R.dateFormat].call(M)}describe(){let M=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!this._settings&&M.compact)return this.source;const R={template:this.source};return this._settings&&(R.options=this._settings),R}static build(M){return new A.Template(M.template,M.options)}isDynamic(){return!!this._template}static isTemplate(M){return!!M&&!!M[d.symbols.template]}refs(){if(!this._template)return;const M=[];for(const R of this._template)typeof R!="string"&&M.push(...R.refs);return M}resolve(M,R,N,C){return this._template&&this._template.length===1?this._part(this._template[0],M,R,N,C,{}):this.render(M,R,N,C)}_part(M){for(var R=arguments.length,N=new Array(R>1?R-1:0),C=1;C4&&arguments[4]!==void 0?arguments[4]:{};if(!this.isDynamic())return this.rendered;const O=[];for(const D of this._template)if(typeof D=="string")O.push(D);else{const q=this._part(D,M,R,N,C,B),W=A.stringify(q,M,R,N,C,B);if(W!==void 0){const k=D.raw||(B.errors&&B.errors.escapeHtml)===!1?W:h(W);O.push(A.wrap(k,D.wrapped&&N.errors.wrap.label))}}return O.join("")}_ref(M,R){let{raw:N,wrapped:C}=R;const B=[],O=q=>{const W=w.create(q,this._settings);return B.push(W),k=>W.resolve(...k)};try{var D=new p.Parser(M,{reference:O,functions:A.functions,constants:A.constants})}catch(q){throw q.message=`Invalid template variable "${M}" fails due to: ${q.message}`,q}if(D.single){if(D.single.type==="reference"){const q=B[0];return{ref:q,raw:N,refs:B,wrapped:C||q.type==="local"&&q.key==="label"}}return A.stringify(D.single.value)}return{formula:D,raw:N,refs:B}}toString(){return this.source}},A.Template.prototype[d.symbols.template]=!0,A.Template.prototype.isImmutable=!0,A.encode=function(M){return M.replace(/\\(\{+)/g,(R,N)=>A.opens.slice(0,N.length)).replace(/\\(\}+)/g,(R,N)=>A.closes.slice(0,N.length))},A.decode=function(M){return M.replace(/\u0000/g,"{").replace(/\u0001/g,"}")},A.split=function(M){const R=[];let N="";for(let C=0;C5&&arguments[5]!==void 0?arguments[5]:{};const D=typeof M,q=C&&C.errors&&C.errors.wrap||{};let W=!1;if(w.isRef(M)&&M.render&&(W=M.in,M=M.resolve(R,N,C,B,{in:M.in,...O})),M===null)return"null";if(D==="string")return A.wrap(M,O.arrayItems&&q.string);if(D==="number"||D==="function"||D==="symbol")return M.toString();if(D!=="object")return JSON.stringify(M);if(M instanceof Date)return A.Template.date(M,C);if(M instanceof Map){const I=[];for(const[H,P]of M.entries())I.push(`${H.toString()} -> ${P.toString()}`);M=I}if(!Array.isArray(M))return M.toString();const k=[];for(const I of M)k.push(A.stringify(I,R,N,C,B,{arrayItems:!0,...O}));return A.wrap(k.join(", "),!W&&q.array)},A.constants={true:!0,false:!1,null:null,second:1e3,minute:6e4,hour:36e5,day:864e5},A.functions={if:(M,R,N)=>M?R:N,length:M=>typeof M=="string"?M.length:M&&typeof M=="object"?Array.isArray(M)?M.length:Object.keys(M).length:null,msg(M){const[R,N,C,B,O]=this,D=O.messages;if(!D)return"";const q=v.template(R,D[0],M,N,C)||v.template(R,D[1],M,N,C);return q?q.render(R,N,C,B,O):""},number:M=>typeof M=="number"?M:typeof M=="string"?parseFloat(M):typeof M=="boolean"?M?1:0:M instanceof Date?M.getTime():null}},4946:(s,i,o)=>{const f=o(375),u=o(1687),h=o(8068),p=o(8160),d=o(3292),v=o(6354),w=o(6133),A={};s.exports=h.extend({type:"alternatives",flags:{match:{default:"any"}},terms:{matches:{init:[],register:w.toSibling}},args(M){for(var R=arguments.length,N=new Array(R>1?R-1:0),C=1;Cv.details(I,{override:!1}))})};if(N._flags.match==="one")return q.length===1?{value:q[0]}:{errors:C("alternatives.one")};if(q.length!==N.$_terms.matches.length)return{errors:C("alternatives.all",{details:W.map(I=>v.details(I,{override:!1}))})};const k=I=>I.$_terms.matches.some(H=>H.schema.type==="object"||H.schema.type==="alternatives"&&k(H.schema));return k(N)?{value:q.reduce((I,H)=>u(I,H,{mergeArrays:!1}))}:{value:q[q.length-1]}}const D=[];for(let q=0;qN.path[0]!=="is"?R.label(M):void 0,ref:!1})}},rebuild(M){M.$_modify({each:R=>{p.isSchema(R)&&R.type==="array"&&M.$_setFlag("_arrayItems",!0,{clone:!1})}})},manifest:{build(M,R){if(R.matches)for(const N of R.matches){const{schema:C,ref:B,is:O,not:D,then:q,otherwise:W}=N;M=C?M.try(C):B?M.conditional(B,{is:O,then:q,not:D,otherwise:W,switch:N.switch}):M.conditional(O,{then:q,otherwise:W})}return M}},messages:{"alternatives.all":"{{#label}} does not match all of the required types","alternatives.any":"{{#label}} does not match any of the allowed types","alternatives.match":"{{#label}} does not match any of the allowed types","alternatives.one":"{{#label}} matches more than one allowed type","alternatives.types":"{{#label}} must be one of {{#types}}"}}),A.errors=function(M,R){let{error:N,state:C}=R;if(!M.length)return{errors:N("alternatives.any")};if(M.length===1)return{errors:M[0].reports};const B=new Set,O=[];for(const{reports:D,schema:q}of M){if(D.length>1)return A.unmatched(M,N);const W=D[0];if(W instanceof v.Report==0)return A.unmatched(M,N);if(W.state.path.length!==C.path.length){O.push({type:q.type,report:W});continue}if(W.code==="any.only"){for(const H of W.local.valids)B.add(H);continue}const[k,I]=W.code.split(".");I==="base"?B.add(k):O.push({type:q.type,report:W})}return O.length?O.length===1?{errors:O[0].report}:A.unmatched(M,N):{errors:N("alternatives.types",{types:[...B]})}},A.unmatched=function(M,R){const N=[];for(const C of M)N.push(...C.reports);return{errors:R("alternatives.match",v.details(N,{override:!1}))}}},8068:(s,i,o)=>{const f=o(375),u=o(7629),h=o(8160),p=o(6914);s.exports=u.extend({type:"any",flags:{only:{default:!1}},terms:{alterations:{init:null},examples:{init:null},externals:{init:null},metas:{init:[]},notes:{init:[]},shared:{init:null},tags:{init:[]},whens:{init:null}},rules:{custom:{method(d,v){return f(typeof d=="function","Method must be a function"),f(v===void 0||v&&typeof v=="string","Description must be a non-empty string"),this.$_addRule({name:"custom",args:{method:d,description:v}})},validate(d,v,w){let{method:A}=w;try{return A(d,v)}catch(M){return v.error("any.custom",{error:M})}},args:["method","description"],multi:!0},messages:{method(d){return this.prefs({messages:d})}},shared:{method(d){f(h.isSchema(d)&&d._flags.id,"Schema must be a schema with an id");const v=this.clone();return v.$_terms.shared=v.$_terms.shared||[],v.$_terms.shared.push(d),v.$_mutateRegister(d),v}},warning:{method(d,v){return f(d&&typeof d=="string","Invalid warning code"),this.$_addRule({name:"warning",args:{code:d,local:v},warn:!0})},validate(d,v,w){let{code:A,local:M}=w;return v.error(A,M)},args:["code","local"],multi:!0}},modifiers:{keep(d){let v=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];d.keep=v},message(d,v){d.message=p.compile(v)},warn(d){let v=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];d.warn=v}},manifest:{build(d,v){for(const w in v){const A=v[w];if(["examples","externals","metas","notes","tags"].includes(w))for(const M of A)d=d[w.slice(0,-1)](M);else if(w!=="alterations")if(w!=="whens"){if(w==="shared")for(const M of A)d=d.shared(M)}else for(const M of A){const{ref:R,is:N,not:C,then:B,otherwise:O,concat:D}=M;d=D?d.concat(D):R?d.when(R,{is:N,not:C,then:B,otherwise:O,switch:M.switch,break:M.break}):d.when(N,{then:B,otherwise:O,break:M.break})}else{const M={};for(const{target:R,adjuster:N}of A)M[R]=N;d=d.alter(M)}}return d}},messages:{"any.custom":"{{#label}} failed custom validation because {{#error.message}}","any.default":"{{#label}} threw an error when running default method","any.failover":"{{#label}} threw an error when running failover method","any.invalid":"{{#label}} contains an invalid value","any.only":'{{#label}} must be {if(#valids.length == 1, "", "one of ")}{{#valids}}',"any.ref":"{{#label}} {{#arg}} references {{:#ref}} which {{#reason}}","any.required":"{{#label}} is required","any.unknown":"{{#label}} is not allowed"}})},546:(s,i,o)=>{const f=o(375),u=o(9474),h=o(9621),p=o(8068),d=o(8160),v=o(3292),w={};s.exports=p.extend({type:"array",flags:{single:{default:!1},sparse:{default:!1}},terms:{items:{init:[],manifest:"schema"},ordered:{init:[],manifest:"schema"},_exclusions:{init:[]},_inclusions:{init:[]},_requireds:{init:[]}},coerce:{from:"object",method(A,M){let{schema:R,state:N,prefs:C}=M;if(!Array.isArray(A))return;const B=R.$_getRule("sort");return B?w.sort(R,A,B.args.options,N,C):void 0}},validate(A,M){let{schema:R,error:N}=M;if(!Array.isArray(A)){if(R._flags.single){const C=[A];return C[d.symbols.arraySingle]=!0,{value:C}}return{errors:N("array.base")}}if(R.$_getRule("items")||R.$_terms.externals)return{value:A.slice()}},rules:{has:{method(A){A=this.$_compile(A,{appendPath:!0});const M=this.$_addRule({name:"has",args:{schema:A}});return M.$_mutateRegister(A),M},validate(A,M,R){let{state:N,prefs:C,error:B}=M,{schema:O}=R;const D=[A,...N.ancestors];for(let W=0;Wthis.$_compile(M[C]),C,{append:!0});N.$_terms.items.push(B)}return N.$_mutateRebuild()},validate(A,M){let{schema:R,error:N,state:C,prefs:B,errorsArray:O}=M;const D=R.$_terms._requireds.slice(),q=R.$_terms.ordered.slice(),W=[...R.$_terms._inclusions,...D],k=!A[d.symbols.arraySingle];delete A[d.symbols.arraySingle];const I=O();let H=A.length;for(let P=0;P="})}},ordered:{method(){for(var A=arguments.length,M=new Array(A),R=0;Rthis.$_compile(M[C]),C,{append:!0});w.validateSingle(B,N),N.$_mutateRegister(B),N.$_terms.ordered.push(B)}return N.$_mutateRebuild()}},single:{method(A){const M=A===void 0||!!A;return f(!M||!this._flags._arrayItems,"Cannot specify single rule when array has array items"),this.$_setFlag("single",M)}},sort:{method(){let A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};d.assertOptions(A,["by","order"]);const M={order:A.order||"ascending"};return A.by&&(M.by=v.ref(A.by,{ancestor:0}),f(!M.by.ancestor,"Cannot sort by ancestor")),this.$_addRule({name:"sort",args:{options:M}})},validate(A,M,R){let{error:N,state:C,prefs:B,schema:O}=M,{options:D}=R;const{value:q,errors:W}=w.sort(O,A,D,C,B);if(W)return W;for(let k=0;k1&&arguments[1]!==void 0?arguments[1]:{};f(!A||typeof A=="function"||typeof A=="string","comparator must be a function or a string"),d.assertOptions(M,["ignoreUndefined","separator"]);const R={name:"unique",args:{options:M,comparator:A}};if(A)if(typeof A=="string"){const N=d.default(M.separator,".");R.path=N?A.split(N):[A]}else R.comparator=A;return this.$_addRule(R)},validate(A,M,R,N){let{state:C,error:B,schema:O}=M,{comparator:D,options:q}=R,{comparator:W,path:k}=N;const I={string:Object.create(null),number:Object.create(null),undefined:Object.create(null),boolean:Object.create(null),object:new Map,function:new Map,custom:new Map},H=W||u,P=q.ignoreUndefined;for(let T=0;Tnew Set(A)}},rebuild(A){A.$_terms._inclusions=[],A.$_terms._exclusions=[],A.$_terms._requireds=[];for(const M of A.$_terms.items)w.validateSingle(M,A),M._flags.presence==="required"?A.$_terms._requireds.push(M):M._flags.presence==="forbidden"?A.$_terms._exclusions.push(M):A.$_terms._inclusions.push(M);for(const M of A.$_terms.ordered)w.validateSingle(M,A)},manifest:{build:(A,M)=>(M.items&&(A=A.items(...M.items)),M.ordered&&(A=A.ordered(...M.ordered)),A)},messages:{"array.base":"{{#label}} must be an array","array.excludes":"{{#label}} contains an excluded value","array.hasKnown":"{{#label}} does not contain at least one required match for type {:#patternLabel}","array.hasUnknown":"{{#label}} does not contain at least one required match","array.includes":"{{#label}} does not match any of the allowed types","array.includesRequiredBoth":"{{#label}} does not contain {{#knownMisses}} and {{#unknownMisses}} other required value(s)","array.includesRequiredKnowns":"{{#label}} does not contain {{#knownMisses}}","array.includesRequiredUnknowns":"{{#label}} does not contain {{#unknownMisses}} required value(s)","array.length":"{{#label}} must contain {{#limit}} items","array.max":"{{#label}} must contain less than or equal to {{#limit}} items","array.min":"{{#label}} must contain at least {{#limit}} items","array.orderedLength":"{{#label}} must contain at most {{#limit}} items","array.sort":"{{#label}} must be sorted in {#order} order by {{#by}}","array.sort.mismatching":"{{#label}} cannot be sorted due to mismatching types","array.sort.unsupported":"{{#label}} cannot be sorted due to unsupported type {#type}","array.sparse":"{{#label}} must not be a sparse array item","array.unique":"{{#label}} contains a duplicate value"}}),w.fillMissedErrors=function(A,M,R,N,C,B){const O=[];let D=0;for(const q of R){const W=q._flags.label;W?O.push(W):++D}O.length?D?M.push(A.$_createError("array.includesRequiredBoth",N,{knownMisses:O,unknownMisses:D},C,B)):M.push(A.$_createError("array.includesRequiredKnowns",N,{knownMisses:O},C,B)):M.push(A.$_createError("array.includesRequiredUnknowns",N,{unknownMisses:D},C,B))},w.fillOrderedErrors=function(A,M,R,N,C,B){const O=[];for(const D of R)D._flags.presence==="required"&&O.push(D);O.length&&w.fillMissedErrors(A,M,O,N,C,B)},w.fillDefault=function(A,M,R,N){const C=[];let B=!0;for(let O=A.length-1;O>=0;--O){const D=A[O],q=[M,...R.ancestors],W=D.$_validate(void 0,R.localize(R.path,q,D),N).value;if(B){if(W===void 0)continue;B=!1}C.unshift(W)}C.length&&M.push(...C)},w.fastSplice=function(A,M){let R=M;for(;R{let I=w.compare(W,k,O,D);if(I!==null||(R.by&&(W=R.by.resolve(W,N,C),k=R.by.resolve(k,N,C)),I=w.compare(W,k,O,D),I!==null))return I;const H=typeof W;if(H!==typeof k)throw A.$_createError("array.sort.mismatching",M,null,N,C);if(H!=="number"&&H!=="string")throw A.$_createError("array.sort.unsupported",M,{type:H},N,C);return H==="number"?(W-k)*B:W{const f=o(375),u=o(8068),h=o(8160),p=o(2036),d={isBool:function(v){return typeof v=="boolean"}};s.exports=u.extend({type:"boolean",flags:{sensitive:{default:!1}},terms:{falsy:{init:null,manifest:"values"},truthy:{init:null,manifest:"values"}},coerce(v,w){let{schema:A}=w;if(typeof v!="boolean"){if(typeof v=="string"){const M=A._flags.sensitive?v:v.toLowerCase();v=M==="true"||M!=="false"&&v}return typeof v!="boolean"&&(v=A.$_terms.truthy&&A.$_terms.truthy.has(v,null,null,!A._flags.sensitive)||(!A.$_terms.falsy||!A.$_terms.falsy.has(v,null,null,!A._flags.sensitive))&&v),{value:v}}},validate(v,w){let{error:A}=w;if(typeof v!="boolean")return{value:v,errors:A("boolean.base")}},rules:{truthy:{method(){for(var v=arguments.length,w=new Array(v),A=0;A0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("sensitive",v)}}},cast:{number:{from:d.isBool,to:(v,w)=>v?1:0},string:{from:d.isBool,to:(v,w)=>v?"true":"false"}},manifest:{build:(v,w)=>(w.truthy&&(v=v.truthy(...w.truthy)),w.falsy&&(v=v.falsy(...w.falsy)),v)},messages:{"boolean.base":"{{#label}} must be a boolean"}})},7500:(s,i,o)=>{const f=o(375),u=o(8068),h=o(8160),p=o(3328),d={isDate:function(v){return v instanceof Date}};s.exports=u.extend({type:"date",coerce:{from:["number","string"],method(v,w){let{schema:A}=w;return{value:d.parse(v,A._flags.format)||v}}},validate(v,w){let{schema:A,error:M,prefs:R}=w;if(v instanceof Date&&!isNaN(v.getTime()))return;const N=A._flags.format;return R.convert&&N&&typeof v=="string"?{value:v,errors:M("date.format",{format:N})}:{value:v,errors:M("date.base")}},rules:{compare:{method:!1,validate(v,w,A,M){let{date:R}=A,{name:N,operator:C,args:B}=M;const O=R==="now"?Date.now():R.getTime();return h.compare(v.getTime(),O,C)?v:w.error("date."+N,{limit:B.date,value:v})},args:[{name:"date",ref:!0,normalize:v=>v==="now"?v:d.parse(v),assert:v=>v!==null,message:"must have a valid date format"}]},format:{method(v){return f(["iso","javascript","unix"].includes(v),"Unknown date format",v),this.$_setFlag("format",v)}},greater:{method(v){return this.$_addRule({name:"greater",method:"compare",args:{date:v},operator:">"})}},iso:{method(){return this.format("iso")}},less:{method(v){return this.$_addRule({name:"less",method:"compare",args:{date:v},operator:"<"})}},max:{method(v){return this.$_addRule({name:"max",method:"compare",args:{date:v},operator:"<="})}},min:{method(v){return this.$_addRule({name:"min",method:"compare",args:{date:v},operator:">="})}},timestamp:{method(){let v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"javascript";return f(["javascript","unix"].includes(v),'"type" must be one of "javascript, unix"'),this.format(v)}}},cast:{number:{from:d.isDate,to:(v,w)=>v.getTime()},string:{from:d.isDate,to(v,w){let{prefs:A}=w;return p.date(v,A)}}},messages:{"date.base":"{{#label}} must be a valid date","date.format":'{{#label}} must be in {msg("date.format." + #format) || #format} format',"date.greater":"{{#label}} must be greater than {{:#limit}}","date.less":"{{#label}} must be less than {{:#limit}}","date.max":"{{#label}} must be less than or equal to {{:#limit}}","date.min":"{{#label}} must be greater than or equal to {{:#limit}}","date.format.iso":"ISO 8601 date","date.format.javascript":"timestamp or number of milliseconds","date.format.unix":"timestamp or number of seconds"}}),d.parse=function(v,w){if(v instanceof Date)return v;if(typeof v!="string"&&(isNaN(v)||!isFinite(v))||/^\s*$/.test(v))return null;if(w==="iso")return h.isIsoDate(v)?d.date(v.toString()):null;const A=v;if(typeof v=="string"&&/^[+-]?\d+(\.\d+)?$/.test(v)&&(v=parseFloat(v)),w){if(w==="javascript")return d.date(1*v);if(w==="unix")return d.date(1e3*v);if(typeof A=="string")return null}return d.date(v)},d.date=function(v){const w=new Date(v);return isNaN(w.getTime())?null:w}},390:(s,i,o)=>{const f=o(375),u=o(7824);s.exports=u.extend({type:"function",properties:{typeof:"function"},rules:{arity:{method(h){return f(Number.isSafeInteger(h)&&h>=0,"n must be a positive integer"),this.$_addRule({name:"arity",args:{n:h}})},validate(h,p,d){let{n:v}=d;return h.length===v?h:p.error("function.arity",{n:v})}},class:{method(){return this.$_addRule("class")},validate:(h,p)=>/^\s*class\s/.test(h.toString())?h:p.error("function.class",{value:h})},minArity:{method(h){return f(Number.isSafeInteger(h)&&h>0,"n must be a strict positive integer"),this.$_addRule({name:"minArity",args:{n:h}})},validate(h,p,d){let{n:v}=d;return h.length>=v?h:p.error("function.minArity",{n:v})}},maxArity:{method(h){return f(Number.isSafeInteger(h)&&h>=0,"n must be a positive integer"),this.$_addRule({name:"maxArity",args:{n:h}})},validate(h,p,d){let{n:v}=d;return h.length<=v?h:p.error("function.maxArity",{n:v})}}},messages:{"function.arity":"{{#label}} must have an arity of {{#n}}","function.class":"{{#label}} must be a class","function.maxArity":"{{#label}} must have an arity lesser or equal to {{#n}}","function.minArity":"{{#label}} must have an arity greater or equal to {{#n}}"}})},7824:(s,i,o)=>{const f=o(978),u=o(375),h=o(8571),p=o(3652),d=o(8068),v=o(8160),w=o(3292),A=o(6354),M=o(6133),R=o(3328),N={renameDefaults:{alias:!1,multiple:!1,override:!1}};s.exports=d.extend({type:"_keys",properties:{typeof:"object"},flags:{unknown:{default:!1}},terms:{dependencies:{init:null},keys:{init:null,manifest:{mapped:{from:"schema",to:"key"}}},patterns:{init:null},renames:{init:null}},args:(C,B)=>C.keys(B),validate(C,B){let{schema:O,error:D,state:q,prefs:W}=B;if(!C||typeof C!==O.$_property("typeof")||Array.isArray(C))return{value:C,errors:D("object.base",{type:O.$_property("typeof")})};if(!(O.$_terms.renames||O.$_terms.dependencies||O.$_terms.keys||O.$_terms.patterns||O.$_terms.externals))return;C=N.clone(C,W);const k=[];if(O.$_terms.renames&&!N.rename(O,C,q,W,k))return{value:C,errors:k};if(!O.$_terms.keys&&!O.$_terms.patterns&&!O.$_terms.dependencies)return{value:C,errors:k};const I=new Set(Object.keys(C));if(O.$_terms.keys){const H=[C,...q.ancestors];for(const P of O.$_terms.keys){const T=P.key,g=C[T];I.delete(T);const a=q.localize([...q.path,T],H,P),c=P.schema.$_validate(g,a,W);if(c.errors){if(W.abortEarly)return{value:C,errors:c.errors};c.value!==void 0&&(C[T]=c.value),k.push(...c.errors)}else P.schema._flags.result==="strip"||c.value===void 0&&g!==void 0?delete C[T]:c.value!==void 0&&(C[T]=c.value)}}if(I.size||O._flags._hasPatternMatch){const H=N.unknown(O,C,I,k,q,W);if(H)return H}if(O.$_terms.dependencies)for(const H of O.$_terms.dependencies){if(H.key!==null&&N.isPresent(H.options)(H.key.resolve(C,q,W,null,{shadow:!1}))===!1)continue;const P=N.dependencies[H.rel](O,H,C,q,W);if(P){const T=O.$_createError(P.code,C,P.context,q,W);if(W.abortEarly)return{value:C,errors:T};k.push(T)}}return{value:C,errors:k}},rules:{and:{method(){for(var C=arguments.length,B=new Array(C),O=0;O!C.hasOwnProperty(O.key)):new N.Keys;for(const O in C)v.tryWithPath(()=>B.$_terms.keys.push({key:O,schema:this.$_compile(C[O])}),O)}else B.$_terms.keys=new N.Keys;else B.$_terms.keys=null;return B.$_mutateRebuild()}},length:{method(C){return this.$_addRule({name:"length",args:{limit:C},operator:"="})},validate(C,B,O,D){let{limit:q}=O,{name:W,operator:k,args:I}=D;return v.compare(Object.keys(C).length,q,k)?C:B.error("object."+W,{limit:I.limit,value:C})},args:[{name:"limit",ref:!0,assert:v.limit,message:"must be a positive integer"}]},max:{method(C){return this.$_addRule({name:"max",method:"length",args:{limit:C},operator:"<="})}},min:{method(C){return this.$_addRule({name:"min",method:"length",args:{limit:C},operator:">="})}},nand:{method(){for(var C=arguments.length,B=new Array(C),O=0;O2&&arguments[2]!==void 0?arguments[2]:{};const D=C instanceof RegExp;D||(C=this.$_compile(C,{appendPath:!0})),u(B!==void 0,"Invalid rule"),v.assertOptions(O,["fallthrough","matches"]),D&&u(!C.flags.includes("g")&&!C.flags.includes("y"),"pattern should not use global or sticky mode"),B=this.$_compile(B,{appendPath:!0});const q=this.clone();q.$_terms.patterns=q.$_terms.patterns||[];const W={[D?"regex":"schema"]:C,rule:B};return O.matches&&(W.matches=this.$_compile(O.matches),W.matches.type!=="array"&&(W.matches=W.matches.$_root.array().items(W.matches)),q.$_mutateRegister(W.matches),q.$_setFlag("_hasPatternMatch",!0,{clone:!1})),O.fallthrough&&(W.fallthrough=!0),q.$_terms.patterns.push(W),q.$_mutateRegister(B),q}},ref:{method(){return this.$_addRule("ref")},validate:(C,B)=>M.isRef(C)?C:B.error("object.refType",{value:C})},regex:{method(){return this.$_addRule("regex")},validate:(C,B)=>C instanceof RegExp?C:B.error("object.regex",{value:C})},rename:{method(C,B){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};u(typeof C=="string"||C instanceof RegExp,"Rename missing the from argument"),u(typeof B=="string"||B instanceof R,"Invalid rename to argument"),u(B!==C,"Cannot rename key to same name:",C),v.assertOptions(O,["alias","ignoreUndefined","override","multiple"]);const D=this.clone();D.$_terms.renames=D.$_terms.renames||[];for(const q of D.$_terms.renames)u(q.from!==C,"Cannot rename the same key multiple times");return B instanceof R&&D.$_mutateRegister(B),D.$_terms.renames.push({from:C,to:B,options:f(N.renameDefaults,O)}),D}},schema:{method(){let C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"any";return this.$_addRule({name:"schema",args:{type:C}})},validate(C,B,O){let{type:D}=O;return!v.isSchema(C)||D!=="any"&&C.type!==D?B.error("object.schema",{type:D}):C}},unknown:{method(C){return this.$_setFlag("unknown",C!==!1)}},with:{method(C,B){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return N.dependency(this,"with",C,B,O)}},without:{method(C,B){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return N.dependency(this,"without",C,B,O)}},xor:{method(){for(var C=arguments.length,B=new Array(C),O=0;OB.add(O,{after:O.schema.$_rootReferences(),group:O.key}),O.key);C.$_terms.keys=new N.Keys(...B.nodes)}},manifest:{build(C,B){if(B.keys&&(C=C.keys(B.keys)),B.dependencies)for(const{rel:O,key:D=null,peers:q,options:W}of B.dependencies)C=N.dependency(C,O,D,q,W);if(B.patterns)for(const{regex:O,schema:D,rule:q,fallthrough:W,matches:k}of B.patterns)C=C.pattern(O||D,q,{fallthrough:W,matches:k});if(B.renames)for(const{from:O,to:D,options:q}of B.renames)C=C.rename(O,D,q);return C}},messages:{"object.and":"{{#label}} contains {{#presentWithLabels}} without its required peers {{#missingWithLabels}}","object.assert":'{{#label}} is invalid because {if(#subject.key, `"` + #subject.key + `" failed to ` + (#message || "pass the assertion test"), #message || "the assertion failed")}',"object.base":"{{#label}} must be of type {{#type}}","object.instance":"{{#label}} must be an instance of {{:#type}}","object.length":'{{#label}} must have {{#limit}} key{if(#limit == 1, "", "s")}',"object.max":'{{#label}} must have less than or equal to {{#limit}} key{if(#limit == 1, "", "s")}',"object.min":'{{#label}} must have at least {{#limit}} key{if(#limit == 1, "", "s")}',"object.missing":"{{#label}} must contain at least one of {{#peersWithLabels}}","object.nand":"{{:#mainWithLabel}} must not exist simultaneously with {{#peersWithLabels}}","object.oxor":"{{#label}} contains a conflict between optional exclusive peers {{#peersWithLabels}}","object.pattern.match":"{{#label}} keys failed to match pattern requirements","object.refType":"{{#label}} must be a Joi reference","object.regex":"{{#label}} must be a RegExp object","object.rename.multiple":"{{#label}} cannot rename {{:#from}} because multiple renames are disabled and another key was already renamed to {{:#to}}","object.rename.override":"{{#label}} cannot rename {{:#from}} because override is disabled and target {{:#to}} exists","object.schema":"{{#label}} must be a Joi schema of {{#type}} type","object.unknown":"{{#label}} is not allowed","object.with":"{{:#mainWithLabel}} missing required peer {{:#peerWithLabel}}","object.without":"{{:#mainWithLabel}} conflict with forbidden peer {{:#peerWithLabel}}","object.xor":"{{#label}} contains a conflict between exclusive peers {{#peersWithLabels}}"}}),N.clone=function(C,B){if(typeof C=="object"){if(B.nonEnumerables)return h(C,{shallow:!0});const D=Object.create(Object.getPrototypeOf(C));return Object.assign(D,C),D}const O=function(){for(var D=arguments.length,q=new Array(D),W=0;W1&&typeof D[D.length-1]=="object"?D.pop():{}),v.assertOptions(q,["separator","isPresent"]),D=[].concat(D);const W=v.default(q.separator,"."),k=[];for(const H of D)u(typeof H=="string",B,"peers must be strings"),k.push(w.ref(H,{separator:W,ancestor:0,prefix:!1}));O!==null&&(O=w.ref(O,{separator:W,ancestor:0,prefix:!1}));const I=C.clone();return I.$_terms.dependencies=I.$_terms.dependencies||[],I.$_terms.dependencies.push(new N.Dependency(B,O,k,D,q)),I},N.dependencies={and(C,B,O,D,q){const W=[],k=[],I=B.peers.length,H=N.isPresent(B.options);for(const P of B.peers)H(P.resolve(O,D,q,null,{shadow:!1}))===!1?W.push(P.key):k.push(P.key);if(W.length!==I&&k.length!==I)return{code:"object.and",context:{present:k,presentWithLabels:N.keysToLabels(C,k),missing:W,missingWithLabels:N.keysToLabels(C,W)}}},nand(C,B,O,D,q){const W=[],k=N.isPresent(B.options);for(const P of B.peers)k(P.resolve(O,D,q,null,{shadow:!1}))&&W.push(P.key);if(W.length!==B.peers.length)return;const I=B.paths[0],H=B.paths.slice(1);return{code:"object.nand",context:{main:I,mainWithLabel:N.keysToLabels(C,I),peers:H,peersWithLabels:N.keysToLabels(C,H)}}},or(C,B,O,D,q){const W=N.isPresent(B.options);for(const k of B.peers)if(W(k.resolve(O,D,q,null,{shadow:!1})))return;return{code:"object.missing",context:{peers:B.paths,peersWithLabels:N.keysToLabels(C,B.paths)}}},oxor(C,B,O,D,q){const W=[],k=N.isPresent(B.options);for(const H of B.peers)k(H.resolve(O,D,q,null,{shadow:!1}))&&W.push(H.key);if(!W.length||W.length===1)return;const I={peers:B.paths,peersWithLabels:N.keysToLabels(C,B.paths)};return I.present=W,I.presentWithLabels=N.keysToLabels(C,W),{code:"object.oxor",context:I}},with(C,B,O,D,q){const W=N.isPresent(B.options);for(const k of B.peers)if(W(k.resolve(O,D,q,null,{shadow:!1}))===!1)return{code:"object.with",context:{main:B.key.key,mainWithLabel:N.keysToLabels(C,B.key.key),peer:k.key,peerWithLabel:N.keysToLabels(C,k.key)}}},without(C,B,O,D,q){const W=N.isPresent(B.options);for(const k of B.peers)if(W(k.resolve(O,D,q,null,{shadow:!1})))return{code:"object.without",context:{main:B.key.key,mainWithLabel:N.keysToLabels(C,B.key.key),peer:k.key,peerWithLabel:N.keysToLabels(C,k.key)}}},xor(C,B,O,D,q){const W=[],k=N.isPresent(B.options);for(const H of B.peers)k(H.resolve(O,D,q,null,{shadow:!1}))&&W.push(H.key);if(W.length===1)return;const I={peers:B.paths,peersWithLabels:N.keysToLabels(C,B.paths)};return W.length===0?{code:"object.missing",context:I}:(I.present=W,I.presentWithLabels=N.keysToLabels(C,W),{code:"object.xor",context:I})}},N.keysToLabels=function(C,B){return Array.isArray(B)?B.map(O=>C.$_mapLabels(O)):C.$_mapLabels(B)},N.isPresent=function(C){return typeof C.isPresent=="function"?C.isPresent:B=>B!==void 0},N.rename=function(C,B,O,D,q){const W={};for(const k of C.$_terms.renames){const I=[],H=typeof k.from!="string";if(H)for(const P in B){if(B[P]===void 0&&k.options.ignoreUndefined||P===k.to)continue;const T=k.from.exec(P);T&&I.push({from:P,to:k.to,match:T})}else!Object.prototype.hasOwnProperty.call(B,k.from)||B[k.from]===void 0&&k.options.ignoreUndefined||I.push(k);for(const P of I){const T=P.from;let g=P.to;if(g instanceof R&&(g=g.render(B,O,D,P.match)),T!==g){if(!k.options.multiple&&W[g]&&(q.push(C.$_createError("object.rename.multiple",B,{from:T,to:g,pattern:H},O,D)),D.abortEarly)||Object.prototype.hasOwnProperty.call(B,g)&&!k.options.override&&!W[g]&&(q.push(C.$_createError("object.rename.override",B,{from:T,to:g,pattern:H},O,D)),D.abortEarly))return!1;B[T]===void 0?delete B[g]:B[g]=B[T],W[g]=!0,k.options.alias||delete B[T]}}}return!0},N.unknown=function(C,B,O,D,q,W){if(C.$_terms.patterns){let k=!1;const I=C.$_terms.patterns.map(P=>{if(P.matches)return k=!0,[]}),H=[B,...q.ancestors];for(const P of O){const T=B[P],g=[...q.path,P];for(let a=0;a{const f=o(375),u=o(8068),h=o(8160),p=o(3292),d=o(6354),v={};s.exports=u.extend({type:"link",properties:{schemaChain:!0},terms:{link:{init:null,manifest:"single",register:!1}},args:(w,A)=>w.ref(A),validate(w,A){let{schema:M,state:R,prefs:N}=A;f(M.$_terms.link,"Uninitialized link schema");const C=v.generate(M,w,R,N),B=M.$_terms.link[0].ref;return C.$_validate(w,R.nest(C,`link:${B.display}:${C.type}`),N)},generate:(w,A,M,R)=>v.generate(w,A,M,R),rules:{ref:{method(w){f(!this.$_terms.link,"Cannot reinitialize schema"),w=p.ref(w),f(w.type==="value"||w.type==="local","Invalid reference type:",w.type),f(w.type==="local"||w.ancestor==="root"||w.ancestor>0,"Link cannot reference itself");const A=this.clone();return A.$_terms.link=[{ref:w}],A}},relative:{method(){let w=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("relative",w)}}},overrides:{concat(w){f(this.$_terms.link,"Uninitialized link schema"),f(h.isSchema(w),"Invalid schema object"),f(w.type!=="link","Cannot merge type link with another link");const A=this.clone();return A.$_terms.whens||(A.$_terms.whens=[]),A.$_terms.whens.push({concat:w}),A.$_mutateRebuild()}},manifest:{build:(w,A)=>(f(A.link,"Invalid link description missing link"),w.ref(A.link))}}),v.generate=function(w,A,M,R){let N=M.mainstay.links.get(w);if(N)return N._generate(A,M,R).schema;const C=w.$_terms.link[0].ref,{perspective:B,path:O}=v.perspective(C,M);v.assert(B,"which is outside of schema boundaries",C,w,M,R);try{N=O.length?B.$_reach(O):B}catch{v.assert(!1,"to non-existing schema",C,w,M,R)}return v.assert(N.type!=="link","which is another link",C,w,M,R),w._flags.relative||M.mainstay.links.set(w,N),N._generate(A,M,R).schema},v.perspective=function(w,A){if(w.type==="local"){for(const{schema:M,key:R}of A.schemas){if((M._flags.id||R)===w.path[0])return{perspective:M,path:w.path.slice(1)};if(M.$_terms.shared){for(const N of M.$_terms.shared)if(N._flags.id===w.path[0])return{perspective:N,path:w.path.slice(1)}}}return{perspective:null,path:null}}return w.ancestor==="root"?{perspective:A.schemas[A.schemas.length-1].schema,path:w.path}:{perspective:A.schemas[w.ancestor]&&A.schemas[w.ancestor].schema,path:w.path}},v.assert=function(w,A,M,R,N,C){w||f(!1,`"${d.label(R._flags,N,C)}" contains link reference "${M.display}" ${A}`)}},3832:(s,i,o)=>{const f=o(375),u=o(8068),h=o(8160),p={numberRx:/^\s*[+-]?(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:e([+-]?\d+))?\s*$/i,precisionRx:/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/,exponentialPartRegex:/[eE][+-]?\d+$/,leadingSignAndZerosRegex:/^[+-]?(0*)?/,dotRegex:/\./,trailingZerosRegex:/0+$/};s.exports=u.extend({type:"number",flags:{unsafe:{default:!1}},coerce:{from:"string",method(d,v){let{schema:w,error:A}=v;if(!d.match(p.numberRx))return;d=d.trim();const M={value:parseFloat(d)};if(M.value===0&&(M.value=0),!w._flags.unsafe)if(d.match(/e/i)){if(p.extractSignificantDigits(d)!==p.extractSignificantDigits(String(M.value)))return M.errors=A("number.unsafe"),M}else{const R=M.value.toString();if(R.match(/e/i))return M;if(R!==p.normalizeDecimal(d))return M.errors=A("number.unsafe"),M}return M}},validate(d,v){let{schema:w,error:A,prefs:M}=v;if(d===1/0||d===-1/0)return{value:d,errors:A("number.infinity")};if(!h.isNumber(d))return{value:d,errors:A("number.base")};const R={value:d};if(M.convert){const N=w.$_getRule("precision");if(N){const C=Math.pow(10,N.args.limit);R.value=Math.round(R.value*C)/C}}return R.value===0&&(R.value=0),!w._flags.unsafe&&(d>Number.MAX_SAFE_INTEGER||d"})}},integer:{method(){return this.$_addRule("integer")},validate:(d,v)=>Math.trunc(d)-d==0?d:v.error("number.integer")},less:{method(d){return this.$_addRule({name:"less",method:"compare",args:{limit:d},operator:"<"})}},max:{method(d){return this.$_addRule({name:"max",method:"compare",args:{limit:d},operator:"<="})}},min:{method(d){return this.$_addRule({name:"min",method:"compare",args:{limit:d},operator:">="})}},multiple:{method(d){return this.$_addRule({name:"multiple",args:{base:d}})},validate(d,v,w,A){let{base:M}=w;return d*(1/M)%1==0?d:v.error("number.multiple",{multiple:A.args.base,value:d})},args:[{name:"base",ref:!0,assert:d=>typeof d=="number"&&isFinite(d)&&d>0,message:"must be a positive number"}],multi:!0},negative:{method(){return this.sign("negative")}},port:{method(){return this.$_addRule("port")},validate:(d,v)=>Number.isSafeInteger(d)&&d>=0&&d<=65535?d:v.error("number.port")},positive:{method(){return this.sign("positive")}},precision:{method(d){return f(Number.isSafeInteger(d),"limit must be an integer"),this.$_addRule({name:"precision",args:{limit:d}})},validate(d,v,w){let{limit:A}=w;const M=d.toString().match(p.precisionRx);return Math.max((M[1]?M[1].length:0)-(M[2]?parseInt(M[2],10):0),0)<=A?d:v.error("number.precision",{limit:A,value:d})},convert:!0},sign:{method(d){return f(["negative","positive"].includes(d),"Invalid sign",d),this.$_addRule({name:"sign",args:{sign:d}})},validate(d,v,w){let{sign:A}=w;return A==="negative"&&d<0||A==="positive"&&d>0?d:v.error(`number.${A}`)}},unsafe:{method(){let d=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return f(typeof d=="boolean","enabled must be a boolean"),this.$_setFlag("unsafe",d)}}},cast:{string:{from:d=>typeof d=="number",to:(d,v)=>d.toString()}},messages:{"number.base":"{{#label}} must be a number","number.greater":"{{#label}} must be greater than {{#limit}}","number.infinity":"{{#label}} cannot be infinity","number.integer":"{{#label}} must be an integer","number.less":"{{#label}} must be less than {{#limit}}","number.max":"{{#label}} must be less than or equal to {{#limit}}","number.min":"{{#label}} must be greater than or equal to {{#limit}}","number.multiple":"{{#label}} must be a multiple of {{#multiple}}","number.negative":"{{#label}} must be a negative number","number.port":"{{#label}} must be a valid port","number.positive":"{{#label}} must be a positive number","number.precision":"{{#label}} must have no more than {{#limit}} decimal places","number.unsafe":"{{#label}} must be a safe number"}}),p.extractSignificantDigits=function(d){return d.replace(p.exponentialPartRegex,"").replace(p.dotRegex,"").replace(p.trailingZerosRegex,"").replace(p.leadingSignAndZerosRegex,"")},p.normalizeDecimal=function(d){return(d=d.replace(/^\+/,"").replace(/\.0*$/,"").replace(/^(-?)\.([^\.]*)$/,"$10.$2").replace(/^(-?)0+([0-9])/,"$1$2")).includes(".")&&d.endsWith("0")&&(d=d.replace(/0+$/,"")),d==="-0"?"0":d}},8966:(s,i,o)=>{const f=o(7824);s.exports=f.extend({type:"object",cast:{map:{from:u=>u&&typeof u=="object",to:(u,h)=>new Map(Object.entries(u))}}})},7417:(s,i,o)=>{const f=o(375),u=o(5380),h=o(1745),p=o(9959),d=o(6064),v=o(9926),w=o(5752),A=o(8068),M=o(8160),R={tlds:v instanceof Set&&{tlds:{allow:v,deny:null}},base64Regex:{true:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}==|[\w\-]{3}=)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/},false:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}(==)?|[\w\-]{3}=?)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}(==)?|[A-Za-z0-9+\/]{3}=?)?$/}},dataUriRegex:/^data:[\w+.-]+\/[\w+.-]+;((charset=[\w-]+|base64),)?(.*)$/,hexRegex:/^[a-f0-9]+$/i,ipRegex:p.regex({cidr:"forbidden"}).regex,isoDurationRegex:/^P(?!$)(\d+Y)?(\d+M)?(\d+W)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?$/,guidBrackets:{"{":"}","[":"]","(":")","":""},guidVersions:{uuidv1:"1",uuidv2:"2",uuidv3:"3",uuidv4:"4",uuidv5:"5"},guidSeparators:new Set([void 0,!0,!1,"-",":"]),normalizationForms:["NFC","NFD","NFKC","NFKD"]};s.exports=A.extend({type:"string",flags:{insensitive:{default:!1},truncate:{default:!1}},terms:{replacements:{init:null}},coerce:{from:"string",method(N,C){let{schema:B,state:O,prefs:D}=C;const q=B.$_getRule("normalize");q&&(N=N.normalize(q.args.form));const W=B.$_getRule("case");W&&(N=W.args.direction==="upper"?N.toLocaleUpperCase():N.toLocaleLowerCase());const k=B.$_getRule("trim");if(k&&k.args.enabled&&(N=N.trim()),B.$_terms.replacements)for(const H of B.$_terms.replacements)N=N.replace(H.pattern,H.replacement);const I=B.$_getRule("hex");if(I&&I.args.options.byteAligned&&N.length%2!=0&&(N=`0${N}`),B.$_getRule("isoDate")){const H=R.isoDate(N);H&&(N=H)}if(B._flags.truncate){const H=B.$_getRule("max");if(H){let P=H.args.limit;if(M.isResolvable(P)&&(P=P.resolve(N,O,D),!M.limit(P)))return{value:N,errors:B.$_createError("any.ref",P,{ref:H.args.limit,arg:"limit",reason:"must be a positive integer"},O,D)};N=N.slice(0,P)}}return{value:N}}},validate(N,C){let{schema:B,error:O}=C;if(typeof N!="string")return{value:N,errors:O("string.base")};if(N===""){const D=B.$_getRule("min");return D&&D.args.limit===0?void 0:{value:N,errors:O("string.empty")}}},rules:{alphanum:{method(){return this.$_addRule("alphanum")},validate:(N,C)=>/^[a-zA-Z0-9]+$/.test(N)?N:C.error("string.alphanum")},base64:{method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return M.assertOptions(N,["paddingRequired","urlSafe"]),N={urlSafe:!1,paddingRequired:!0,...N},f(typeof N.paddingRequired=="boolean","paddingRequired must be boolean"),f(typeof N.urlSafe=="boolean","urlSafe must be boolean"),this.$_addRule({name:"base64",args:{options:N}})},validate(N,C,B){let{options:O}=B;return R.base64Regex[O.paddingRequired][O.urlSafe].test(N)?N:C.error("string.base64")}},case:{method(N){return f(["lower","upper"].includes(N),"Invalid case:",N),this.$_addRule({name:"case",args:{direction:N}})},validate(N,C,B){let{direction:O}=B;return O==="lower"&&N===N.toLocaleLowerCase()||O==="upper"&&N===N.toLocaleUpperCase()?N:C.error(`string.${O}case`)},convert:!0},creditCard:{method(){return this.$_addRule("creditCard")},validate(N,C){let B=N.length,O=0,D=1;for(;B--;){const q=N.charAt(B)*D;O+=q-9*(q>9),D^=3}return O>0&&O%10==0?N:C.error("string.creditCard")}},dataUri:{method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return M.assertOptions(N,["paddingRequired"]),N={paddingRequired:!0,...N},f(typeof N.paddingRequired=="boolean","paddingRequired must be boolean"),this.$_addRule({name:"dataUri",args:{options:N}})},validate(N,C,B){let{options:O}=B;const D=N.match(R.dataUriRegex);return D&&(!D[2]||D[2]!=="base64"||R.base64Regex[O.paddingRequired].false.test(D[3]))?N:C.error("string.dataUri")}},domain:{method(N){N&&M.assertOptions(N,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);const C=R.addressOptions(N);return this.$_addRule({name:"domain",args:{options:N},address:C})},validate(N,C,B,O){let{address:D}=O;return u.isValid(N,D)?N:C.error("string.domain")}},email:{method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};M.assertOptions(N,["allowFullyQualified","allowUnicode","ignoreLength","maxDomainSegments","minDomainSegments","multiple","separator","tlds"]),f(N.multiple===void 0||typeof N.multiple=="boolean","multiple option must be an boolean");const C=R.addressOptions(N),B=new RegExp(`\\s*[${N.separator?d(N.separator):","}]\\s*`);return this.$_addRule({name:"email",args:{options:N},regex:B,address:C})},validate(N,C,B,O){let{options:D}=B,{regex:q,address:W}=O;const k=D.multiple?N.split(q):[N],I=[];for(const H of k)h.isValid(H,W)||I.push(H);return I.length?C.error("string.email",{value:N,invalids:I}):N}},guid:{alias:"uuid",method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};M.assertOptions(N,["version","separator"]);let C="";if(N.version){const D=[].concat(N.version);f(D.length>=1,"version must have at least 1 valid version specified");const q=new Set;for(let W=0;W0&&arguments[0]!==void 0?arguments[0]:{};return M.assertOptions(N,["byteAligned"]),N={byteAligned:!1,...N},f(typeof N.byteAligned=="boolean","byteAligned must be boolean"),this.$_addRule({name:"hex",args:{options:N}})},validate(N,C,B){let{options:O}=B;return R.hexRegex.test(N)?O.byteAligned&&N.length%2!=0?C.error("string.hexAlign"):N:C.error("string.hex")}},hostname:{method(){return this.$_addRule("hostname")},validate:(N,C)=>u.isValid(N,{minDomainSegments:1})||R.ipRegex.test(N)?N:C.error("string.hostname")},insensitive:{method(){return this.$_setFlag("insensitive",!0)}},ip:{method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};M.assertOptions(N,["cidr","version"]);const{cidr:C,versions:B,regex:O}=p.regex(N),D=N.version?B:void 0;return this.$_addRule({name:"ip",args:{options:{cidr:C,version:D}},regex:O})},validate(N,C,B,O){let{options:D}=B,{regex:q}=O;return q.test(N)?N:D.version?C.error("string.ipVersion",{value:N,cidr:D.cidr,version:D.version}):C.error("string.ip",{value:N,cidr:D.cidr})}},isoDate:{method(){return this.$_addRule("isoDate")},validate(N,C){let{error:B}=C;return R.isoDate(N)?N:B("string.isoDate")}},isoDuration:{method(){return this.$_addRule("isoDuration")},validate:(N,C)=>R.isoDurationRegex.test(N)?N:C.error("string.isoDuration")},length:{method(N,C){return R.length(this,"length",N,"=",C)},validate(N,C,B,O){let{limit:D,encoding:q}=B,{name:W,operator:k,args:I}=O;const H=!q&&N.length;return M.compare(H,D,k)?N:C.error("string."+W,{limit:I.limit,value:N,encoding:q})},args:[{name:"limit",ref:!0,assert:M.limit,message:"must be a positive integer"},"encoding"]},lowercase:{method(){return this.case("lower")}},max:{method(N,C){return R.length(this,"max",N,"<=",C)},args:["limit","encoding"]},min:{method(N,C){return R.length(this,"min",N,">=",C)},args:["limit","encoding"]},normalize:{method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"NFC";return f(R.normalizationForms.includes(N),"normalization form must be one of "+R.normalizationForms.join(", ")),this.$_addRule({name:"normalize",args:{form:N}})},validate(N,C,B){let{error:O}=C,{form:D}=B;return N===N.normalize(D)?N:O("string.normalize",{value:N,form:D})},convert:!0},pattern:{alias:"regex",method(N){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};f(N instanceof RegExp,"regex must be a RegExp"),f(!N.flags.includes("g")&&!N.flags.includes("y"),"regex should not use global or sticky mode"),typeof C=="string"&&(C={name:C}),M.assertOptions(C,["invert","name"]);const B=["string.pattern",C.invert?".invert":"",C.name?".name":".base"].join("");return this.$_addRule({name:"pattern",args:{regex:N,options:C},errorCode:B})},validate(N,C,B,O){let{regex:D,options:q}=B,{errorCode:W}=O;return D.test(N)^q.invert?N:C.error(W,{name:q.name,regex:D,value:N})},args:["regex","options"],multi:!0},replace:{method(N,C){typeof N=="string"&&(N=new RegExp(d(N),"g")),f(N instanceof RegExp,"pattern must be a RegExp"),f(typeof C=="string","replacement must be a String");const B=this.clone();return B.$_terms.replacements||(B.$_terms.replacements=[]),B.$_terms.replacements.push({pattern:N,replacement:C}),B}},token:{method(){return this.$_addRule("token")},validate:(N,C)=>/^\w+$/.test(N)?N:C.error("string.token")},trim:{method(){let N=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return f(typeof N=="boolean","enabled must be a boolean"),this.$_addRule({name:"trim",args:{enabled:N}})},validate(N,C,B){let{enabled:O}=B;return O&&N!==N.trim()?C.error("string.trim"):N},convert:!0},truncate:{method(){let N=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return f(typeof N=="boolean","enabled must be a boolean"),this.$_setFlag("truncate",N)}},uppercase:{method(){return this.case("upper")}},uri:{method(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};M.assertOptions(N,["allowRelative","allowQuerySquareBrackets","domain","relativeOnly","scheme"]),N.domain&&M.assertOptions(N.domain,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);const{regex:C,scheme:B}=w.regex(N),O=N.domain?R.addressOptions(N.domain):null;return this.$_addRule({name:"uri",args:{options:N},regex:C,domain:O,scheme:B})},validate(N,C,B,O){let{options:D}=B,{regex:q,domain:W,scheme:k}=O;if(["http:/","https:/"].includes(N))return C.error("string.uri");const I=q.exec(N);if(I){const H=I[1]||I[2];return!W||D.allowRelative&&!H||u.isValid(H,W)?N:C.error("string.domain",{value:H})}return D.relativeOnly?C.error("string.uriRelativeOnly"):D.scheme?C.error("string.uriCustomScheme",{scheme:k,value:N}):C.error("string.uri")}}},manifest:{build(N,C){if(C.replacements)for(const{pattern:B,replacement:O}of C.replacements)N=N.replace(B,O);return N}},messages:{"string.alphanum":"{{#label}} must only contain alpha-numeric characters","string.base":"{{#label}} must be a string","string.base64":"{{#label}} must be a valid base64 string","string.creditCard":"{{#label}} must be a credit card","string.dataUri":"{{#label}} must be a valid dataUri string","string.domain":"{{#label}} must contain a valid domain name","string.email":"{{#label}} must be a valid email","string.empty":"{{#label}} is not allowed to be empty","string.guid":"{{#label}} must be a valid GUID","string.hex":"{{#label}} must only contain hexadecimal characters","string.hexAlign":"{{#label}} hex decoded representation must be byte aligned","string.hostname":"{{#label}} must be a valid hostname","string.ip":"{{#label}} must be a valid ip address with a {{#cidr}} CIDR","string.ipVersion":"{{#label}} must be a valid ip address of one of the following versions {{#version}} with a {{#cidr}} CIDR","string.isoDate":"{{#label}} must be in iso format","string.isoDuration":"{{#label}} must be a valid ISO 8601 duration","string.length":"{{#label}} length must be {{#limit}} characters long","string.lowercase":"{{#label}} must only contain lowercase characters","string.max":"{{#label}} length must be less than or equal to {{#limit}} characters long","string.min":"{{#label}} length must be at least {{#limit}} characters long","string.normalize":"{{#label}} must be unicode normalized in the {{#form}} form","string.token":"{{#label}} must only contain alpha-numeric and underscore characters","string.pattern.base":"{{#label}} with value {:[.]} fails to match the required pattern: {{#regex}}","string.pattern.name":"{{#label}} with value {:[.]} fails to match the {{#name}} pattern","string.pattern.invert.base":"{{#label}} with value {:[.]} matches the inverted pattern: {{#regex}}","string.pattern.invert.name":"{{#label}} with value {:[.]} matches the inverted {{#name}} pattern","string.trim":"{{#label}} must not have leading or trailing whitespace","string.uri":"{{#label}} must be a valid uri","string.uriCustomScheme":"{{#label}} must be a valid uri with a scheme matching the {{#scheme}} pattern","string.uriRelativeOnly":"{{#label}} must be a valid relative uri","string.uppercase":"{{#label}} must only contain uppercase characters"}}),R.addressOptions=function(N){if(!N||(f(N.minDomainSegments===void 0||Number.isSafeInteger(N.minDomainSegments)&&N.minDomainSegments>0,"minDomainSegments must be a positive integer"),f(N.maxDomainSegments===void 0||Number.isSafeInteger(N.maxDomainSegments)&&N.maxDomainSegments>0,"maxDomainSegments must be a positive integer"),N.tlds===!1))return N;if(N.tlds===!0||N.tlds===void 0)return f(R.tlds,"Built-in TLD list disabled"),Object.assign({},N,R.tlds);f(typeof N.tlds=="object","tlds must be true, false, or an object");const C=N.tlds.deny;if(C)return Array.isArray(C)&&(N=Object.assign({},N,{tlds:{deny:new Set(C)}})),f(N.tlds.deny instanceof Set,"tlds.deny must be an array, Set, or boolean"),f(!N.tlds.allow,"Cannot specify both tlds.allow and tlds.deny lists"),R.validateTlds(N.tlds.deny,"tlds.deny"),N;const B=N.tlds.allow;return B?B===!0?(f(R.tlds,"Built-in TLD list disabled"),Object.assign({},N,R.tlds)):(Array.isArray(B)&&(N=Object.assign({},N,{tlds:{allow:new Set(B)}})),f(N.tlds.allow instanceof Set,"tlds.allow must be an array, Set, or boolean"),R.validateTlds(N.tlds.allow,"tlds.allow"),N):N},R.validateTlds=function(N,C){for(const B of N)f(u.isValid(B,{minDomainSegments:1,maxDomainSegments:1}),`${C} must contain valid top level domain names`)},R.isoDate=function(N){if(!M.isIsoDate(N))return null;/.*T.*[+-]\d\d$/.test(N)&&(N+="00");const C=new Date(N);return isNaN(C.getTime())?null:C.toISOString()},R.length=function(N,C,B,O,D){return f(!D||!1,"Invalid encoding:",D),N.$_addRule({name:C,method:"length",args:{limit:B,encoding:D},operator:O})}},8826:(s,i,o)=>{const f=o(375),u=o(8068),h={};h.Map=class extends Map{slice(){return new h.Map(this)}},s.exports=u.extend({type:"symbol",terms:{map:{init:new h.Map}},coerce:{method(p,d){let{schema:v,error:w}=d;const A=v.$_terms.map.get(p);return A&&(p=A),v._flags.only&&typeof p!="symbol"?{value:p,errors:w("symbol.map",{map:v.$_terms.map})}:{value:p}}},validate(p,d){let{error:v}=d;if(typeof p!="symbol")return{value:p,errors:v("symbol.base")}},rules:{map:{method(p){p&&!p[Symbol.iterator]&&typeof p=="object"&&(p=Object.entries(p)),f(p&&p[Symbol.iterator],"Iterable must be an iterable or object");const d=this.clone(),v=[];for(const w of p){f(w&&w[Symbol.iterator],"Entry must be an iterable");const[A,M]=w;f(typeof A!="object"&&typeof A!="function"&&typeof A!="symbol","Key must not be of type object, function, or Symbol"),f(typeof M=="symbol","Value must be a Symbol"),d.$_terms.map.set(A,M),v.push(M)}return d.valid(...v)}}},manifest:{build:(p,d)=>(d.map&&(p=p.map(d.map)),p)},messages:{"symbol.base":"{{#label}} must be a symbol","symbol.map":"{{#label}} must be one of {{#map}}"}})},8863:(s,i,o)=>{const f=o(375),u=o(8571),h=o(738),p=o(9621),d=o(8160),v=o(6354),w=o(493),A={result:Symbol("result")};i.entry=function(M,R,N){let C=d.defaults;N&&(f(N.warnings===void 0,"Cannot override warnings preference in synchronous validation"),f(N.artifacts===void 0,"Cannot override artifacts preference in synchronous validation"),C=d.preferences(d.defaults,N));const B=A.entry(M,R,C);f(!B.mainstay.externals.length,"Schema with external rules must use validateAsync()");const O={value:B.value};return B.error&&(O.error=B.error),B.mainstay.warnings.length&&(O.warning=v.details(B.mainstay.warnings)),B.mainstay.debug&&(O.debug=B.mainstay.debug),B.mainstay.artifacts&&(O.artifacts=B.mainstay.artifacts),O},i.entryAsync=async function(M,R,N){let C=d.defaults;N&&(C=d.preferences(d.defaults,N));const B=A.entry(M,R,C),O=B.mainstay;if(B.error)throw O.debug&&(B.error.debug=O.debug),B.error;if(O.externals.length){let q=B.value;for(const{method:W,path:k,label:I}of O.externals){let H,P,T=q;k.length&&(H=k[k.length-1],P=p(q,k.slice(0,-1)),T=P[H]);try{const g=await W(T,{prefs:N});if(g===void 0||g===T)continue;P?P[H]=g:q=g}catch(g){throw C.errors.label&&(g.message+=` (${I})`),g}}B.value=q}if(!C.warnings&&!C.debug&&!C.artifacts)return B.value;const D={value:B.value};return O.warnings.length&&(D.warning=v.details(O.warnings)),O.debug&&(D.debug=O.debug),O.artifacts&&(D.artifacts=O.artifacts),D},A.entry=function(M,R,N){const{tracer:C,cleanup:B}=A.tracer(R,N),O={externals:[],warnings:[],tracer:C,debug:N.debug?[]:null,links:R._ids._schemaChain?new Map:null},D=R._ids._schemaChain?[{schema:R}]:null,q=new w([],[],{mainstay:O,schemas:D}),W=i.validate(M,R,q,N);B&&R.$_root.untrace();const k=v.process(W.errors,M,N);return{value:W.value,error:k,mainstay:O}},A.tracer=function(M,R){return M.$_root._tracer?{tracer:M.$_root._tracer._register(M)}:R.debug?(f(M.$_root.trace,"Debug mode not supported"),{tracer:M.$_root.trace()._register(M),cleanup:!0}):{tracer:A.ignore}},i.validate=function(M,R,N,C){let B=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{};if(R.$_terms.whens&&(R=R._generate(M,N,C).schema),R._preferences&&(C=A.prefs(R,C)),R._cache&&C.cache){const H=R._cache.get(M);if(N.mainstay.tracer.debug(N,"validate","cached",!!H),H)return H}const O=(H,P,T)=>R.$_createError(H,M,P,T||N,C),D={original:M,prefs:C,schema:R,state:N,error:O,errorsArray:A.errorsArray,warn:(H,P,T)=>N.mainstay.warnings.push(O(H,P,T)),message:(H,P)=>R.$_createError("custom",M,P,N,C,{messages:H})};N.mainstay.tracer.entry(R,N);const q=R._definition;if(q.prepare&&M!==void 0&&C.convert){const H=q.prepare(M,D);if(H){if(N.mainstay.tracer.value(N,"prepare",M,H.value),H.errors)return A.finalize(H.value,[].concat(H.errors),D);M=H.value}}if(q.coerce&&M!==void 0&&C.convert&&(!q.coerce.from||q.coerce.from.includes(typeof M))){const H=q.coerce.method(M,D);if(H){if(N.mainstay.tracer.value(N,"coerced",M,H.value),H.errors)return A.finalize(H.value,[].concat(H.errors),D);M=H.value}}const W=R._flags.empty;W&&W.$_match(A.trim(M,R),N.nest(W),d.defaults)&&(N.mainstay.tracer.value(N,"empty",M,void 0),M=void 0);const k=B.presence||R._flags.presence||(R._flags._endedSwitch?null:C.presence);if(M===void 0){if(k==="forbidden")return A.finalize(M,null,D);if(k==="required")return A.finalize(M,[R.$_createError("any.required",M,null,N,C)],D);if(k==="optional"){if(R._flags.default!==d.symbols.deepDefault)return A.finalize(M,null,D);N.mainstay.tracer.value(N,"default",M,{}),M={}}}else if(k==="forbidden")return A.finalize(M,[R.$_createError("any.unknown",M,null,N,C)],D);const I=[];if(R._valids){const H=R._valids.get(M,N,C,R._flags.insensitive);if(H)return C.convert&&(N.mainstay.tracer.value(N,"valids",M,H.value),M=H.value),N.mainstay.tracer.filter(R,N,"valid",H),A.finalize(M,null,D);if(R._flags.only){const P=R.$_createError("any.only",M,{valids:R._valids.values({display:!0})},N,C);if(C.abortEarly)return A.finalize(M,[P],D);I.push(P)}}if(R._invalids){const H=R._invalids.get(M,N,C,R._flags.insensitive);if(H){N.mainstay.tracer.filter(R,N,"invalid",H);const P=R.$_createError("any.invalid",M,{invalids:R._invalids.values({display:!0})},N,C);if(C.abortEarly)return A.finalize(M,[P],D);I.push(P)}}if(q.validate){const H=q.validate(M,D);if(H&&(N.mainstay.tracer.value(N,"base",M,H.value),M=H.value,H.errors)){if(!Array.isArray(H.errors))return I.push(H.errors),A.finalize(M,I,D);if(H.errors.length)return I.push(...H.errors),A.finalize(M,I,D)}}return R._rules.length?A.rules(M,I,D):A.finalize(M,I,D)},A.rules=function(M,R,N){const{schema:C,state:B,prefs:O}=N;for(const D of C._rules){const q=C._definition.rules[D.method];if(q.convert&&O.convert){B.mainstay.tracer.log(C,B,"rule",D.name,"full");continue}let W,k=D.args;if(D._resolve.length){k=Object.assign({},k);for(const H of D._resolve){const P=q.argsByName.get(H),T=k[H].resolve(M,B,O),g=P.normalize?P.normalize(T):T,a=d.validateArg(g,null,P);if(a){W=C.$_createError("any.ref",T,{arg:H,ref:k[H],reason:a},B,O);break}k[H]=g}}W=W||q.validate(M,N,k,D);const I=A.rule(W,D);if(I.errors){if(B.mainstay.tracer.log(C,B,"rule",D.name,"error"),D.warn){B.mainstay.warnings.push(...I.errors);continue}if(O.abortEarly)return A.finalize(M,I.errors,N);R.push(...I.errors)}else B.mainstay.tracer.log(C,B,"rule",D.name,"pass"),B.mainstay.tracer.value(B,"rule",M,I.value,D.name),M=I.value}return A.finalize(M,R,N)},A.rule=function(M,R){return M instanceof v.Report?(A.error(M,R),{errors:[M],value:null}):Array.isArray(M)&&M[d.symbols.errors]?(M.forEach(N=>A.error(N,R)),{errors:M,value:null}):{errors:null,value:M}},A.error=function(M,R){return R.message&&M._setTemplate(R.message),M},A.finalize=function(M,R,N){R=R||[];const{schema:C,state:B,prefs:O}=N;if(R.length){const q=A.default("failover",void 0,R,N);q!==void 0&&(B.mainstay.tracer.value(B,"failover",M,q),M=q,R=[])}if(R.length&&C._flags.error)if(typeof C._flags.error=="function"){R=C._flags.error(R),Array.isArray(R)||(R=[R]);for(const q of R)f(q instanceof Error||q instanceof v.Report,"error() must return an Error object")}else R=[C._flags.error];if(M===void 0){const q=A.default("default",M,R,N);B.mainstay.tracer.value(B,"default",M,q),M=q}if(C._flags.cast&&M!==void 0){const q=C._definition.cast[C._flags.cast];if(q.from(M)){const W=q.to(M,N);B.mainstay.tracer.value(B,"cast",M,W,C._flags.cast),M=W}}if(C.$_terms.externals&&O.externals&&O._externals!==!1)for(const{method:q}of C.$_terms.externals)B.mainstay.externals.push({method:q,path:B.path,label:v.label(C._flags,B,O)});const D={value:M,errors:R.length?R:null};return C._flags.result&&(D.value=C._flags.result==="strip"?void 0:N.original,B.mainstay.tracer.value(B,C._flags.result,M,D.value),B.shadow(M,C._flags.result)),C._cache&&O.cache!==!1&&!C._refs.length&&C._cache.set(N.original,D),M===void 0||D.errors||C._flags.artifact===void 0||(B.mainstay.artifacts=B.mainstay.artifacts||new Map,B.mainstay.artifacts.has(C._flags.artifact)||B.mainstay.artifacts.set(C._flags.artifact,[]),B.mainstay.artifacts.get(C._flags.artifact).push(B.path)),D},A.prefs=function(M,R){const N=R===d.defaults;return N&&M._preferences[d.symbols.prefs]?M._preferences[d.symbols.prefs]:(R=d.preferences(R,M._preferences),N&&(M._preferences[d.symbols.prefs]=R),R)},A.default=function(M,R,N,C){const{schema:B,state:O,prefs:D}=C,q=B._flags[M];if(D.noDefaults||q===void 0)return R;if(O.mainstay.tracer.log(B,O,"rule",M,"full"),!q)return q;if(typeof q=="function"){const W=q.length?[u(O.ancestors[0]),C]:[];try{return q(...W)}catch(k){return void N.push(B.$_createError(`any.${M}`,null,{error:k},O,D))}}return typeof q!="object"?q:q[d.symbols.literal]?q.literal:d.isResolvable(q)?q.resolve(R,O,D):u(q)},A.trim=function(M,R){if(typeof M!="string")return M;const N=R.$_getRule("trim");return N&&N.args.enabled?M.trim():M},A.ignore={active:!1,debug:h,entry:h,filter:h,log:h,resolve:h,value:h},A.errorsArray=function(){const M=[];return M[d.symbols.errors]=!0,M}},2036:(s,i,o)=>{const f=o(375),u=o(9474),h=o(8160),p={};s.exports=p.Values=class{constructor(d,v){this._values=new Set(d),this._refs=new Set(v),this._lowercase=p.lowercases(d),this._override=!1}get length(){return this._values.size+this._refs.size}add(d,v){h.isResolvable(d)?this._refs.has(d)||(this._refs.add(d),v&&v.register(d)):this.has(d,null,null,!1)||(this._values.add(d),typeof d=="string"&&this._lowercase.set(d.toLowerCase(),d))}static merge(d,v,w){if(d=d||new p.Values,v){if(v._override)return v.clone();for(const A of[...v._values,...v._refs])d.add(A)}if(w)for(const A of[...w._values,...w._refs])d.remove(A);return d.length?d:null}remove(d){h.isResolvable(d)?this._refs.delete(d):(this._values.delete(d),typeof d=="string"&&this._lowercase.delete(d.toLowerCase()))}has(d,v,w,A){return!!this.get(d,v,w,A)}get(d,v,w,A){if(!this.length)return!1;if(this._values.has(d))return{value:d};if(typeof d=="string"&&d&&A){const M=this._lowercase.get(d.toLowerCase());if(M)return{value:M}}if(!this._refs.size&&typeof d!="object")return!1;if(typeof d=="object"){for(const M of this._values)if(u(M,d))return{value:M}}if(v)for(const M of this._refs){const R=M.resolve(d,v,w,null,{in:!0});if(R===void 0)continue;const N=M.in&&typeof R=="object"?Array.isArray(R)?R:Object.keys(R):[R];for(const C of N)if(typeof C==typeof d){if(A&&d&&typeof d=="string"){if(C.toLowerCase()===d.toLowerCase())return{value:C,ref:M}}else if(u(C,d))return{value:C,ref:M}}}return!1}override(){this._override=!0}values(d){if(d&&d.display){const v=[];for(const w of[...this._values,...this._refs])w!==void 0&&v.push(w);return v}return Array.from([...this._values,...this._refs])}clone(){const d=new p.Values(this._values,this._refs);return d._override=this._override,d}concat(d){f(!d._override,"Cannot concat override set of values");const v=new p.Values([...this._values,...d._values],[...this._refs,...d._refs]);return v._override=this._override,v}describe(){const d=[];this._override&&d.push({override:!0});for(const v of this._values.values())d.push(v&&typeof v=="object"?{value:v}:v);for(const v of this._refs.values())d.push(v.describe());return d}},p.Values.prototype[h.symbols.values]=!0,p.Values.prototype.slice=p.Values.prototype.clone,p.lowercases=function(d){const v=new Map;if(d)for(const w of d)typeof w=="string"&&v.set(w.toLowerCase(),w);return v}},978:(s,i,o)=>{const f=o(375),u=o(8571),h=o(1687),p=o(9621),d={};s.exports=function(v,w){let A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(f(v&&typeof v=="object","Invalid defaults value: must be an object"),f(!w||w===!0||typeof w=="object","Invalid source value: must be true, falsy or an object"),f(typeof A=="object","Invalid options: must be an object"),!w)return null;if(A.shallow)return d.applyToDefaultsWithShallow(v,w,A);const M=u(v);if(w===!0)return M;const R=A.nullOverride!==void 0&&A.nullOverride;return h(M,w,{nullOverride:R,mergeArrays:!1})},d.applyToDefaultsWithShallow=function(v,w,A){const M=A.shallow;f(Array.isArray(M),"Invalid keys");const R=new Map,N=w===!0?null:new Set;for(let O of M){O=Array.isArray(O)?O:O.split(".");const D=p(v,O);D&&typeof D=="object"?R.set(D,N&&p(w,O)||D):N&&N.add(O)}const C=u(v,{},R);if(!N)return C;for(const O of N)d.reachCopy(C,w,O);const B=A.nullOverride!==void 0&&A.nullOverride;return h(C,w,{nullOverride:B,mergeArrays:!1})},d.reachCopy=function(v,w,A){for(const N of A){if(!(N in w))return;const C=w[N];if(typeof C!="object"||C===null)return;w=C}const M=w;let R=v;for(let N=0;N{const f=o(7916);s.exports=function(u){if(!u){for(var h=arguments.length,p=new Array(h>1?h-1:0),d=1;d{const f=o(9621),u=o(4277),h=o(7043),p={needsProtoHack:new Set([u.set,u.map,u.weakSet,u.weakMap])};s.exports=p.clone=function(d){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;if(typeof d!="object"||d===null)return d;let A=p.clone,M=w;if(v.shallow){if(v.shallow!==!0)return p.cloneWithShallow(d,v);A=B=>B}else if(M){const B=M.get(d);if(B)return B}else M=new Map;const R=u.getInternalProto(d);if(R===u.buffer)return!1;if(R===u.date)return new Date(d.getTime());if(R===u.regex)return new RegExp(d);const N=p.base(d,R,v);if(N===d)return d;if(M&&M.set(d,N),R===u.set)for(const B of d)N.add(A(B,v,M));else if(R===u.map)for(const[B,O]of d)N.set(B,A(O,v,M));const C=h.keys(d,v);for(const B of C){if(B==="__proto__")continue;if(R===u.array&&B==="length"){N.length=d.length;continue}const O=Object.getOwnPropertyDescriptor(d,B);O?O.get||O.set?Object.defineProperty(N,B,O):O.enumerable?N[B]=A(d[B],v,M):Object.defineProperty(N,B,{enumerable:!1,writable:!0,configurable:!0,value:A(d[B],v,M)}):Object.defineProperty(N,B,{enumerable:!0,writable:!0,configurable:!0,value:A(d[B],v,M)})}return N},p.cloneWithShallow=function(d,v){const w=v.shallow;(v=Object.assign({},v)).shallow=!1;const A=new Map;for(const M of w){const R=f(d,M);typeof R!="object"&&typeof R!="function"||A.set(R,R)}return p.clone(d,v,A)},p.base=function(d,v,w){if(w.prototype===!1)return p.needsProtoHack.has(v)?new v.constructor:v===u.array?[]:{};const A=Object.getPrototypeOf(d);if(A&&A.isImmutable)return d;if(v===u.array){const M=[];return A!==v&&Object.setPrototypeOf(M,A),M}if(p.needsProtoHack.has(v)){const M=new A.constructor;return A!==v&&Object.setPrototypeOf(M,A),M}return Object.create(A)}},9474:(s,i,o)=>{const f=o(4277),u={mismatched:null};s.exports=function(h,p,d){return d=Object.assign({prototype:!0},d),!!u.isDeepEqual(h,p,d,[])},u.isDeepEqual=function(h,p,d,v){if(h===p)return h!==0||1/h==1/p;const w=typeof h;if(w!==typeof p||h===null||p===null)return!1;if(w==="function"){if(!d.deepFunction||h.toString()!==p.toString())return!1}else if(w!=="object")return h!=h&&p!=p;const A=u.getSharedType(h,p,!!d.prototype);switch(A){case f.buffer:return!1;case f.promise:return h===p;case f.regex:return h.toString()===p.toString();case u.mismatched:return!1}for(let M=v.length-1;M>=0;--M)if(v[M].isSame(h,p))return!0;v.push(new u.SeenEntry(h,p));try{return!!u.isDeepEqualObj(A,h,p,d,v)}finally{v.pop()}},u.getSharedType=function(h,p,d){if(d)return Object.getPrototypeOf(h)!==Object.getPrototypeOf(p)?u.mismatched:f.getInternalProto(h);const v=f.getInternalProto(h);return v!==f.getInternalProto(p)?u.mismatched:v},u.valueOf=function(h){const p=h.valueOf;if(p===void 0)return h;try{return p.call(h)}catch(d){return d}},u.hasOwnEnumerableProperty=function(h,p){return Object.prototype.propertyIsEnumerable.call(h,p)},u.isSetSimpleEqual=function(h,p){for(const d of Set.prototype.values.call(h))if(!Set.prototype.has.call(p,d))return!1;return!0},u.isDeepEqualObj=function(h,p,d,v,w){const{isDeepEqual:A,valueOf:M,hasOwnEnumerableProperty:R}=u,{keys:N,getOwnPropertySymbols:C}=Object;if(h===f.array){if(!v.part){if(p.length!==d.length)return!1;for(let W=0;W{const f=o(8761);s.exports=class extends Error{constructor(u){super(u.filter(h=>h!=="").map(h=>typeof h=="string"?h:h instanceof Error?h.message:f(h)).join(" ")||"Unknown error"),typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,i.assert)}}},5277:s=>{const i={};s.exports=function(o){if(!o)return"";let f="";for(let u=0;u=256?"&#"+o+";":`&#x${o.toString(16).padStart(2,"0")};`)},i.isSafe=function(o){return i.safeCharCodes.has(o)},i.namedHtml=new Map([[38,"&"],[60,"<"],[62,">"],[34,"""],[160," "],[162,"¢"],[163,"£"],[164,"¤"],[169,"©"],[174,"®"]]),i.safeCharCodes=function(){const o=new Set;for(let f=32;f<123;++f)(f>=97||f>=65&&f<=90||f>=48&&f<=57||f===32||f===46||f===44||f===45||f===58||f===95)&&o.add(f);return o}()},6064:s=>{s.exports=function(i){return i.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")}},738:s=>{s.exports=function(){}},1687:(s,i,o)=>{const f=o(375),u=o(8571),h=o(7043),p={};s.exports=p.merge=function(d,v,w){if(f(d&&typeof d=="object","Invalid target value: must be an object"),f(v==null||typeof v=="object","Invalid source value: must be null, undefined, or an object"),!v)return d;if(w=Object.assign({nullOverride:!0,mergeArrays:!0},w),Array.isArray(v)){f(Array.isArray(d),"Cannot merge array onto an object"),w.mergeArrays||(d.length=0);for(let M=0;M{const f=o(375),u={};s.exports=function(h,p,d){if(p===!1||p==null)return h;typeof(d=d||{})=="string"&&(d={separator:d});const v=Array.isArray(p);f(!v||!d.separator,"Separator option is not valid for array-based chain");const w=v?p:p.split(d.separator||".");let A=h;for(let M=0;M{s.exports=function(){try{return JSON.stringify(...arguments)}catch(i){return"[Cannot display object: "+i.message+"]"}}},4277:(s,i)=>{const o={};i=s.exports={array:Array.prototype,buffer:!1,date:Date.prototype,error:Error.prototype,generic:Object.prototype,map:Map.prototype,promise:Promise.prototype,regex:RegExp.prototype,set:Set.prototype,weakMap:WeakMap.prototype,weakSet:WeakSet.prototype},o.typeMap=new Map([["[object Error]",i.error],["[object Map]",i.map],["[object Promise]",i.promise],["[object Set]",i.set],["[object WeakMap]",i.weakMap],["[object WeakSet]",i.weakSet]]),i.getInternalProto=function(f){if(Array.isArray(f))return i.array;if(f instanceof Date)return i.date;if(f instanceof RegExp)return i.regex;if(f instanceof Error)return i.error;const u=Object.prototype.toString.call(f);return o.typeMap.get(u)||i.generic}},7043:(s,i)=>{i.keys=function(o){return(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).symbols!==!1?Reflect.ownKeys(o):Object.getOwnPropertyNames(o)}},3652:(s,i,o)=>{const f=o(375),u={};i.Sorter=class{constructor(){this._items=[],this.nodes=[]}add(h,p){const d=[].concat((p=p||{}).before||[]),v=[].concat(p.after||[]),w=p.group||"?",A=p.sort||0;f(!d.includes(w),`Item cannot come before itself: ${w}`),f(!d.includes("?"),"Item cannot come before unassociated items"),f(!v.includes(w),`Item cannot come after itself: ${w}`),f(!v.includes("?"),"Item cannot come after unassociated items"),Array.isArray(h)||(h=[h]);for(const M of h){const R={seq:this._items.length,sort:A,before:d,after:v,group:w,node:M};this._items.push(R)}if(!p.manual){const M=this._sort();f(M,"item",w!=="?"?`added into group ${w}`:"","created a dependencies error")}return this.nodes}merge(h){Array.isArray(h)||(h=[h]);for(const d of h)if(d)for(const v of d._items)this._items.push(Object.assign({},v));this._items.sort(u.mergeSort);for(let d=0;dh.sort===p.sort?0:h.sort{const f=o(443),u=o(2178),h={minDomainSegments:2,nonAsciiRx:/[^\x00-\x7f]/,domainControlRx:/[\x00-\x20@\:\/\\#!\$&\'\(\)\*\+,;=\?]/,tldSegmentRx:/^[a-zA-Z](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,domainSegmentRx:/^[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,URL:f.URL||URL};i.analyze=function(p){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!p)return u.code("DOMAIN_NON_EMPTY_STRING");if(typeof p!="string")throw new Error("Invalid input: domain must be a string");if(p.length>256)return u.code("DOMAIN_TOO_LONG");if(h.nonAsciiRx.test(p)){if(d.allowUnicode===!1)return u.code("DOMAIN_INVALID_UNICODE_CHARS");p=p.normalize("NFC")}if(h.domainControlRx.test(p))return u.code("DOMAIN_INVALID_CHARS");p=h.punycode(p),d.allowFullyQualified&&p[p.length-1]==="."&&(p=p.slice(0,-1));const v=d.minDomainSegments||h.minDomainSegments,w=p.split(".");if(w.lengthd.maxDomainSegments)return u.code("DOMAIN_SEGMENTS_COUNT_MAX");const A=d.tlds;if(A){const M=w[w.length-1].toLowerCase();if(A.deny&&A.deny.has(M)||A.allow&&!A.allow.has(M))return u.code("DOMAIN_FORBIDDEN_TLDS")}for(let M=0;M63)return u.code("DOMAIN_LONG_SEGMENT");if(M{const f=o(9848),u=o(5380),h=o(2178),p={nonAsciiRx:/[^\x00-\x7f]/,encoder:new(f.TextEncoder||TextEncoder)};i.analyze=function(d,v){return p.email(d,v)},i.isValid=function(d,v){return!p.email(d,v)},p.email=function(d){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(typeof d!="string")throw new Error("Invalid input: email must be a string");if(!d)return h.code("EMPTY_STRING");const w=!p.nonAsciiRx.test(d);if(!w){if(v.allowUnicode===!1)return h.code("FORBIDDEN_UNICODE");d=d.normalize("NFC")}const A=d.split("@");if(A.length!==2)return A.length>2?h.code("MULTIPLE_AT_CHAR"):h.code("MISSING_AT_CHAR");const[M,R]=A;if(!M)return h.code("EMPTY_LOCAL");if(!v.ignoreLength){if(d.length>254)return h.code("ADDRESS_TOO_LONG");if(p.encoder.encode(M).length>64)return h.code("LOCAL_TOO_LONG")}return p.local(M,w)||u.analyze(R,v)},p.local=function(d,v){const w=d.split(".");for(const A of w){if(!A.length)return h.code("EMPTY_LOCAL_SEGMENT");if(v){if(!p.atextRx.test(A))return h.code("INVALID_LOCAL_CHARS")}else for(const M of A){if(p.atextRx.test(M))continue;const R=p.binary(M);if(!p.atomRx.test(R))return h.code("INVALID_LOCAL_CHARS")}}},p.binary=function(d){return Array.from(p.encoder.encode(d)).map(v=>String.fromCharCode(v)).join("")},p.atextRx=/^[\w!#\$%&'\*\+\-/=\?\^`\{\|\}~]+$/,p.atomRx=new RegExp(["(?:[\\xc2-\\xdf][\\x80-\\xbf])","(?:\\xe0[\\xa0-\\xbf][\\x80-\\xbf])|(?:[\\xe1-\\xec][\\x80-\\xbf]{2})|(?:\\xed[\\x80-\\x9f][\\x80-\\xbf])|(?:[\\xee-\\xef][\\x80-\\xbf]{2})","(?:\\xf0[\\x90-\\xbf][\\x80-\\xbf]{2})|(?:[\\xf1-\\xf3][\\x80-\\xbf]{3})|(?:\\xf4[\\x80-\\x8f][\\x80-\\xbf]{2})"].join("|"))},2178:(s,i)=>{i.codes={EMPTY_STRING:"Address must be a non-empty string",FORBIDDEN_UNICODE:"Address contains forbidden Unicode characters",MULTIPLE_AT_CHAR:"Address cannot contain more than one @ character",MISSING_AT_CHAR:"Address must contain one @ character",EMPTY_LOCAL:"Address local part cannot be empty",ADDRESS_TOO_LONG:"Address too long",LOCAL_TOO_LONG:"Address local part too long",EMPTY_LOCAL_SEGMENT:"Address local part contains empty dot-separated segment",INVALID_LOCAL_CHARS:"Address local part contains invalid character",DOMAIN_NON_EMPTY_STRING:"Domain must be a non-empty string",DOMAIN_TOO_LONG:"Domain too long",DOMAIN_INVALID_UNICODE_CHARS:"Domain contains forbidden Unicode characters",DOMAIN_INVALID_CHARS:"Domain contains invalid character",DOMAIN_INVALID_TLDS_CHARS:"Domain contains invalid tld character",DOMAIN_SEGMENTS_COUNT:"Domain lacks the minimum required number of segments",DOMAIN_SEGMENTS_COUNT_MAX:"Domain contains too many segments",DOMAIN_FORBIDDEN_TLDS:"Domain uses forbidden TLD",DOMAIN_EMPTY_SEGMENT:"Domain contains empty dot-separated segment",DOMAIN_LONG_SEGMENT:"Domain contains dot-separated segment that is too long"},i.code=function(o){return{code:o,error:i.codes[o]}}},9959:(s,i,o)=>{const f=o(375),u=o(5752);i.regex=function(){let h=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};f(h.cidr===void 0||typeof h.cidr=="string","options.cidr must be a string");const p=h.cidr?h.cidr.toLowerCase():"optional";f(["required","optional","forbidden"].includes(p),"options.cidr must be one of required, optional, forbidden"),f(h.version===void 0||typeof h.version=="string"||Array.isArray(h.version),"options.version must be a string or an array of string");let d=h.version||["ipv4","ipv6","ipvfuture"];Array.isArray(d)||(d=[d]),f(d.length>=1,"options.version must have at least 1 version specified");for(let A=0;A{if(p==="forbidden")return u.ip[A];const M=`\\/${A==="ipv4"?u.ip.v4Cidr:u.ip.v6Cidr}`;return p==="required"?`${u.ip[A]}${M}`:`${u.ip[A]}(?:${M})?`}).join("|")})`,w=new RegExp(`^${v}$`);return{cidr:p,versions:d,regex:w,raw:v}}},5752:(s,i,o)=>{const f=o(375),u=o(6064),h={generate:function(){const p={},d="\\dA-Fa-f",v="["+d+"]",w="\\w-\\.~",A="!\\$&'\\(\\)\\*\\+,;=",M="%"+d,R=w+M+A+":@",N="["+R+"]",C="(?:0{0,2}\\d|0?[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])";p.ipv4address="(?:"+C+"\\.){3}"+C;const B=v+"{1,4}",O="(?:"+B+":"+B+"|"+p.ipv4address+")",D="(?:"+B+":){6}"+O,q="::(?:"+B+":){5}"+O,W="(?:"+B+")?::(?:"+B+":){4}"+O,k="(?:(?:"+B+":){0,1}"+B+")?::(?:"+B+":){3}"+O,I="(?:(?:"+B+":){0,2}"+B+")?::(?:"+B+":){2}"+O,H="(?:(?:"+B+":){0,3}"+B+")?::"+B+":"+O,P="(?:(?:"+B+":){0,4}"+B+")?::"+O,T="(?:(?:"+B+":){0,5}"+B+")?::"+B,g="(?:(?:"+B+":){0,6}"+B+")?::";p.ipv4Cidr="(?:\\d|[1-2]\\d|3[0-2])",p.ipv6Cidr="(?:0{0,2}\\d|0?[1-9]\\d|1[01]\\d|12[0-8])",p.ipv6address="(?:"+D+"|"+q+"|"+W+"|"+k+"|"+I+"|"+H+"|"+P+"|"+T+"|"+g+")",p.ipvFuture="v"+v+"+\\.["+w+A+":]+",p.scheme="[a-zA-Z][a-zA-Z\\d+-\\.]*",p.schemeRegex=new RegExp(p.scheme);const a="["+w+M+A+":]*",c="["+w+M+A+"]{1,255}",m="(?:\\[(?:"+p.ipv6address+"|"+p.ipvFuture+")\\]|"+p.ipv4address+"|"+c+")",b="(?:"+a+"@)?"+m+"(?::\\d*)?",x="(?:"+a+"@)?("+m+")(?::\\d*)?",_=N+"*",S=N+"+",y="(?:\\/"+_+")*",l="\\/(?:"+S+y+")?",E=S+y,Y="["+w+M+A+"@]+"+y,L="(?:\\/\\/\\/"+_+y+")";return p.hierPart="(?:(?:\\/\\/"+b+y+")|"+l+"|"+E+"|"+L+")",p.hierPartCapture="(?:(?:\\/\\/"+x+y+")|"+l+"|"+E+")",p.relativeRef="(?:(?:\\/\\/"+b+y+")|"+l+"|"+Y+"|)",p.relativeRefCapture="(?:(?:\\/\\/"+x+y+")|"+l+"|"+Y+"|)",p.query="["+R+"\\/\\?]*(?=#|$)",p.queryWithSquareBrackets="["+R+"\\[\\]\\/\\?]*(?=#|$)",p.fragment="["+R+"\\/\\?]*",p}};h.rfc3986=h.generate(),i.ip={v4Cidr:h.rfc3986.ipv4Cidr,v6Cidr:h.rfc3986.ipv6Cidr,ipv4:h.rfc3986.ipv4address,ipv6:h.rfc3986.ipv6address,ipvfuture:h.rfc3986.ipvFuture},h.createRegex=function(p){const d=h.rfc3986,v="(?:\\?"+(p.allowQuerySquareBrackets?d.queryWithSquareBrackets:d.query)+")?(?:#"+d.fragment+")?",w=p.domain?d.relativeRefCapture:d.relativeRef;if(p.relativeOnly)return h.wrap(w+v);let A="";if(p.scheme){f(p.scheme instanceof RegExp||typeof p.scheme=="string"||Array.isArray(p.scheme),"scheme must be a RegExp, String, or Array");const N=[].concat(p.scheme);f(N.length>=1,"scheme must have at least 1 scheme specified");const C=[];for(let B=0;B0&&arguments[0]!==void 0?arguments[0]:{};return p.scheme||p.allowRelative||p.relativeOnly||p.allowQuerySquareBrackets||p.domain?h.createRegex(p):h.uriRegex}},1447:(s,i)=>{const o={operators:["!","^","*","/","%","+","-","<","<=",">",">=","==","!=","&&","||","??"],operatorCharacters:["!","^","*","/","%","+","-","<","=",">","&","|","?"],operatorsOrder:[["^"],["*","/","%"],["+","-"],["<","<=",">",">="],["==","!="],["&&"],["||","??"]],operatorsPrefix:["!","n"],literals:{'"':'"',"`":"`","'":"'","[":"]"},numberRx:/^(?:[0-9]*(\.[0-9]*)?){1}$/,tokenRx:/^[\w\$\#\.\@\:\{\}]+$/,symbol:Symbol("formula"),settings:Symbol("settings")};i.Parser=class{constructor(f){let u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!u[o.settings]&&u.constants)for(const h in u.constants){const p=u.constants[h];if(p!==null&&!["boolean","number","string"].includes(typeof p))throw new Error(`Formula constant ${h} contains invalid ${typeof p} value type`)}this.settings=u[o.settings]?u:Object.assign({[o.settings]:!0,constants:{},functions:{}},u),this.single=null,this._parts=null,this._parse(f)}_parse(f){let u=[],h="",p=0,d=!1;const v=A=>{if(p)throw new Error("Formula missing closing parenthesis");const M=u.length?u[u.length-1]:null;if(d||h||A){if(M&&M.type==="reference"&&A===")")return M.type="function",M.value=this._subFormula(h,M.value),void(h="");if(A===")"){const R=new i.Parser(h,this.settings);u.push({type:"segment",value:R})}else if(d){if(d==="]")return u.push({type:"reference",value:h}),void(h="");u.push({type:"literal",value:h})}else if(o.operatorCharacters.includes(h))M&&M.type==="operator"&&o.operators.includes(M.value+h)?M.value+=h:u.push({type:"operator",value:h});else if(h.match(o.numberRx))u.push({type:"constant",value:parseFloat(h)});else if(this.settings.constants[h]!==void 0)u.push({type:"constant",value:this.settings.constants[h]});else{if(!h.match(o.tokenRx))throw new Error(`Formula contains invalid token: ${h}`);u.push({type:"reference",value:h})}h=""}};for(const A of f)d?A===d?(v(),d=!1):h+=A:p?A==="("?(h+=A,++p):A===")"?(--p,p?h+=A:v(A)):h+=A:A in o.literals?d=o.literals[A]:A==="("?(v(),++p):o.operatorCharacters.includes(A)?(v(),h=A,v()):A!==" "?h+=A:v();v(),u=u.map((A,M)=>A.type!=="operator"||A.value!=="-"||M&&u[M-1].type!=="operator"?A:{type:"operator",value:"n"});let w=!1;for(const A of u){if(A.type==="operator"){if(o.operatorsPrefix.includes(A.value))continue;if(!w)throw new Error("Formula contains an operator in invalid position");if(!o.operators.includes(A.value))throw new Error(`Formula contains an unknown operator ${A.value}`)}else if(w)throw new Error("Formula missing expected operator");w=!w}if(!w)throw new Error("Formula contains invalid trailing operator");u.length===1&&["reference","literal","constant"].includes(u[0].type)&&(this.single={type:u[0].type==="reference"?"reference":"value",value:u[0].value}),this._parts=u.map(A=>{if(A.type==="operator")return o.operatorsPrefix.includes(A.value)?A:A.value;if(A.type!=="reference")return A.value;if(this.settings.tokenRx&&!this.settings.tokenRx.test(A.value))throw new Error(`Formula contains invalid reference ${A.value}`);return this.settings.reference?this.settings.reference(A.value):o.reference(A.value)})}_subFormula(f,u){const h=this.settings.functions[u];if(typeof h!="function")throw new Error(`Formula contains unknown function ${u}`);let p=[];if(f){let d="",v=0,w=!1;const A=()=>{if(!d)throw new Error(`Formula contains function ${u} with invalid arguments ${f}`);p.push(d),d=""};for(let M=0;Mnew i.Parser(d,this.settings)),function(d){const v=[];for(const w of p)v.push(w.evaluate(d));return h.call(d,...v)}}evaluate(f){const u=this._parts.slice();for(let h=u.length-2;h>=0;--h){const p=u[h];if(p&&p.type==="operator"){const d=u[h+1];u.splice(h+1,1);const v=o.evaluate(d,f);u[h]=o.single(p.value,v)}}return o.operatorsOrder.forEach(h=>{for(let p=1;p":return u>h;case">=":return u>=h;case"==":return u===h;case"!=":return u!==h;case"&&":return u&&h;case"||":return u||h}return null},o.exists=function(f){return f!=null}},9926:()=>{},5688:()=>{},9708:()=>{},1152:()=>{},443:()=>{},9848:()=>{},5934:s=>{s.exports={version:"17.8.3"}}},n={},function s(i){var o=n[i];if(o!==void 0)return o.exports;var f=n[i]={exports:{}};return r[i](f,f.exports,s),f.exports}(5107);var r,n})})(vT);const de=ew;function qn(t,e){const r=t.validate(e);return r.error?r:null}const LA=de.alternatives().try(de.string().pattern(/^0x[0-9a-fA-F]+$/),de.number().positive()),DA=de.string().valid("evm"),yT=de.object({url:de.string().required(),headers:de.object(),user:de.string(),password:de.string(),allowInsecureAuthentication:de.boolean(),allowGzip:de.boolean(),throttleLimit:de.number(),throttleSlotInterval:de.number(),throttleCallback:de.function(),timeout:de.number()}),bT=de.object({namespace:DA,id:LA.required(),rpcUrl:de.string().required(),label:de.string().required(),token:de.string().required(),icon:de.string(),color:de.string(),publicRpcUrl:de.string(),blockExplorerUrl:de.string(),providerConnectionInfoValidation:yT}),zn=null;function Do(t,e){return async()=>({provider:window.ethereum.providers&&Array.isArray(window.ethereum.providers)?wT(t,e):window.ethereum})}function wT(t,e){return window.ethereum.providers.find(r=>e?!!r[t]&&!E9(t,r):!!r[t])}function E9(t,e){return Object.values(wt).filter(n=>n!==t&&n!==wt.Detected).some(n=>!!e[n])}const AT={label:Ft.MetaMask,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.MetaMask]&&!E9(wt.MetaMask,t),getIcon:async()=>(await vt(()=>import("./metamask-1c685b94.js"),[])).default,getInterface:Do(wt.MetaMask,!0),platforms:["all"]},xT={label:Ft.Exodus,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Exodus],getIcon:async()=>(await vt(()=>import("./exodus-358b5e9e.js"),[])).default,getInterface:Do(wt.Exodus),platforms:["all"]},ET={label:Ft.Frontier,injectedNamespace:Tt.Frontier,checkProviderIdentity:({provider:t})=>!!t&&!!t.ethereum&&!!t.ethereum[wt.Frontier],getIcon:async()=>(await vt(()=>import("./frontier-035eb74c.js"),[])).default,getInterface:async()=>({provider:Sn(window.frontier.ethereum)}),platforms:["all"]},MT={label:Ft.Brave,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.BraveWallet],getIcon:async()=>(await vt(()=>import("./brave-889178d1.js"),[])).default,getInterface:Do(wt.BraveWallet),platforms:["all"]},ST={label:Ft.Binance,injectedNamespace:Tt.Binance,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Binance],getIcon:async()=>(await vt(()=>import("./binance-aad6707a.js"),[])).default,getInterface:async()=>{let t={...window.BinanceChain};window.BinanceChain=t;const e=window.BinanceChain.on.bind(window.BinanceChain);window.BinanceChain.on=(n,s)=>{n==="chainChanged"?e(n,i=>{s(`0x${parseInt(i).toString(16)}`)}):e(n,s)};const r=Sn(window.BinanceChain,{eth_chainId:({baseRequest:n})=>n({method:"eth_chainId"}).then(s=>`0x${parseInt(s).toString(16)}`),eth_selectAccounts:zn,wallet_switchEthereumChain:zn});return r.removeListener=(n,s)=>{},{provider:r}},platforms:["desktop"]},_T={label:Ft.Coinbase,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Coinbase]||!!t&&!!t[wt.CoinbaseExtension],getIcon:async()=>(await vt(()=>import("./coinbase-8194cd0a.js"),[])).default,getInterface:async()=>{const{provider:t}=await Do(wt.CoinbaseExtension)(),e=t.on.bind(t);return t.on=(r,n)=>{r==="chainChanged"?e(r,s=>{n(`0x${parseInt(s).toString(16)}`)}):e(r,n)},{provider:t}},platforms:["all"]},RT={label:Ft.Detected,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Detected],getIcon:async()=>(await vt(()=>import("./detected-641a4aef.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["all"]},NT={label:Ft.Trust,injectedNamespace:Tt.Trust,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Trust],getIcon:async()=>(await vt(()=>import("./trust-59d19f99.js"),[])).default,getInterface:async()=>{const t=window.hasOwnProperty(Tt.Ethereum);let e;return t&&window[Tt.Ethereum].isTrust?e=window[Tt.Ethereum]:e=window[Tt.Trust],{provider:e}},platforms:["all"]},CT={label:Ft.Opera,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Opera],getIcon:async()=>(await vt(()=>import("./opera-02e3a0e8.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{eth_requestAccounts:async({baseRequest:t})=>t({method:"eth_accounts"}),eth_selectAccounts:zn})}),platforms:["all"]},TT={label:Ft.Status,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Status],getIcon:async()=>(await vt(()=>import("./status-049055fb.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["mobile"]},kT={label:Ft.AlphaWallet,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.AlphaWallet],getIcon:async()=>(await vt(()=>import("./alphawallet-eb2bedab.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn})}),platforms:["mobile"]},BT={label:Ft.ApexWallet,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.ApexWallet],getIcon:async()=>(await vt(()=>import("./apexwallet-ea5f0b2c.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["desktop","Chrome","Chromium","Microsoft Edge"]},IT={label:Ft.AToken,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.AToken],getIcon:async()=>(await vt(()=>import("./atoken-f422e6b4.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["mobile"]},PT={label:Ft.BifrostWallet,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.BifrostWallet],getIcon:async()=>(await vt(()=>import("./bifrostwallet-b2843d3a.js"),[])).default,getInterface:Do(wt.BifrostWallet),platforms:["all"]},OT={label:Ft.Bitpie,injectedNamespace:Tt.Ethereum,checkProviderIdentity:()=>!!window.Bitpie,getIcon:async()=>(await vt(()=>import("./bitpie-8ea44eae.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn})}),platforms:["mobile"]},LT={label:Ft.BlockWallet,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.BlockWallet],getIcon:async()=>(await vt(()=>import("./blockwallet-1235c6b8.js"),[])).default,getInterface:Do(wt.BlockWallet),platforms:["desktop"]},DT={label:Ft.Frame,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Frame],getIcon:async()=>(await vt(()=>import("./frame-48635667.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["desktop"]},FT={label:Ft.HuobiWallet,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.HuobiWallet],getIcon:async()=>(await vt(()=>import("./huobiwallet-c6da4601.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn})}),platforms:["mobile"]},UT={label:Ft.HyperPay,injectedNamespace:Tt.Ethereum,checkProviderIdentity:()=>!!window.hiWallet,getIcon:async()=>(await vt(()=>import("./hyperpay-75c22b59.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn})}),platforms:["mobile"]},HT={label:Ft.ImToken,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.ImToken],getIcon:async()=>(await vt(()=>import("./imtoken-4be0a845.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn})}),platforms:["mobile"]},jT={label:Ft.Liquality,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Liquality],getIcon:async()=>(await vt(()=>import("./liquality-0e245cbb.js"),[])).default,getInterface:async()=>{const t=Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn});return t.removeListener=(e,r)=>{},{provider:t}},platforms:["desktop"]},zT={label:Ft.MeetOne,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&t[wt.MeetOne]==="MEETONE",getIcon:async()=>(await vt(()=>import("./meetone-d2b0ac23.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["mobile"]},KT={label:Ft.MyKey,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.MyKey],getIcon:async()=>(await vt(()=>import("./mykey-4e0c6565.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["mobile"]},qT={label:Ft.OwnBit,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.OwnBit],getIcon:async()=>(await vt(()=>import("./ownbit-fa6734bd.js"),[])).default,getInterface:async()=>{const t=Sn(window.ethereum,{eth_chainId:({baseRequest:e})=>e({method:"eth_chainId"}).then(r=>`0x${parseInt(r).toString(16)}`),wallet_switchEthereumChain:zn,eth_selectAccounts:zn});return t.removeListener=(e,r)=>{},t.on=(e,r)=>{},{provider:t}},platforms:["mobile"]},GT={label:Ft.TokenPocket,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.TokenPocket]&&!t[wt.TP],getIcon:async()=>(await vt(()=>import("./tokenpocket-a7e81129.js"),[])).default,getInterface:Do(wt.TokenPocket),platforms:["all"]},VT={label:Ft.TP,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.TP],getIcon:async()=>(await vt(()=>import("./tp-4b793710.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum,{wallet_switchEthereumChain:zn,eth_selectAccounts:zn})}),platforms:["mobile"]},WT={label:Ft.XDEFI,injectedNamespace:Tt.XFI,checkProviderIdentity:({provider:t})=>t&&t.ethereum&&t.ethereum[wt.XDEFI],getIcon:async()=>(await vt(()=>import("./xdefi-07e71929.js"),[])).default,getInterface:async()=>({provider:window.xfi&&window.xfi.ethereum}),platforms:["all"]},ZT={label:Ft.OneInch,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.OneInch],getIcon:async()=>(await vt(()=>import("./oneInch-104b3cc4.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum)}),platforms:["mobile"]},YT={label:Ft.Tokenary,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Tokenary],getIcon:async()=>(await vt(()=>import("./tokenary-f771c254.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum)}),platforms:["all"]},QT={label:Ft.Tally,injectedNamespace:Tt.Tally,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Tally],getIcon:async()=>(await vt(()=>import("./tallywallet-a671320d.js"),[])).default,getInterface:async()=>({provider:Sn(window.tally)}),platforms:["desktop"]},XT={label:Ft.Zeal,injectedNamespace:Tt.Zeal,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Zeal],getIcon:async()=>(await vt(()=>import("./zeal-8b158173.js"),[])).default,getInterface:async()=>({provider:Sn(window.zeal)}),platforms:["desktop"]},JT={label:Ft.Rabby,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Rabby],getIcon:async()=>(await vt(()=>import("./rabby-fc161279.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum)}),platforms:["desktop"]},$T={label:Ft.MathWallet,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.MathWallet],getIcon:async()=>(await vt(()=>import("./mathwallet-ff05f48e.js"),[])).default,getInterface:Do(wt.MathWallet),platforms:["all"]},ek={label:Ft.GameStop,injectedNamespace:Tt.GameStop,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.GameStop],getIcon:async()=>(await vt(()=>import("./gamestop-0e4c1409.js"),[])).default,getInterface:async()=>{const t=Sn(window.gamestop,{eth_chainId:({baseRequest:e})=>e({method:"eth_chainId"}).then(r=>`0x${parseInt(r).toString(16)}`),wallet_switchEthereumChain:zn});return t.removeListener=(e,r)=>{},t.on=(e,r)=>{},{provider:t}},platforms:["desktop"]},tk={label:Ft.BitKeep,injectedNamespace:Tt.BitKeep,checkProviderIdentity:({provider:t})=>!!t&&!!t.ethereum[wt.BitKeep],getIcon:async()=>(await vt(()=>import("./bitkeep-8077dcef.js"),[])).default,getInterface:async()=>({provider:window.bitkeep&&window.bitkeep.ethereum}),platforms:["all"]},rk={label:Ft.Sequence,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Sequence],getIcon:async()=>(await vt(()=>import("./sequence-c07eb3ae.js"),[])).default,getInterface:async()=>({provider:window.ethereum}),platforms:["all"]},nk={label:Ft.Core,injectedNamespace:Tt.Avalanche,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Core],getIcon:async()=>(await vt(()=>import("./core-1c42229d.js"),[])).default,getInterface:Do(wt.Core),platforms:["desktop","Chrome","Chromium","Microsoft Edge"]},ik={label:Ft.Bitski,injectedNamespace:Tt.Bitski,checkProviderIdentity:({provider:t})=>!!t&&!!t.getProvider&&!!t.getProvider().isBitski,getIcon:async()=>(await vt(()=>import("./bitski-220980c2.js"),[])).default,getInterface:async()=>({provider:window.Bitski&&window.Bitski.getProvider&&window.Bitski.getProvider()}),platforms:["all"]},sk={label:Ft.Zerion,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Zerion],getIcon:async()=>(await vt(()=>import("./zerion-d2dfe88d.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum)}),platforms:["all"]},ak={label:Ft.Enkrypt,injectedNamespace:Tt.Enkrypt,checkProviderIdentity:({provider:t})=>!!t&&!!t.providers&&!!t.providers.ethereum,getIcon:async()=>(await vt(()=>import("./enkrypt-b1f25ae2.js"),[])).default,getInterface:async()=>{const t=window.enkrypt.providers.ethereum.on.bind(window.enkrypt.providers.ethereum);window.enkrypt.providers.ethereum.on=(r,n)=>{r==="chainChanged"?t(r,s=>{n(`0x${parseInt(s).toString(16)}`)}):t(r,n)};const e=Sn(window.enkrypt.providers.ethereum,{eth_chainId:({baseRequest:r})=>r({method:"eth_chainId"}).then(n=>`0x${parseInt(n).toString(16)}`)});return e.removeListener=(r,n)=>{},{provider:e}},platforms:["all"]},ok={label:Ft.Phantom,injectedNamespace:Tt.Phantom,checkProviderIdentity:({provider:t})=>!!t&&!!t.ethereum&&!!t.ethereum[wt.Phantom],getIcon:async()=>(await vt(()=>import("./phantom-9b3bd709.js"),[])).default,getInterface:async()=>({provider:Sn(window.phantom.ethereum)}),platforms:["all"]},fk={label:Ft.SafePal,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.SafePal],getIcon:async()=>(await vt(()=>import("./safepal-7fa6b910.js"),[])).default,getInterface:async()=>({provider:Sn(window.ethereum)}),platforms:["all"]},lk={label:Ft.Rainbow,injectedNamespace:Tt.Ethereum,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.Rainbow],getIcon:async()=>(await vt(()=>import("./rainbow-1fe0d81a.js"),[])).default,getInterface:Do(wt.Rainbow),platforms:["all"]},ck={label:Ft.OKXWallet,injectedNamespace:Tt.OKXWallet,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.OKXWallet],getIcon:async()=>(await vt(()=>import("./okxwallet-1c6a2600.js"),[])).default,getInterface:async()=>({provider:Sn(window.okxwallet)}),platforms:["desktop"]},uk={label:Ft.DeFiWallet,injectedNamespace:Tt.DeFiConnectProvider,checkProviderIdentity:({provider:t})=>!!t&&!!t[wt.DeFiWallet],getIcon:async()=>(await vt(()=>import("./defiwallet-99978b81.js"),[])).default,getInterface:async()=>({provider:Sn(window.deficonnectProvider)}),platforms:["all"]},hk=[XT,xT,ET,AT,PT,ST,_T,RT,NT,CT,TT,kT,BT,IT,OT,LT,MT,DT,FT,UT,HT,jT,zT,KT,qT,GT,VT,WT,ZT,YT,QT,JT,$T,ek,tk,rk,nk,ik,ak,ok,ck,sk,lk,fk,uk],dk=de.object({label:de.string().required(),getIcon:de.function().arity(0).required(),getInterface:de.function().maxArity(1).required(),injectedNamespace:de.string().required(),checkProviderIdentity:de.function().arity(1).required(),platforms:de.array().items(de.string())}),pk=de.array().items(dk),mk=de.object().pattern(/\w+/,de.any().allow(de.boolean(),de.array().items(de.string()))),gk=de.object({custom:pk,filter:mk,displayUnavailable:de.boolean(),walletUnavailableMessage:de.function(),sort:de.function()}),vk=t=>qn(gk,t),yk=({label:t})=>`Please install or enable ${t} to continue`,bk=(t,e,r)=>{var n;return t?e({provider:t,device:r})?!0:!!(!((n=t.providers)===null||n===void 0)&&n.some(s=>e({provider:s,device:r}))):!1};function wk(t){if(typeof window>"u")return()=>null;if(t){const e=vk(t);if(e&&e.error)throw e.error}return e=>{const{device:r}=e,{custom:n=[],filter:s={},displayUnavailable:i,sort:o,walletUnavailableMessage:f}=t||{},h=cT([...n,...hk],({label:p})=>p).reduce((p,d)=>{const{label:v,platforms:w,injectedNamespace:A,checkProviderIdentity:M}=d,R=s[v],N=R===!1,C=window[A],B=bk(C,M,r);let O=!1;Array.isArray(R)&&(R.includes(r.type)||R.includes(r.os.name))&&(O=!0),R==="unavailable"&&!B&&(O=!0);const D=!w.includes("all")&&!w.includes(r.type)&&!w.includes(r.os.name);return!N&&!O&&!D&&(B||i)&&p.push(i&&!B?{...d,getInterface:async()=>{throw new Error(f?f(d):yk(d))}}:d),p},[]);if(h.length){const p=h.length>1,d=h.filter(v=>{const{label:w}=v;return!(w===Ft.Detected&&p)}).map(({label:v,getIcon:w,getInterface:A})=>({label:v,getIcon:w,getInterface:A})).sort((v,w)=>v.labelw.label?1:0);return o?o(d):d}return[]}}const q1=t=>!(typeof t!="string"||!t.match(/^0x[0-9A-Fa-f]*$/));function Ak(t){const{bridge:e="https://bridge.walletconnect.org",qrcodeModalOptions:r,connectFirstChainId:n}=t||{};return()=>({label:"WalletConnect",getIcon:async()=>(await vt(()=>import("./icon-e08798cb.js"),[])).default,getInterface:async({chains:s,EventEmitter:i})=>{const{StaticJsonRpcProvider:o}=await vt(()=>import("./index-32fe098f.js"),[]),{ProviderRpcError:f,ProviderRpcErrorCode:u}=await vt(()=>import("./index-7d165fbb.js"),[]),{default:h}=await vt(()=>import("./index-368abf3a.js"),["assets/index-368abf3a.js","assets/mobile-122d5339.js","assets/tslib.es6-c2094241.js"]);let p=await vt(()=>import("./index-f4328d31.js").then(C=>C.i),["assets/index-f4328d31.js","assets/mobile-122d5339.js"]);p=p.default||p;const{Subject:d,fromEvent:v}=await vt(()=>import("./index-581511fd.js"),["assets/index-581511fd.js","assets/zipWith-29b37a07.js","assets/skip-2d52d7ac.js","assets/merge-7af99d5f.js"]),{takeUntil:w,take:A}=await vt(()=>import("./index-a8ca8229.js"),["assets/index-a8ca8229.js","assets/zipWith-29b37a07.js","assets/skip-2d52d7ac.js"]),M=new h({bridge:e}),R=new i;class N{constructor({connector:B,chains:O}){this.emit=R.emit.bind(R),this.on=R.on.bind(R),this.removeListener=R.removeListener.bind(R),this.connector=B,this.chains=O,this.disconnected$=new d,this.providers={},v(this.connector,"session_update",(D,q)=>{if(D)throw D;return q}).pipe(w(this.disconnected$)).subscribe({next:({params:D})=>{const[{accounts:q,chainId:W}]=D;this.emit("accountsChanged",q);const k=q1(W)?W:`0x${W.toString(16)}`;this.emit("chainChanged",k)},error:console.warn}),v(this.connector,"disconnect",(D,q)=>{if(D)throw D;return q}).pipe(w(this.disconnected$)).subscribe({next:()=>{this.emit("accountsChanged",[]),this.disconnected$.next(!0),typeof localStorage<"u"&&localStorage.removeItem("walletconnect")},error:console.warn}),this.disconnect=()=>this.connector.killSession(),this.request=async({method:D,params:q})=>{if(D==="eth_chainId")return q1(this.connector.chainId)?this.connector.chainId:`0x${this.connector.chainId.toString(16)}`;if(D==="eth_requestAccounts")return new Promise((k,I)=>{if(!this.connector.connected)this.connector.createSession(n?{chainId:parseInt(O[0].id,16)}:void 0).then(()=>{p.open(this.connector.uri,()=>I(new f({code:4001,message:"User rejected the request."})),r)});else{const{accounts:H,chainId:P}=this.connector.session,T=q1(P)?P:`0x${P.toString(16)}`;return this.emit("chainChanged",T),k(H)}v(this.connector,"connect",(H,P)=>{if(H)throw H;return P}).pipe(A(1)).subscribe({next:({params:H})=>{const[{accounts:P,chainId:T}]=H;this.emit("accountsChanged",P);const g=q1(T)?T:`0x${T.toString(16)}`;this.emit("chainChanged",g),p.close(),k(P)},error:I})});if(D==="eth_selectAccounts")throw new f({code:u.UNSUPPORTED_METHOD,message:`The Provider does not support the requested method: ${D}`});if(D=="wallet_switchEthereumChain"){if(!q)throw new f({code:u.INVALID_PARAMS,message:"The Provider requires a chainId to be passed in as an argument"});const k=q[0];if(!k.hasOwnProperty("chainId")||typeof k.chainId>"u")throw new f({code:u.INVALID_PARAMS,message:"The Provider requires a chainId to be passed in as an argument"});return this.connector.sendCustomRequest({method:"wallet_switchEthereumChain",params:[{chainId:k.chainId}]})}if(D==="eth_sendTransaction")return this.connector.sendTransaction(q[0]);if(D==="eth_signTransaction")return this.connector.signTransaction(q[0]);if(D==="personal_sign")return this.connector.signPersonalMessage(q);if(D==="eth_sign")return this.connector.signMessage(q);if(D.includes("eth_signTypedData"))return this.connector.signTypedData(q);if(D==="eth_accounts")return this.connector.sendCustomRequest({id:1337,jsonrpc:"2.0",method:D,params:q});const W=await this.request({method:"eth_chainId"});if(!this.providers[W]){const k=O.find(({id:I})=>I===W);if(!k)throw new f({code:u.CHAIN_NOT_ADDED,message:`The Provider does not have a rpcUrl to make a request for the requested method: ${D}`});this.providers[W]=new o(k.rpcUrl)}return this.providers[W].send(D,q)}}}return{provider:new N({chains:s,connector:M})}}})}function xk(t){const{buttonPosition:e,modalZIndex:r,apiKey:n,buildEnv:s,enableLogging:i,loginConfig:o,showTorusButton:f,integrity:u,whiteLabel:h,skipTKey:p}=t||{};return()=>({label:"Torus",getIcon:async()=>(await vt(()=>import("./icon-4f874681.js"),[])).default,getInterface:async({chains:d})=>{const{default:v}=await vt(()=>import("./torus.esm-d09ce5f9.js"),[]),{createEIP1193Provider:w,ProviderRpcErrorCode:A,ProviderRpcError:M}=await vt(()=>import("./index-7d165fbb.js"),[]),[R]=d;let N=new v({buttonPosition:e,modalZIndex:r,apiKey:n});await N.init({buildEnv:s,enableLogging:i,network:{host:R.rpcUrl,chainId:parseInt(R.id),networkName:R.label},showTorusButton:f,loginConfig:o,integrity:u,whiteLabel:h,skipTKey:p});const C=N.provider,B=w(C,{eth_requestAccounts:async()=>{try{return await N.login()}catch{throw new M({code:A.ACCOUNT_ACCESS_REJECTED,message:"Account access rejected"})}},eth_selectAccounts:null,wallet_switchEthereumChain:async({params:O})=>{const D=d.find(({id:q})=>q===O[0].chainId);if(!D)throw new Error("chain must be set before switching");return await N.setProvider({host:D.rpcUrl,chainId:parseInt(D.id),networkName:D.label}),null},eth_chainId:async({baseRequest:O})=>{const D=await O({method:"eth_chainId"});return`0x${parseInt(D).toString(16)}`}});return B.disconnect=()=>N.cleanUp(),{provider:B,instance:N}}})}var tw=function(t,e){return tw=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])},tw(t,e)};function $c(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");tw(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function Ek(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})}function M9(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,s,i,o;return o={next:f(0),throw:f(1),return:f(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function f(h){return function(p){return u([h,p])}}function u(h){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,h[0]&&(r=0)),r;)try{if(n=1,s&&(i=h[0]&2?s.return:h[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,h[1])).done)return i;switch(s=0,i&&(h=[h[0]&2,i.value]),h[0]){case 0:case 1:i=h;break;case 4:return r.label++,{value:h[1],done:!1};case 5:r.label++,s=h[1],h=[0];continue;case 7:h=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Sf(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),s,i=[],o;try{for(;(e===void 0||e-- >0)&&!(s=n.next()).done;)i.push(s.value)}catch(f){o={error:f}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return i}function Rl(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n1||f(v,w)})})}function f(v,w){try{u(n[v](w))}catch(A){d(i[0][3],A)}}function u(v){v.value instanceof rh?Promise.resolve(v.value.v).then(h,p):d(i[0][2],v)}function h(v){f("next",v)}function p(v){f("throw",v)}function d(v,w){v(w),i.shift(),i.length&&f(i[0][0],i[0][1])}}function Sk(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof nd=="function"?nd(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=t[i]&&function(o){return new Promise(function(f,u){o=t[i](o),s(f,u,o.done,o.value)})}}function s(i,o,f,u){Promise.resolve(u).then(function(h){i({value:h,done:f})},o)}}function Jr(t){return typeof t=="function"}function FA(t){var e=function(n){Error.call(n),n.stack=new Error().stack},r=t(e);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Jy=FA(function(t){return function(r){t(this),this.message=r?r.length+` errors occurred during unsubscription: -`+r.map(function(n,s){return s+1+") "+n.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=r}});function rw(t,e){if(t){var r=t.indexOf(e);0<=r&&t.splice(r,1)}}var Cv=function(){function t(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return t.prototype.unsubscribe=function(){var e,r,n,s,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var f=nd(o),u=f.next();!u.done;u=f.next()){var h=u.value;h.remove(this)}}catch(M){e={error:M}}finally{try{u&&!u.done&&(r=f.return)&&r.call(f)}finally{if(e)throw e.error}}else o.remove(this);var p=this.initialTeardown;if(Jr(p))try{p()}catch(M){i=M instanceof Jy?M.errors:[M]}var d=this._finalizers;if(d){this._finalizers=null;try{for(var v=nd(d),w=v.next();!w.done;w=v.next()){var A=w.value;try{Z6(A)}catch(M){i=i??[],M instanceof Jy?i=Rl(Rl([],Sf(i)),Sf(M.errors)):i.push(M)}}}catch(M){n={error:M}}finally{try{w&&!w.done&&(s=v.return)&&s.call(v)}finally{if(n)throw n.error}}}if(i)throw new Jy(i)}},t.prototype.add=function(e){var r;if(e&&e!==this)if(this.closed)Z6(e);else{if(e instanceof t){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(e)}},t.prototype._hasParent=function(e){var r=this._parentage;return r===e||Array.isArray(r)&&r.includes(e)},t.prototype._addParent=function(e){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(e),r):r?[r,e]:e},t.prototype._removeParent=function(e){var r=this._parentage;r===e?this._parentage=null:Array.isArray(r)&&rw(r,e)},t.prototype.remove=function(e){var r=this._finalizers;r&&rw(r,e),e instanceof t&&e._removeParent(this)},t.EMPTY=function(){var e=new t;return e.closed=!0,e}(),t}(),S9=Cv.EMPTY;function _9(t){return t instanceof Cv||t&&"closed"in t&&Jr(t.remove)&&Jr(t.add)&&Jr(t.unsubscribe)}function Z6(t){Jr(t)?t():t.unsubscribe()}var eu={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},vg={setTimeout:function(t,e){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(r){return this._throwIfClosed(),t.prototype._trySubscribe.call(this,r)},e.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},e.prototype._innerSubscribe=function(r){var n=this,s=this,i=s.hasError,o=s.isStopped,f=s.observers;return i||o?S9:(this.currentObservers=null,f.push(r),new Cv(function(){n.currentObservers=null,rw(f,r)}))},e.prototype._checkFinalizedStatuses=function(r){var n=this,s=n.hasError,i=n.thrownError,o=n.isStopped;s?r.error(i):o&&r.complete()},e.prototype.asObservable=function(){var r=new Hi;return r.source=this,r},e.create=function(r,n){return new Q6(r,n)},e}(Hi),Q6=function(t){$c(e,t);function e(r,n){var s=t.call(this)||this;return s.destination=r,s.source=n,s}return e.prototype.next=function(r){var n,s;(s=(n=this.destination)===null||n===void 0?void 0:n.next)===null||s===void 0||s.call(n,r)},e.prototype.error=function(r){var n,s;(s=(n=this.destination)===null||n===void 0?void 0:n.error)===null||s===void 0||s.call(n,r)},e.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},e.prototype._subscribe=function(r){var n,s;return(s=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&s!==void 0?s:S9},e}(Bf),s1=function(t){$c(e,t);function e(r){var n=t.call(this)||this;return n._value=r,n}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(r){var n=t.prototype._subscribe.call(this,r);return!n.closed&&r.next(this._value),n},e.prototype.getValue=function(){var r=this,n=r.hasError,s=r.thrownError,i=r._value;if(n)throw s;return this._throwIfClosed(),i},e.prototype.next=function(r){t.prototype.next.call(this,this._value=r)},e}(Bf),C9={now:function(){return(C9.delegate||Date).now()},delegate:void 0},Uk=function(t){$c(e,t);function e(r,n,s){r===void 0&&(r=1/0),n===void 0&&(n=1/0),s===void 0&&(s=C9);var i=t.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=s,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return e.prototype.next=function(r){var n=this,s=n.isStopped,i=n._buffer,o=n._infiniteTimeWindow,f=n._timestampProvider,u=n._windowTime;s||(i.push(r),!o&&i.push(f.now()+u)),this._trimBuffer(),t.prototype.next.call(this,r)},e.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),s=this,i=s._infiniteTimeWindow,o=s._buffer,f=o.slice(),u=0;u0&&(p=new id({next:function(q){return D.next(q)},error:function(q){M=!0,R(),d=tb(N,s,q),D.error(q)},complete:function(){A=!0,R(),d=tb(N,o),D.complete()}}),oa(B).subscribe(p))})(h)}}function tb(t,e){for(var r=[],n=2;n0&&n[1]||""}static getSecondMatch(e,r){const n=r.match(e);return n&&n.length>1&&n[2]||""}static matchAndReturnConst(e,r,n){if(e.test(r))return n}static getWindowsVersionName(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(e){const r=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(r.push(0),r[0]===10)switch(r[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(e){const r=e.split(".").splice(0,2).map(n=>parseInt(n,10)||0);if(r.push(0),!(r[0]===1&&r[1]<5)){if(r[0]===1&&r[1]<6)return"Cupcake";if(r[0]===1&&r[1]>=6)return"Donut";if(r[0]===2&&r[1]<2)return"Eclair";if(r[0]===2&&r[1]===2)return"Froyo";if(r[0]===2&&r[1]>2)return"Gingerbread";if(r[0]===3)return"Honeycomb";if(r[0]===4&&r[1]<1)return"Ice Cream Sandwich";if(r[0]===4&&r[1]<4)return"Jelly Bean";if(r[0]===4&&r[1]>=4)return"KitKat";if(r[0]===5)return"Lollipop";if(r[0]===6)return"Marshmallow";if(r[0]===7)return"Nougat";if(r[0]===8)return"Oreo";if(r[0]===9)return"Pie"}}static getVersionPrecision(e){return e.split(".").length}static compareVersions(e,r,n=!1){const s=$e.getVersionPrecision(e),i=$e.getVersionPrecision(r);let o=Math.max(s,i),f=0;const u=$e.map([e,r],h=>{const p=o-$e.getVersionPrecision(h),d=h+new Array(p+1).join(".0");return $e.map(d.split("."),v=>new Array(20-v.length).join("0")+v).reverse()});for(n&&(f=o-Math.min(s,i)),o-=1;o>=f;){if(u[0][o]>u[1][o])return 1;if(u[0][o]===u[1][o]){if(o===f)return 0;o-=1}else if(u[0][o]{n[u]=o[u]})}return e}static getBrowserAlias(e){return yB[e]}static getBrowserTypeByAlias(e){return W9[e]||""}}const nn=/version\/(\d+(\.?_?\d+)+)/i,bB=[{test:[/googlebot/i],describe(t){const e={name:"Googlebot"},r=$e.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/opera/i],describe(t){const e={name:"Opera"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/opr\/|opios/i],describe(t){const e={name:"Opera"},r=$e.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/SamsungBrowser/i],describe(t){const e={name:"Samsung Internet for Android"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/Whale/i],describe(t){const e={name:"NAVER Whale Browser"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/MZBrowser/i],describe(t){const e={name:"MZ Browser"},r=$e.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/focus/i],describe(t){const e={name:"Focus"},r=$e.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/swing/i],describe(t){const e={name:"Swing"},r=$e.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/coast/i],describe(t){const e={name:"Opera Coast"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(t){const e={name:"Opera Touch"},r=$e.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/yabrowser/i],describe(t){const e={name:"Yandex Browser"},r=$e.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/ucbrowser/i],describe(t){const e={name:"UC Browser"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/Maxthon|mxios/i],describe(t){const e={name:"Maxthon"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/epiphany/i],describe(t){const e={name:"Epiphany"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/puffin/i],describe(t){const e={name:"Puffin"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/sleipnir/i],describe(t){const e={name:"Sleipnir"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/k-meleon/i],describe(t){const e={name:"K-Meleon"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/micromessenger/i],describe(t){const e={name:"WeChat"},r=$e.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/qqbrowser/i],describe(t){const e={name:/qqbrowserlite/i.test(t)?"QQ Browser Lite":"QQ Browser"},r=$e.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/msie|trident/i],describe(t){const e={name:"Internet Explorer"},r=$e.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/\sedg\//i],describe(t){const e={name:"Microsoft Edge"},r=$e.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/edg([ea]|ios)/i],describe(t){const e={name:"Microsoft Edge"},r=$e.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/vivaldi/i],describe(t){const e={name:"Vivaldi"},r=$e.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/seamonkey/i],describe(t){const e={name:"SeaMonkey"},r=$e.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/sailfish/i],describe(t){const e={name:"Sailfish"},r=$e.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,t);return r&&(e.version=r),e}},{test:[/silk/i],describe(t){const e={name:"Amazon Silk"},r=$e.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/phantom/i],describe(t){const e={name:"PhantomJS"},r=$e.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/slimerjs/i],describe(t){const e={name:"SlimerJS"},r=$e.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(t){const e={name:"BlackBerry"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/(web|hpw)[o0]s/i],describe(t){const e={name:"WebOS Browser"},r=$e.getFirstMatch(nn,t)||$e.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/bada/i],describe(t){const e={name:"Bada"},r=$e.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/tizen/i],describe(t){const e={name:"Tizen"},r=$e.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/qupzilla/i],describe(t){const e={name:"QupZilla"},r=$e.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/firefox|iceweasel|fxios/i],describe(t){const e={name:"Firefox"},r=$e.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/electron/i],describe(t){const e={name:"Electron"},r=$e.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/MiuiBrowser/i],describe(t){const e={name:"Miui"},r=$e.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/chromium/i],describe(t){const e={name:"Chromium"},r=$e.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,t)||$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/chrome|crios|crmo/i],describe(t){const e={name:"Chrome"},r=$e.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/GSA/i],describe(t){const e={name:"Google Search"},r=$e.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test(t){const e=!t.test(/like android/i),r=t.test(/android/i);return e&&r},describe(t){const e={name:"Android Browser"},r=$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/playstation 4/i],describe(t){const e={name:"PlayStation 4"},r=$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/safari|applewebkit/i],describe(t){const e={name:"Safari"},r=$e.getFirstMatch(nn,t);return r&&(e.version=r),e}},{test:[/.*/i],describe(t){const e=/^(.*)\/(.*) /,r=/^(.*)\/(.*)[ \t]\((.*)/,s=t.search("\\(")!==-1?r:e;return{name:$e.getFirstMatch(s,t),version:$e.getSecondMatch(s,t)}}}],wB=[{test:[/Roku\/DVP/],describe(t){const e=$e.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,t);return{name:Ki.Roku,version:e}}},{test:[/windows phone/i],describe(t){const e=$e.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,t);return{name:Ki.WindowsPhone,version:e}}},{test:[/windows /i],describe(t){const e=$e.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,t),r=$e.getWindowsVersionName(e);return{name:Ki.Windows,version:e,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(t){const e={name:Ki.iOS},r=$e.getSecondMatch(/(Version\/)(\d[\d.]+)/,t);return r&&(e.version=r),e}},{test:[/macintosh/i],describe(t){const e=$e.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,t).replace(/[_\s]/g,"."),r=$e.getMacOSVersionName(e),n={name:Ki.MacOS,version:e};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe(t){const e=$e.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,t).replace(/[_\s]/g,".");return{name:Ki.iOS,version:e}}},{test(t){const e=!t.test(/like android/i),r=t.test(/android/i);return e&&r},describe(t){const e=$e.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,t),r=$e.getAndroidVersionName(e),n={name:Ki.Android,version:e};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe(t){const e=$e.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,t),r={name:Ki.WebOS};return e&&e.length&&(r.version=e),r}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(t){const e=$e.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,t)||$e.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,t)||$e.getFirstMatch(/\bbb(\d+)/i,t);return{name:Ki.BlackBerry,version:e}}},{test:[/bada/i],describe(t){const e=$e.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,t);return{name:Ki.Bada,version:e}}},{test:[/tizen/i],describe(t){const e=$e.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,t);return{name:Ki.Tizen,version:e}}},{test:[/linux/i],describe(){return{name:Ki.Linux}}},{test:[/CrOS/],describe(){return{name:Ki.ChromeOS}}},{test:[/PlayStation 4/],describe(t){const e=$e.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,t);return{name:Ki.PlayStation4,version:e}}}],AB=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(t){const e=$e.getFirstMatch(/(can-l01)/i,t)&&"Nova",r={type:In.mobile,vendor:"Huawei"};return e&&(r.model=e),r}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:In.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:In.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:In.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:In.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:In.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:In.tablet}}},{test(t){const e=t.test(/ipod|iphone/i),r=t.test(/like (ipod|iphone)/i);return e&&!r},describe(t){const e=$e.getFirstMatch(/(ipod|iphone)/i,t);return{type:In.mobile,vendor:"Apple",model:e}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:In.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:In.mobile}}},{test(t){return t.getBrowserName(!0)==="blackberry"},describe(){return{type:In.mobile,vendor:"BlackBerry"}}},{test(t){return t.getBrowserName(!0)==="bada"},describe(){return{type:In.mobile}}},{test(t){return t.getBrowserName()==="windows phone"},describe(){return{type:In.mobile,vendor:"Microsoft"}}},{test(t){const e=Number(String(t.getOSVersion()).split(".")[0]);return t.getOSName(!0)==="android"&&e>=3},describe(){return{type:In.tablet}}},{test(t){return t.getOSName(!0)==="android"},describe(){return{type:In.mobile}}},{test(t){return t.getOSName(!0)==="macos"},describe(){return{type:In.desktop,vendor:"Apple"}}},{test(t){return t.getOSName(!0)==="windows"},describe(){return{type:In.desktop}}},{test(t){return t.getOSName(!0)==="linux"},describe(){return{type:In.desktop}}},{test(t){return t.getOSName(!0)==="playstation 4"},describe(){return{type:In.tv}}},{test(t){return t.getOSName(!0)==="roku"},describe(){return{type:In.tv}}}],xB=[{test(t){return t.getBrowserName(!0)==="microsoft edge"},describe(t){if(/\sedg\//i.test(t))return{name:Jf.Blink};const r=$e.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,t);return{name:Jf.EdgeHTML,version:r}}},{test:[/trident/i],describe(t){const e={name:Jf.Trident},r=$e.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test(t){return t.test(/presto/i)},describe(t){const e={name:Jf.Presto},r=$e.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test(t){const e=t.test(/gecko/i),r=t.test(/like gecko/i);return e&&!r},describe(t){const e={name:Jf.Gecko},r=$e.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:Jf.Blink}}},{test:[/(apple)?webkit/i],describe(t){const e={name:Jf.WebKit},r=$e.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,t);return r&&(e.version=r),e}}];let t4=class{constructor(e,r=!1){if(e==null||e==="")throw new Error("UserAgent parameter can't be empty");this._ua=e,this.parsedResult={},r!==!0&&this.parse()}getUA(){return this._ua}test(e){return e.test(this._ua)}parseBrowser(){this.parsedResult.browser={};const e=$e.find(bB,r=>{if(typeof r.test=="function")return r.test(this);if(r.test instanceof Array)return r.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.browser=e.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};const e=$e.find(wB,r=>{if(typeof r.test=="function")return r.test(this);if(r.test instanceof Array)return r.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.os=e.describe(this.getUA())),this.parsedResult.os}getOSName(e){const{name:r}=this.getOS();return e?String(r).toLowerCase()||"":r||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(e=!1){const{type:r}=this.getPlatform();return e?String(r).toLowerCase()||"":r||""}parsePlatform(){this.parsedResult.platform={};const e=$e.find(AB,r=>{if(typeof r.test=="function")return r.test(this);if(r.test instanceof Array)return r.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.platform=e.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};const e=$e.find(xB,r=>{if(typeof r.test=="function")return r.test(this);if(r.test instanceof Array)return r.test.some(n=>this.test(n));throw new Error("Browser's test function is not valid")});return e&&(this.parsedResult.engine=e.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return $e.assign({},this.parsedResult)}satisfies(e){const r={};let n=0;const s={};let i=0;if(Object.keys(e).forEach(f=>{const u=e[f];typeof u=="string"?(s[f]=u,i+=1):typeof u=="object"&&(r[f]=u,n+=1)}),n>0){const f=Object.keys(r),u=$e.find(f,p=>this.isOS(p));if(u){const p=this.satisfies(r[u]);if(p!==void 0)return p}const h=$e.find(f,p=>this.isPlatform(p));if(h){const p=this.satisfies(r[h]);if(p!==void 0)return p}}if(i>0){const f=Object.keys(s),u=$e.find(f,h=>this.isBrowser(h,!0));if(u!==void 0)return this.compareVersion(s[u])}}isBrowser(e,r=!1){const n=this.getBrowserName().toLowerCase();let s=e.toLowerCase();const i=$e.getBrowserTypeByAlias(s);return r&&i&&(s=i.toLowerCase()),s===n}compareVersion(e){let r=[0],n=e,s=!1;const i=this.getBrowserVersion();if(typeof i=="string")return e[0]===">"||e[0]==="<"?(n=e.substr(1),e[1]==="="?(s=!0,n=e.substr(2)):r=[],e[0]===">"?r.push(1):r.push(-1)):e[0]==="="?n=e.substr(1):e[0]==="~"&&(s=!0,n=e.substr(1)),r.indexOf($e.compareVersions(i,n,s))>-1}isOS(e){return this.getOSName(!0)===String(e).toLowerCase()}isPlatform(e){return this.getPlatformType(!0)===String(e).toLowerCase()}isEngine(e){return this.getEngineName(!0)===String(e).toLowerCase()}is(e,r=!1){return this.isBrowser(e,r)||this.isOS(e)||this.isPlatform(e)}some(e=[]){return e.some(r=>this.is(r))}};/*! - * Bowser - a browser detector - * https://github.com/lancedikson/bowser - * MIT License | (c) Dustin Diaz 2012-2015 - * MIT License | (c) Denis Demchenko 2015-2019 - */class EB{static getParser(e,r=!1){if(typeof e!="string")throw new Error("UserAgent should be a string");return new t4(e,r)}static parse(e){return new t4(e).getResult()}static get BROWSER_MAP(){return W9}static get ENGINE_MAP(){return Jf}static get OS_MAP(){return Ki}static get PLATFORMS_MAP(){return In}}var mt={},Bv={};Bv.byteLength=_B;Bv.toByteArray=NB;Bv.fromByteArray=kB;var wo=[],Vs=[],MB=typeof Uint8Array<"u"?Uint8Array:Array,nb="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var bu=0,SB=nb.length;bu0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function _B(t){var e=Z9(t),r=e[0],n=e[1];return(r+n)*3/4-n}function RB(t,e,r){return(e+r)*3/4-r}function NB(t){var e,r=Z9(t),n=r[0],s=r[1],i=new MB(RB(t,n,s)),o=0,f=s>0?n-4:n,u;for(u=0;u>16&255,i[o++]=e>>8&255,i[o++]=e&255;return s===2&&(e=Vs[t.charCodeAt(u)]<<2|Vs[t.charCodeAt(u+1)]>>4,i[o++]=e&255),s===1&&(e=Vs[t.charCodeAt(u)]<<10|Vs[t.charCodeAt(u+1)]<<4|Vs[t.charCodeAt(u+2)]>>2,i[o++]=e>>8&255,i[o++]=e&255),i}function CB(t){return wo[t>>18&63]+wo[t>>12&63]+wo[t>>6&63]+wo[t&63]}function TB(t,e,r){for(var n,s=[],i=e;if?f:o+i));return n===1?(e=t[r-1],s.push(wo[e>>2]+wo[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],s.push(wo[e>>10]+wo[e>>4&63]+wo[e<<2&63]+"=")),s.join("")}var ZA={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ZA.read=function(t,e,r,n,s){var i,o,f=s*8-n-1,u=(1<>1,p=-7,d=r?s-1:0,v=r?-1:1,w=t[e+d];for(d+=v,i=w&(1<<-p)-1,w>>=-p,p+=f;p>0;i=i*256+t[e+d],d+=v,p-=8);for(o=i&(1<<-p)-1,i>>=-p,p+=n;p>0;o=o*256+t[e+d],d+=v,p-=8);if(i===0)i=1-h;else{if(i===u)return o?NaN:(w?-1:1)*(1/0);o=o+Math.pow(2,n),i=i-h}return(w?-1:1)*o*Math.pow(2,i-n)};ZA.write=function(t,e,r,n,s,i){var o,f,u,h=i*8-s-1,p=(1<>1,v=s===23?Math.pow(2,-24)-Math.pow(2,-77):0,w=n?0:i-1,A=n?1:-1,M=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(f=isNaN(e)?1:0,o=p):(o=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+d>=1?e+=v/u:e+=v*Math.pow(2,1-d),e*u>=2&&(o++,u/=2),o+d>=p?(f=0,o=p):o+d>=1?(f=(e*u-1)*Math.pow(2,s),o=o+d):(f=e*Math.pow(2,d-1)*Math.pow(2,s),o=0));s>=8;t[r+w]=f&255,w+=A,f/=256,s-=8);for(o=o<0;t[r+w]=o&255,w+=A,o/=256,h-=8);t[r+w-A]|=M*128};/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */(function(t){var e=Bv,r=ZA,n=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=f,t.SlowBuffer=C,t.INSPECT_MAX_BYTES=50;var s=2147483647;t.kMaxLength=s,f.TYPED_ARRAY_SUPPORT=i(),!f.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function i(){try{var Q=new Uint8Array(1),z={foo:function(){return 42}};return Object.setPrototypeOf(z,Uint8Array.prototype),Object.setPrototypeOf(Q,z),Q.foo()===42}catch{return!1}}Object.defineProperty(f.prototype,"parent",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.buffer}}),Object.defineProperty(f.prototype,"offset",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.byteOffset}});function o(Q){if(Q>s)throw new RangeError('The value "'+Q+'" is invalid for option "size"');var z=new Uint8Array(Q);return Object.setPrototypeOf(z,f.prototype),z}function f(Q,z,G){if(typeof Q=="number"){if(typeof z=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return d(Q)}return u(Q,z,G)}f.poolSize=8192;function u(Q,z,G){if(typeof Q=="string")return v(Q,z);if(ArrayBuffer.isView(Q))return A(Q);if(Q==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Q);if(se(Q,ArrayBuffer)||Q&&se(Q.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(se(Q,SharedArrayBuffer)||Q&&se(Q.buffer,SharedArrayBuffer)))return M(Q,z,G);if(typeof Q=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var X=Q.valueOf&&Q.valueOf();if(X!=null&&X!==Q)return f.from(X,z,G);var ne=R(Q);if(ne)return ne;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Q[Symbol.toPrimitive]=="function")return f.from(Q[Symbol.toPrimitive]("string"),z,G);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Q)}f.from=function(Q,z,G){return u(Q,z,G)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array);function h(Q){if(typeof Q!="number")throw new TypeError('"size" argument must be of type number');if(Q<0)throw new RangeError('The value "'+Q+'" is invalid for option "size"')}function p(Q,z,G){return h(Q),Q<=0?o(Q):z!==void 0?typeof G=="string"?o(Q).fill(z,G):o(Q).fill(z):o(Q)}f.alloc=function(Q,z,G){return p(Q,z,G)};function d(Q){return h(Q),o(Q<0?0:N(Q)|0)}f.allocUnsafe=function(Q){return d(Q)},f.allocUnsafeSlow=function(Q){return d(Q)};function v(Q,z){if((typeof z!="string"||z==="")&&(z="utf8"),!f.isEncoding(z))throw new TypeError("Unknown encoding: "+z);var G=B(Q,z)|0,X=o(G),ne=X.write(Q,z);return ne!==G&&(X=X.slice(0,ne)),X}function w(Q){for(var z=Q.length<0?0:N(Q.length)|0,G=o(z),X=0;X=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return Q|0}function C(Q){return+Q!=Q&&(Q=0),f.alloc(+Q)}f.isBuffer=function(z){return z!=null&&z._isBuffer===!0&&z!==f.prototype},f.compare=function(z,G){if(se(z,Uint8Array)&&(z=f.from(z,z.offset,z.byteLength)),se(G,Uint8Array)&&(G=f.from(G,G.offset,G.byteLength)),!f.isBuffer(z)||!f.isBuffer(G))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(z===G)return 0;for(var X=z.length,ne=G.length,ae=0,Me=Math.min(X,ne);aene.length?f.from(Me).copy(ne,ae):Uint8Array.prototype.set.call(ne,Me,ae);else if(f.isBuffer(Me))Me.copy(ne,ae);else throw new TypeError('"list" argument must be an Array of Buffers');ae+=Me.length}return ne};function B(Q,z){if(f.isBuffer(Q))return Q.length;if(ArrayBuffer.isView(Q)||se(Q,ArrayBuffer))return Q.byteLength;if(typeof Q!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Q);var G=Q.length,X=arguments.length>2&&arguments[2]===!0;if(!X&&G===0)return 0;for(var ne=!1;;)switch(z){case"ascii":case"latin1":case"binary":return G;case"utf8":case"utf-8":return Z(Q).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G*2;case"hex":return G>>>1;case"base64":return U(Q).length;default:if(ne)return X?-1:Z(Q).length;z=(""+z).toLowerCase(),ne=!0}}f.byteLength=B;function O(Q,z,G){var X=!1;if((z===void 0||z<0)&&(z=0),z>this.length||((G===void 0||G>this.length)&&(G=this.length),G<=0)||(G>>>=0,z>>>=0,G<=z))return"";for(Q||(Q="utf8");;)switch(Q){case"hex":return _(this,z,G);case"utf8":case"utf-8":return a(this,z,G);case"ascii":return b(this,z,G);case"latin1":case"binary":return x(this,z,G);case"base64":return g(this,z,G);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,z,G);default:if(X)throw new TypeError("Unknown encoding: "+Q);Q=(Q+"").toLowerCase(),X=!0}}f.prototype._isBuffer=!0;function D(Q,z,G){var X=Q[z];Q[z]=Q[G],Q[G]=X}f.prototype.swap16=function(){var z=this.length;if(z%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var G=0;GG&&(z+=" ... "),""},n&&(f.prototype[n]=f.prototype.inspect),f.prototype.compare=function(z,G,X,ne,ae){if(se(z,Uint8Array)&&(z=f.from(z,z.offset,z.byteLength)),!f.isBuffer(z))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof z);if(G===void 0&&(G=0),X===void 0&&(X=z?z.length:0),ne===void 0&&(ne=0),ae===void 0&&(ae=this.length),G<0||X>z.length||ne<0||ae>this.length)throw new RangeError("out of range index");if(ne>=ae&&G>=X)return 0;if(ne>=ae)return-1;if(G>=X)return 1;if(G>>>=0,X>>>=0,ne>>>=0,ae>>>=0,this===z)return 0;for(var Me=ae-ne,ge=X-G,pe=Math.min(Me,ge),ot=this.slice(ne,ae),we=z.slice(G,X),me=0;me2147483647?G=2147483647:G<-2147483648&&(G=-2147483648),G=+G,re(G)&&(G=ne?0:Q.length-1),G<0&&(G=Q.length+G),G>=Q.length){if(ne)return-1;G=Q.length-1}else if(G<0)if(ne)G=0;else return-1;if(typeof z=="string"&&(z=f.from(z,X)),f.isBuffer(z))return z.length===0?-1:W(Q,z,G,X,ne);if(typeof z=="number")return z=z&255,typeof Uint8Array.prototype.indexOf=="function"?ne?Uint8Array.prototype.indexOf.call(Q,z,G):Uint8Array.prototype.lastIndexOf.call(Q,z,G):W(Q,[z],G,X,ne);throw new TypeError("val must be string, number or Buffer")}function W(Q,z,G,X,ne){var ae=1,Me=Q.length,ge=z.length;if(X!==void 0&&(X=String(X).toLowerCase(),X==="ucs2"||X==="ucs-2"||X==="utf16le"||X==="utf-16le")){if(Q.length<2||z.length<2)return-1;ae=2,Me/=2,ge/=2,G/=2}function pe(ze,_e){return ae===1?ze[_e]:ze.readUInt16BE(_e*ae)}var ot;if(ne){var we=-1;for(ot=G;otMe&&(G=Me-ge),ot=G;ot>=0;ot--){for(var me=!0,ut=0;utne&&(X=ne)):X=ne;var ae=z.length;X>ae/2&&(X=ae/2);for(var Me=0;Me>>0,isFinite(X)?(X=X>>>0,ne===void 0&&(ne="utf8")):(ne=X,X=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var ae=this.length-G;if((X===void 0||X>ae)&&(X=ae),z.length>0&&(X<0||G<0)||G>this.length)throw new RangeError("Attempt to write outside buffer bounds");ne||(ne="utf8");for(var Me=!1;;)switch(ne){case"hex":return k(this,z,G,X);case"utf8":case"utf-8":return I(this,z,G,X);case"ascii":case"latin1":case"binary":return H(this,z,G,X);case"base64":return P(this,z,G,X);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,z,G,X);default:if(Me)throw new TypeError("Unknown encoding: "+ne);ne=(""+ne).toLowerCase(),Me=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function g(Q,z,G){return z===0&&G===Q.length?e.fromByteArray(Q):e.fromByteArray(Q.slice(z,G))}function a(Q,z,G){G=Math.min(Q.length,G);for(var X=[],ne=z;ne239?4:ae>223?3:ae>191?2:1;if(ne+ge<=G){var pe,ot,we,me;switch(ge){case 1:ae<128&&(Me=ae);break;case 2:pe=Q[ne+1],(pe&192)===128&&(me=(ae&31)<<6|pe&63,me>127&&(Me=me));break;case 3:pe=Q[ne+1],ot=Q[ne+2],(pe&192)===128&&(ot&192)===128&&(me=(ae&15)<<12|(pe&63)<<6|ot&63,me>2047&&(me<55296||me>57343)&&(Me=me));break;case 4:pe=Q[ne+1],ot=Q[ne+2],we=Q[ne+3],(pe&192)===128&&(ot&192)===128&&(we&192)===128&&(me=(ae&15)<<18|(pe&63)<<12|(ot&63)<<6|we&63,me>65535&&me<1114112&&(Me=me))}}Me===null?(Me=65533,ge=1):Me>65535&&(Me-=65536,X.push(Me>>>10&1023|55296),Me=56320|Me&1023),X.push(Me),ne+=ge}return m(X)}var c=4096;function m(Q){var z=Q.length;if(z<=c)return String.fromCharCode.apply(String,Q);for(var G="",X=0;XX)&&(G=X);for(var ne="",ae=z;aeX&&(z=X),G<0?(G+=X,G<0&&(G=0)):G>X&&(G=X),GG)throw new RangeError("Trying to access beyond buffer length")}f.prototype.readUintLE=f.prototype.readUIntLE=function(z,G,X){z=z>>>0,G=G>>>0,X||y(z,G,this.length);for(var ne=this[z],ae=1,Me=0;++Me>>0,G=G>>>0,X||y(z,G,this.length);for(var ne=this[z+--G],ae=1;G>0&&(ae*=256);)ne+=this[z+--G]*ae;return ne},f.prototype.readUint8=f.prototype.readUInt8=function(z,G){return z=z>>>0,G||y(z,1,this.length),this[z]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(z,G){return z=z>>>0,G||y(z,2,this.length),this[z]|this[z+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(z,G){return z=z>>>0,G||y(z,2,this.length),this[z]<<8|this[z+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(z,G){return z=z>>>0,G||y(z,4,this.length),(this[z]|this[z+1]<<8|this[z+2]<<16)+this[z+3]*16777216},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(z,G){return z=z>>>0,G||y(z,4,this.length),this[z]*16777216+(this[z+1]<<16|this[z+2]<<8|this[z+3])},f.prototype.readIntLE=function(z,G,X){z=z>>>0,G=G>>>0,X||y(z,G,this.length);for(var ne=this[z],ae=1,Me=0;++Me=ae&&(ne-=Math.pow(2,8*G)),ne},f.prototype.readIntBE=function(z,G,X){z=z>>>0,G=G>>>0,X||y(z,G,this.length);for(var ne=G,ae=1,Me=this[z+--ne];ne>0&&(ae*=256);)Me+=this[z+--ne]*ae;return ae*=128,Me>=ae&&(Me-=Math.pow(2,8*G)),Me},f.prototype.readInt8=function(z,G){return z=z>>>0,G||y(z,1,this.length),this[z]&128?(255-this[z]+1)*-1:this[z]},f.prototype.readInt16LE=function(z,G){z=z>>>0,G||y(z,2,this.length);var X=this[z]|this[z+1]<<8;return X&32768?X|4294901760:X},f.prototype.readInt16BE=function(z,G){z=z>>>0,G||y(z,2,this.length);var X=this[z+1]|this[z]<<8;return X&32768?X|4294901760:X},f.prototype.readInt32LE=function(z,G){return z=z>>>0,G||y(z,4,this.length),this[z]|this[z+1]<<8|this[z+2]<<16|this[z+3]<<24},f.prototype.readInt32BE=function(z,G){return z=z>>>0,G||y(z,4,this.length),this[z]<<24|this[z+1]<<16|this[z+2]<<8|this[z+3]},f.prototype.readFloatLE=function(z,G){return z=z>>>0,G||y(z,4,this.length),r.read(this,z,!0,23,4)},f.prototype.readFloatBE=function(z,G){return z=z>>>0,G||y(z,4,this.length),r.read(this,z,!1,23,4)},f.prototype.readDoubleLE=function(z,G){return z=z>>>0,G||y(z,8,this.length),r.read(this,z,!0,52,8)},f.prototype.readDoubleBE=function(z,G){return z=z>>>0,G||y(z,8,this.length),r.read(this,z,!1,52,8)};function l(Q,z,G,X,ne,ae){if(!f.isBuffer(Q))throw new TypeError('"buffer" argument must be a Buffer instance');if(z>ne||zQ.length)throw new RangeError("Index out of range")}f.prototype.writeUintLE=f.prototype.writeUIntLE=function(z,G,X,ne){if(z=+z,G=G>>>0,X=X>>>0,!ne){var ae=Math.pow(2,8*X)-1;l(this,z,G,X,ae,0)}var Me=1,ge=0;for(this[G]=z&255;++ge>>0,X=X>>>0,!ne){var ae=Math.pow(2,8*X)-1;l(this,z,G,X,ae,0)}var Me=X-1,ge=1;for(this[G+Me]=z&255;--Me>=0&&(ge*=256);)this[G+Me]=z/ge&255;return G+X},f.prototype.writeUint8=f.prototype.writeUInt8=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,1,255,0),this[G]=z&255,G+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,2,65535,0),this[G]=z&255,this[G+1]=z>>>8,G+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,2,65535,0),this[G]=z>>>8,this[G+1]=z&255,G+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,4,4294967295,0),this[G+3]=z>>>24,this[G+2]=z>>>16,this[G+1]=z>>>8,this[G]=z&255,G+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,4,4294967295,0),this[G]=z>>>24,this[G+1]=z>>>16,this[G+2]=z>>>8,this[G+3]=z&255,G+4},f.prototype.writeIntLE=function(z,G,X,ne){if(z=+z,G=G>>>0,!ne){var ae=Math.pow(2,8*X-1);l(this,z,G,X,ae-1,-ae)}var Me=0,ge=1,pe=0;for(this[G]=z&255;++Me>0)-pe&255;return G+X},f.prototype.writeIntBE=function(z,G,X,ne){if(z=+z,G=G>>>0,!ne){var ae=Math.pow(2,8*X-1);l(this,z,G,X,ae-1,-ae)}var Me=X-1,ge=1,pe=0;for(this[G+Me]=z&255;--Me>=0&&(ge*=256);)z<0&&pe===0&&this[G+Me+1]!==0&&(pe=1),this[G+Me]=(z/ge>>0)-pe&255;return G+X},f.prototype.writeInt8=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,1,127,-128),z<0&&(z=255+z+1),this[G]=z&255,G+1},f.prototype.writeInt16LE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,2,32767,-32768),this[G]=z&255,this[G+1]=z>>>8,G+2},f.prototype.writeInt16BE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,2,32767,-32768),this[G]=z>>>8,this[G+1]=z&255,G+2},f.prototype.writeInt32LE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,4,2147483647,-2147483648),this[G]=z&255,this[G+1]=z>>>8,this[G+2]=z>>>16,this[G+3]=z>>>24,G+4},f.prototype.writeInt32BE=function(z,G,X){return z=+z,G=G>>>0,X||l(this,z,G,4,2147483647,-2147483648),z<0&&(z=4294967295+z+1),this[G]=z>>>24,this[G+1]=z>>>16,this[G+2]=z>>>8,this[G+3]=z&255,G+4};function E(Q,z,G,X,ne,ae){if(G+X>Q.length)throw new RangeError("Index out of range");if(G<0)throw new RangeError("Index out of range")}function Y(Q,z,G,X,ne){return z=+z,G=G>>>0,ne||E(Q,z,G,4),r.write(Q,z,G,X,23,4),G+4}f.prototype.writeFloatLE=function(z,G,X){return Y(this,z,G,!0,X)},f.prototype.writeFloatBE=function(z,G,X){return Y(this,z,G,!1,X)};function L(Q,z,G,X,ne){return z=+z,G=G>>>0,ne||E(Q,z,G,8),r.write(Q,z,G,X,52,8),G+8}f.prototype.writeDoubleLE=function(z,G,X){return L(this,z,G,!0,X)},f.prototype.writeDoubleBE=function(z,G,X){return L(this,z,G,!1,X)},f.prototype.copy=function(z,G,X,ne){if(!f.isBuffer(z))throw new TypeError("argument should be a Buffer");if(X||(X=0),!ne&&ne!==0&&(ne=this.length),G>=z.length&&(G=z.length),G||(G=0),ne>0&&ne=this.length)throw new RangeError("Index out of range");if(ne<0)throw new RangeError("sourceEnd out of bounds");ne>this.length&&(ne=this.length),z.length-G>>0,X=X===void 0?this.length:X>>>0,z||(z=0);var Me;if(typeof z=="number")for(Me=G;Me55295&&G<57344){if(!ne){if(G>56319){(z-=3)>-1&&ae.push(239,191,189);continue}else if(Me+1===X){(z-=3)>-1&&ae.push(239,191,189);continue}ne=G;continue}if(G<56320){(z-=3)>-1&&ae.push(239,191,189),ne=G;continue}G=(ne-55296<<10|G-56320)+65536}else ne&&(z-=3)>-1&&ae.push(239,191,189);if(ne=null,G<128){if((z-=1)<0)break;ae.push(G)}else if(G<2048){if((z-=2)<0)break;ae.push(G>>6|192,G&63|128)}else if(G<65536){if((z-=3)<0)break;ae.push(G>>12|224,G>>6&63|128,G&63|128)}else if(G<1114112){if((z-=4)<0)break;ae.push(G>>18|240,G>>12&63|128,G>>6&63|128,G&63|128)}else throw new Error("Invalid code point")}return ae}function ee(Q){for(var z=[],G=0;G>8,ne=G%256,ae.push(ne),ae.push(X);return ae}function U(Q){return e.toByteArray(V(Q))}function j(Q,z,G,X){for(var ne=0;ne=z.length||ne>=Q.length);++ne)z[ne+G]=Q[ne];return ne}function se(Q,z){return Q instanceof z||Q!=null&&Q.constructor!=null&&Q.constructor.name!=null&&Q.constructor.name===z.name}function re(Q){return Q!==Q}var oe=function(){for(var Q="0123456789abcdef",z=new Array(256),G=0;G<16;++G)for(var X=G*16,ne=0;ne<16;++ne)z[X+ne]=Q[G]+Q[ne];return z}()})(mt);var ft={},BB={get exports(){return ft},set exports(t){ft=t}},On=BB.exports={},ao,oo;function aw(){throw new Error("setTimeout has not been defined")}function ow(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?ao=setTimeout:ao=aw}catch{ao=aw}try{typeof clearTimeout=="function"?oo=clearTimeout:oo=ow}catch{oo=ow}})();function Y9(t){if(ao===setTimeout)return setTimeout(t,0);if((ao===aw||!ao)&&setTimeout)return ao=setTimeout,setTimeout(t,0);try{return ao(t,0)}catch{try{return ao.call(null,t,0)}catch{return ao.call(this,t,0)}}}function IB(t){if(oo===clearTimeout)return clearTimeout(t);if((oo===ow||!oo)&&clearTimeout)return oo=clearTimeout,clearTimeout(t);try{return oo(t)}catch{try{return oo.call(null,t)}catch{return oo.call(this,t)}}}var mf=[],nh=!1,lc,Tm=-1;function PB(){!nh||!lc||(nh=!1,lc.length?mf=lc.concat(mf):Tm=-1,mf.length&&Q9())}function Q9(){if(!nh){var t=Y9(PB);nh=!0;for(var e=mf.length;e;){for(lc=mf,mf=[];++Tm1)for(var r=1;rr.unsubscribe():r}function HB(t){let e;return J9(t,r=>e=r)(),e}Promise.resolve();const wu=[];function jB(t,e){return{subscribe:Iv(t,e).subscribe}}function Iv(t,e=ih){let r;const n=new Set;function s(f){if(UB(t,f)&&(t=f,r)){const u=!wu.length;for(const h of n)h[1](),wu.push(h,t);if(u){for(let h=0;h{n.delete(h),n.size===0&&(r(),r=null)}}return{set:s,update:i,subscribe:o}}function Cd(t,e,r){const n=!Array.isArray(t),s=n?[t]:t,i=e.length<2;return jB(r,o=>{let f=!1;const u=[];let h=0,p=ih;const d=()=>{if(h)return;p();const w=e(n?u[0]:u,o);i?o(w):p=FB(w)?w:ih},v=s.map((w,A)=>J9(w,M=>{u[A]=M,h&=~(1<{h|=1<0}),r=[],n=0,s=e;n1)throw new RangeError("integer-width stems only accept a single optional option");s.options[0].replace(lI,function(u,h,p,d,v,w){if(h)e.minimumIntegerDigits=p.length;else{if(d&&v)throw new Error("We currently do not support maximum integer digits");if(w)throw new Error("We currently do not support exact integer digits")}return""});continue}if(l7.test(s.stem)){e.minimumIntegerDigits=s.stem.length;continue}if(s4.test(s.stem)){if(s.options.length>1)throw new RangeError("Fraction-precision stems only accept a single optional option");s.stem.replace(s4,function(u,h,p,d,v,w){return p==="*"?e.minimumFractionDigits=h.length:d&&d[0]==="#"?e.maximumFractionDigits=d.length:v&&w?(e.minimumFractionDigits=v.length,e.maximumFractionDigits=v.length+w.length):(e.minimumFractionDigits=h.length,e.maximumFractionDigits=h.length),""});var i=s.options[0];i==="w"?e=_n(_n({},e),{trailingZeroDisplay:"stripIfInteger"}):i&&(e=_n(_n({},e),a4(i)));continue}if(f7.test(s.stem)){e=_n(_n({},e),a4(s.stem));continue}var o=c7(s.stem);o&&(e=_n(_n({},e),o));var f=cI(s.stem);f&&(e=_n(_n({},e),f))}return e}var V1={AX:["H"],BQ:["H"],CP:["H"],CZ:["H"],DK:["H"],FI:["H"],ID:["H"],IS:["H"],ML:["H"],NE:["H"],RU:["H"],SE:["H"],SJ:["H"],SK:["H"],AS:["h","H"],BT:["h","H"],DJ:["h","H"],ER:["h","H"],GH:["h","H"],IN:["h","H"],LS:["h","H"],PG:["h","H"],PW:["h","H"],SO:["h","H"],TO:["h","H"],VU:["h","H"],WS:["h","H"],"001":["H","h"],AL:["h","H","hB"],TD:["h","H","hB"],"ca-ES":["H","h","hB"],CF:["H","h","hB"],CM:["H","h","hB"],"fr-CA":["H","h","hB"],"gl-ES":["H","h","hB"],"it-CH":["H","h","hB"],"it-IT":["H","h","hB"],LU:["H","h","hB"],NP:["H","h","hB"],PF:["H","h","hB"],SC:["H","h","hB"],SM:["H","h","hB"],SN:["H","h","hB"],TF:["H","h","hB"],VA:["H","h","hB"],CY:["h","H","hb","hB"],GR:["h","H","hb","hB"],CO:["h","H","hB","hb"],DO:["h","H","hB","hb"],KP:["h","H","hB","hb"],KR:["h","H","hB","hb"],NA:["h","H","hB","hb"],PA:["h","H","hB","hb"],PR:["h","H","hB","hb"],VE:["h","H","hB","hb"],AC:["H","h","hb","hB"],AI:["H","h","hb","hB"],BW:["H","h","hb","hB"],BZ:["H","h","hb","hB"],CC:["H","h","hb","hB"],CK:["H","h","hb","hB"],CX:["H","h","hb","hB"],DG:["H","h","hb","hB"],FK:["H","h","hb","hB"],GB:["H","h","hb","hB"],GG:["H","h","hb","hB"],GI:["H","h","hb","hB"],IE:["H","h","hb","hB"],IM:["H","h","hb","hB"],IO:["H","h","hb","hB"],JE:["H","h","hb","hB"],LT:["H","h","hb","hB"],MK:["H","h","hb","hB"],MN:["H","h","hb","hB"],MS:["H","h","hb","hB"],NF:["H","h","hb","hB"],NG:["H","h","hb","hB"],NR:["H","h","hb","hB"],NU:["H","h","hb","hB"],PN:["H","h","hb","hB"],SH:["H","h","hb","hB"],SX:["H","h","hb","hB"],TA:["H","h","hb","hB"],ZA:["H","h","hb","hB"],"af-ZA":["H","h","hB","hb"],AR:["H","h","hB","hb"],CL:["H","h","hB","hb"],CR:["H","h","hB","hb"],CU:["H","h","hB","hb"],EA:["H","h","hB","hb"],"es-BO":["H","h","hB","hb"],"es-BR":["H","h","hB","hb"],"es-EC":["H","h","hB","hb"],"es-ES":["H","h","hB","hb"],"es-GQ":["H","h","hB","hb"],"es-PE":["H","h","hB","hb"],GT:["H","h","hB","hb"],HN:["H","h","hB","hb"],IC:["H","h","hB","hb"],KG:["H","h","hB","hb"],KM:["H","h","hB","hb"],LK:["H","h","hB","hb"],MA:["H","h","hB","hb"],MX:["H","h","hB","hb"],NI:["H","h","hB","hb"],PY:["H","h","hB","hb"],SV:["H","h","hB","hb"],UY:["H","h","hB","hb"],JP:["H","h","K"],AD:["H","hB"],AM:["H","hB"],AO:["H","hB"],AT:["H","hB"],AW:["H","hB"],BE:["H","hB"],BF:["H","hB"],BJ:["H","hB"],BL:["H","hB"],BR:["H","hB"],CG:["H","hB"],CI:["H","hB"],CV:["H","hB"],DE:["H","hB"],EE:["H","hB"],FR:["H","hB"],GA:["H","hB"],GF:["H","hB"],GN:["H","hB"],GP:["H","hB"],GW:["H","hB"],HR:["H","hB"],IL:["H","hB"],IT:["H","hB"],KZ:["H","hB"],MC:["H","hB"],MD:["H","hB"],MF:["H","hB"],MQ:["H","hB"],MZ:["H","hB"],NC:["H","hB"],NL:["H","hB"],PM:["H","hB"],PT:["H","hB"],RE:["H","hB"],RO:["H","hB"],SI:["H","hB"],SR:["H","hB"],ST:["H","hB"],TG:["H","hB"],TR:["H","hB"],WF:["H","hB"],YT:["H","hB"],BD:["h","hB","H"],PK:["h","hB","H"],AZ:["H","hB","h"],BA:["H","hB","h"],BG:["H","hB","h"],CH:["H","hB","h"],GE:["H","hB","h"],LI:["H","hB","h"],ME:["H","hB","h"],RS:["H","hB","h"],UA:["H","hB","h"],UZ:["H","hB","h"],XK:["H","hB","h"],AG:["h","hb","H","hB"],AU:["h","hb","H","hB"],BB:["h","hb","H","hB"],BM:["h","hb","H","hB"],BS:["h","hb","H","hB"],CA:["h","hb","H","hB"],DM:["h","hb","H","hB"],"en-001":["h","hb","H","hB"],FJ:["h","hb","H","hB"],FM:["h","hb","H","hB"],GD:["h","hb","H","hB"],GM:["h","hb","H","hB"],GU:["h","hb","H","hB"],GY:["h","hb","H","hB"],JM:["h","hb","H","hB"],KI:["h","hb","H","hB"],KN:["h","hb","H","hB"],KY:["h","hb","H","hB"],LC:["h","hb","H","hB"],LR:["h","hb","H","hB"],MH:["h","hb","H","hB"],MP:["h","hb","H","hB"],MW:["h","hb","H","hB"],NZ:["h","hb","H","hB"],SB:["h","hb","H","hB"],SG:["h","hb","H","hB"],SL:["h","hb","H","hB"],SS:["h","hb","H","hB"],SZ:["h","hb","H","hB"],TC:["h","hb","H","hB"],TT:["h","hb","H","hB"],UM:["h","hb","H","hB"],US:["h","hb","H","hB"],VC:["h","hb","H","hB"],VG:["h","hb","H","hB"],VI:["h","hb","H","hB"],ZM:["h","hb","H","hB"],BO:["H","hB","h","hb"],EC:["H","hB","h","hb"],ES:["H","hB","h","hb"],GQ:["H","hB","h","hb"],PE:["H","hB","h","hb"],AE:["h","hB","hb","H"],"ar-001":["h","hB","hb","H"],BH:["h","hB","hb","H"],DZ:["h","hB","hb","H"],EG:["h","hB","hb","H"],EH:["h","hB","hb","H"],HK:["h","hB","hb","H"],IQ:["h","hB","hb","H"],JO:["h","hB","hb","H"],KW:["h","hB","hb","H"],LB:["h","hB","hb","H"],LY:["h","hB","hb","H"],MO:["h","hB","hb","H"],MR:["h","hB","hb","H"],OM:["h","hB","hb","H"],PH:["h","hB","hb","H"],PS:["h","hB","hb","H"],QA:["h","hB","hb","H"],SA:["h","hB","hb","H"],SD:["h","hB","hb","H"],SY:["h","hB","hb","H"],TN:["h","hB","hb","H"],YE:["h","hB","hb","H"],AF:["H","hb","hB","h"],LA:["H","hb","hB","h"],CN:["H","hB","hb","h"],LV:["H","hB","hb","h"],TL:["H","hB","hb","h"],"zu-ZA":["H","hB","hb","h"],CD:["hB","H"],IR:["hB","H"],"hi-IN":["hB","h","H"],"kn-IN":["hB","h","H"],"ml-IN":["hB","h","H"],"te-IN":["hB","h","H"],KH:["hB","h","H","hb"],"ta-IN":["hB","h","hb","H"],BN:["hb","hB","h","H"],MY:["hb","hB","h","H"],ET:["hB","hb","h","H"],"gu-IN":["hB","hb","h","H"],"mr-IN":["hB","hb","h","H"],"pa-IN":["hB","hb","h","H"],TW:["hB","hb","h","H"],KE:["hB","hb","H","h"],MM:["hB","hb","H","h"],TZ:["hB","hb","H","h"],UG:["hB","hb","H","h"]};function hI(t,e){for(var r="",n=0;n>1),u="a",h=dI(e);for((h=="H"||h=="k")&&(f=0);f-- >0;)r+=u;for(;o-- >0;)r=h+r}else s==="J"?r+="H":r+=s}return r}function dI(t){var e=t.hourCycle;if(e===void 0&&t.hourCycles&&t.hourCycles.length&&(e=t.hourCycles[0]),e)switch(e){case"h24":return"k";case"h23":return"H";case"h12":return"h";case"h11":return"K";default:throw new Error("Invalid hourCycle")}var r=t.language,n;r!=="root"&&(n=t.maximize().region);var s=V1[n||""]||V1[r||""]||V1["".concat(r,"-001")]||V1["001"];return s[0]}var sb,pI=new RegExp("^".concat(o7.source,"*")),mI=new RegExp("".concat(o7.source,"*$"));function _r(t,e){return{start:t,end:e}}var gI=!!String.prototype.startsWith,vI=!!String.fromCodePoint,yI=!!Object.fromEntries,bI=!!String.prototype.codePointAt,wI=!!String.prototype.trimStart,AI=!!String.prototype.trimEnd,xI=!!Number.isSafeInteger,EI=xI?Number.isSafeInteger:function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t&&Math.abs(t)<=9007199254740991},cw=!0;try{var MI=h7("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");cw=((sb=MI.exec("a"))===null||sb===void 0?void 0:sb[0])==="a"}catch{cw=!1}var f4=gI?function(e,r,n){return e.startsWith(r,n)}:function(e,r,n){return e.slice(n,n+r.length)===r},uw=vI?String.fromCodePoint:function(){for(var e=[],r=0;ri;){if(o=e[i++],o>1114111)throw RangeError(o+" is not a valid code point");n+=o<65536?String.fromCharCode(o):String.fromCharCode(((o-=65536)>>10)+55296,o%1024+56320)}return n},l4=yI?Object.fromEntries:function(e){for(var r={},n=0,s=e;n=n)){var s=e.charCodeAt(r),i;return s<55296||s>56319||r+1===n||(i=e.charCodeAt(r+1))<56320||i>57343?s:(s-55296<<10)+(i-56320)+65536}},SI=wI?function(e){return e.trimStart()}:function(e){return e.replace(pI,"")},_I=AI?function(e){return e.trimEnd()}:function(e){return e.replace(mI,"")};function h7(t,e){return new RegExp(t,e)}var hw;if(cw){var c4=h7("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");hw=function(e,r){var n;c4.lastIndex=r;var s=c4.exec(e);return(n=s[1])!==null&&n!==void 0?n:""}}else hw=function(e,r){for(var n=[];;){var s=u7(e,r);if(s===void 0||d7(s)||TI(s))break;n.push(s),r+=s>=65536?2:1}return uw.apply(void 0,n)};var RI=function(){function t(e,r){r===void 0&&(r={}),this.message=e,this.position={offset:0,line:1,column:1},this.ignoreTag=!!r.ignoreTag,this.locale=r.locale,this.requiresOtherClause=!!r.requiresOtherClause,this.shouldParseSkeletons=!!r.shouldParseSkeletons}return t.prototype.parse=function(){if(this.offset()!==0)throw Error("parser can only be used once");return this.parseMessage(0,"",!1)},t.prototype.parseMessage=function(e,r,n){for(var s=[];!this.isEOF();){var i=this.char();if(i===123){var o=this.parseArgument(e,n);if(o.err)return o;s.push(o.val)}else{if(i===125&&e>0)break;if(i===35&&(r==="plural"||r==="selectordinal")){var f=this.clonePosition();this.bump(),s.push({type:dn.pound,location:_r(f,this.clonePosition())})}else if(i===60&&!this.ignoreTag&&this.peek()===47){if(n)break;return this.error(gr.UNMATCHED_CLOSING_TAG,_r(this.clonePosition(),this.clonePosition()))}else if(i===60&&!this.ignoreTag&&dw(this.peek()||0)){var o=this.parseTag(e,r);if(o.err)return o;s.push(o.val)}else{var o=this.parseLiteral(e,r);if(o.err)return o;s.push(o.val)}}}return{val:s,err:null}},t.prototype.parseTag=function(e,r){var n=this.clonePosition();this.bump();var s=this.parseTagName();if(this.bumpSpace(),this.bumpIf("/>"))return{val:{type:dn.literal,value:"<".concat(s,"/>"),location:_r(n,this.clonePosition())},err:null};if(this.bumpIf(">")){var i=this.parseMessage(e+1,r,!0);if(i.err)return i;var o=i.val,f=this.clonePosition();if(this.bumpIf("")?{val:{type:dn.tag,value:s,children:o,location:_r(n,this.clonePosition())},err:null}:this.error(gr.INVALID_TAG,_r(f,this.clonePosition())))}else return this.error(gr.UNCLOSED_TAG,_r(n,this.clonePosition()))}else return this.error(gr.INVALID_TAG,_r(n,this.clonePosition()))},t.prototype.parseTagName=function(){var e=this.offset();for(this.bump();!this.isEOF()&&CI(this.char());)this.bump();return this.message.slice(e,this.offset())},t.prototype.parseLiteral=function(e,r){for(var n=this.clonePosition(),s="";;){var i=this.tryParseQuote(r);if(i){s+=i;continue}var o=this.tryParseUnquoted(e,r);if(o){s+=o;continue}var f=this.tryParseLeftAngleBracket();if(f){s+=f;continue}break}var u=_r(n,this.clonePosition());return{val:{type:dn.literal,value:s,location:u},err:null}},t.prototype.tryParseLeftAngleBracket=function(){return!this.isEOF()&&this.char()===60&&(this.ignoreTag||!NI(this.peek()||0))?(this.bump(),"<"):null},t.prototype.tryParseQuote=function(e){if(this.isEOF()||this.char()!==39)return null;switch(this.peek()){case 39:return this.bump(),this.bump(),"'";case 123:case 60:case 62:case 125:break;case 35:if(e==="plural"||e==="selectordinal")break;return null;default:return null}this.bump();var r=[this.char()];for(this.bump();!this.isEOF();){var n=this.char();if(n===39)if(this.peek()===39)r.push(39),this.bump();else{this.bump();break}else r.push(n);this.bump()}return uw.apply(void 0,r)},t.prototype.tryParseUnquoted=function(e,r){if(this.isEOF())return null;var n=this.char();return n===60||n===123||n===35&&(r==="plural"||r==="selectordinal")||n===125&&e>0?null:(this.bump(),uw(n))},t.prototype.parseArgument=function(e,r){var n=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(gr.EXPECT_ARGUMENT_CLOSING_BRACE,_r(n,this.clonePosition()));if(this.char()===125)return this.bump(),this.error(gr.EMPTY_ARGUMENT,_r(n,this.clonePosition()));var s=this.parseIdentifierIfPossible().value;if(!s)return this.error(gr.MALFORMED_ARGUMENT,_r(n,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(gr.EXPECT_ARGUMENT_CLOSING_BRACE,_r(n,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:dn.argument,value:s,location:_r(n,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(gr.EXPECT_ARGUMENT_CLOSING_BRACE,_r(n,this.clonePosition())):this.parseArgumentOptions(e,r,s,n);default:return this.error(gr.MALFORMED_ARGUMENT,_r(n,this.clonePosition()))}},t.prototype.parseIdentifierIfPossible=function(){var e=this.clonePosition(),r=this.offset(),n=hw(this.message,r),s=r+n.length;this.bumpTo(s);var i=this.clonePosition(),o=_r(e,i);return{value:n,location:o}},t.prototype.parseArgumentOptions=function(e,r,n,s){var i,o=this.clonePosition(),f=this.parseIdentifierIfPossible().value,u=this.clonePosition();switch(f){case"":return this.error(gr.EXPECT_ARGUMENT_TYPE,_r(o,u));case"number":case"date":case"time":{this.bumpSpace();var h=null;if(this.bumpIf(",")){this.bumpSpace();var p=this.clonePosition(),d=this.parseSimpleArgStyleIfPossible();if(d.err)return d;var v=_I(d.val);if(v.length===0)return this.error(gr.EXPECT_ARGUMENT_STYLE,_r(this.clonePosition(),this.clonePosition()));var w=_r(p,this.clonePosition());h={style:v,styleLocation:w}}var A=this.tryParseArgumentClose(s);if(A.err)return A;var M=_r(s,this.clonePosition());if(h&&f4(h==null?void 0:h.style,"::",0)){var R=SI(h.style.slice(2));if(f==="number"){var d=this.parseNumberSkeletonFromString(R,h.styleLocation);return d.err?d:{val:{type:dn.number,value:n,location:M,style:d.val},err:null}}else{if(R.length===0)return this.error(gr.EXPECT_DATE_TIME_SKELETON,M);var N=R;this.locale&&(N=hI(R,this.locale));var v={type:od.dateTime,pattern:N,location:h.styleLocation,parsedOptions:this.shouldParseSkeletons?sI(N):{}},C=f==="date"?dn.date:dn.time;return{val:{type:C,value:n,location:M,style:v},err:null}}}return{val:{type:f==="number"?dn.number:f==="date"?dn.date:dn.time,value:n,location:M,style:(i=h==null?void 0:h.style)!==null&&i!==void 0?i:null},err:null}}case"plural":case"selectordinal":case"select":{var B=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(","))return this.error(gr.EXPECT_SELECT_ARGUMENT_OPTIONS,_r(B,bg({},B)));this.bumpSpace();var O=this.parseIdentifierIfPossible(),D=0;if(f!=="select"&&O.value==="offset"){if(!this.bumpIf(":"))return this.error(gr.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,_r(this.clonePosition(),this.clonePosition()));this.bumpSpace();var d=this.tryParseDecimalInteger(gr.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,gr.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);if(d.err)return d;this.bumpSpace(),O=this.parseIdentifierIfPossible(),D=d.val}var q=this.tryParsePluralOrSelectOptions(e,f,r,O);if(q.err)return q;var A=this.tryParseArgumentClose(s);if(A.err)return A;var W=_r(s,this.clonePosition());return f==="select"?{val:{type:dn.select,value:n,options:l4(q.val),location:W},err:null}:{val:{type:dn.plural,value:n,options:l4(q.val),offset:D,pluralType:f==="plural"?"cardinal":"ordinal",location:W},err:null}}default:return this.error(gr.INVALID_ARGUMENT_TYPE,_r(o,u))}},t.prototype.tryParseArgumentClose=function(e){return this.isEOF()||this.char()!==125?this.error(gr.EXPECT_ARGUMENT_CLOSING_BRACE,_r(e,this.clonePosition())):(this.bump(),{val:!0,err:null})},t.prototype.parseSimpleArgStyleIfPossible=function(){for(var e=0,r=this.clonePosition();!this.isEOF();){var n=this.char();switch(n){case 39:{this.bump();var s=this.clonePosition();if(!this.bumpUntil("'"))return this.error(gr.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE,_r(s,this.clonePosition()));this.bump();break}case 123:{e+=1,this.bump();break}case 125:{if(e>0)e-=1;else return{val:this.message.slice(r.offset,this.offset()),err:null};break}default:this.bump();break}}return{val:this.message.slice(r.offset,this.offset()),err:null}},t.prototype.parseNumberSkeletonFromString=function(e,r){var n=[];try{n=oI(e)}catch{return this.error(gr.INVALID_NUMBER_SKELETON,r)}return{val:{type:od.number,tokens:n,location:r,parsedOptions:this.shouldParseSkeletons?uI(n):{}},err:null}},t.prototype.tryParsePluralOrSelectOptions=function(e,r,n,s){for(var i,o=!1,f=[],u=new Set,h=s.value,p=s.location;;){if(h.length===0){var d=this.clonePosition();if(r!=="select"&&this.bumpIf("=")){var v=this.tryParseDecimalInteger(gr.EXPECT_PLURAL_ARGUMENT_SELECTOR,gr.INVALID_PLURAL_ARGUMENT_SELECTOR);if(v.err)return v;p=_r(d,this.clonePosition()),h=this.message.slice(d.offset,this.offset())}else break}if(u.has(h))return this.error(r==="select"?gr.DUPLICATE_SELECT_ARGUMENT_SELECTOR:gr.DUPLICATE_PLURAL_ARGUMENT_SELECTOR,p);h==="other"&&(o=!0),this.bumpSpace();var w=this.clonePosition();if(!this.bumpIf("{"))return this.error(r==="select"?gr.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT:gr.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT,_r(this.clonePosition(),this.clonePosition()));var A=this.parseMessage(e+1,r,n);if(A.err)return A;var M=this.tryParseArgumentClose(w);if(M.err)return M;f.push([h,{value:A.val,location:_r(w,this.clonePosition())}]),u.add(h),this.bumpSpace(),i=this.parseIdentifierIfPossible(),h=i.value,p=i.location}return f.length===0?this.error(r==="select"?gr.EXPECT_SELECT_ARGUMENT_SELECTOR:gr.EXPECT_PLURAL_ARGUMENT_SELECTOR,_r(this.clonePosition(),this.clonePosition())):this.requiresOtherClause&&!o?this.error(gr.MISSING_OTHER_CLAUSE,_r(this.clonePosition(),this.clonePosition())):{val:f,err:null}},t.prototype.tryParseDecimalInteger=function(e,r){var n=1,s=this.clonePosition();this.bumpIf("+")||this.bumpIf("-")&&(n=-1);for(var i=!1,o=0;!this.isEOF();){var f=this.char();if(f>=48&&f<=57)i=!0,o=o*10+(f-48),this.bump();else break}var u=_r(s,this.clonePosition());return i?(o*=n,EI(o)?{val:o,err:null}:this.error(r,u)):this.error(e,u)},t.prototype.offset=function(){return this.position.offset},t.prototype.isEOF=function(){return this.offset()===this.message.length},t.prototype.clonePosition=function(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}},t.prototype.char=function(){var e=this.position.offset;if(e>=this.message.length)throw Error("out of bound");var r=u7(this.message,e);if(r===void 0)throw Error("Offset ".concat(e," is at invalid UTF-16 code unit boundary"));return r},t.prototype.error=function(e,r){return{val:null,err:{kind:e,message:this.message,location:r}}},t.prototype.bump=function(){if(!this.isEOF()){var e=this.char();e===10?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=e<65536?1:2)}},t.prototype.bumpIf=function(e){if(f4(this.message,e,this.offset())){for(var r=0;r=0?(this.bumpTo(n),!0):(this.bumpTo(this.message.length),!1)},t.prototype.bumpTo=function(e){if(this.offset()>e)throw Error("targetOffset ".concat(e," must be greater than or equal to the current offset ").concat(this.offset()));for(e=Math.min(e,this.message.length);;){var r=this.offset();if(r===e)break;if(r>e)throw Error("targetOffset ".concat(e," is at invalid UTF-16 code unit boundary"));if(this.bump(),this.isEOF())break}},t.prototype.bumpSpace=function(){for(;!this.isEOF()&&d7(this.char());)this.bump()},t.prototype.peek=function(){if(this.isEOF())return null;var e=this.char(),r=this.offset(),n=this.message.charCodeAt(r+(e>=65536?2:1));return n??null},t}();function dw(t){return t>=97&&t<=122||t>=65&&t<=90}function NI(t){return dw(t)||t===47}function CI(t){return t===45||t===46||t>=48&&t<=57||t===95||t>=97&&t<=122||t>=65&&t<=90||t==183||t>=192&&t<=214||t>=216&&t<=246||t>=248&&t<=893||t>=895&&t<=8191||t>=8204&&t<=8205||t>=8255&&t<=8256||t>=8304&&t<=8591||t>=11264&&t<=12271||t>=12289&&t<=55295||t>=63744&&t<=64975||t>=65008&&t<=65533||t>=65536&&t<=983039}function d7(t){return t>=9&&t<=13||t===32||t===133||t>=8206&&t<=8207||t===8232||t===8233}function TI(t){return t>=33&&t<=35||t===36||t>=37&&t<=39||t===40||t===41||t===42||t===43||t===44||t===45||t>=46&&t<=47||t>=58&&t<=59||t>=60&&t<=62||t>=63&&t<=64||t===91||t===92||t===93||t===94||t===96||t===123||t===124||t===125||t===126||t===161||t>=162&&t<=165||t===166||t===167||t===169||t===171||t===172||t===174||t===176||t===177||t===182||t===187||t===191||t===215||t===247||t>=8208&&t<=8213||t>=8214&&t<=8215||t===8216||t===8217||t===8218||t>=8219&&t<=8220||t===8221||t===8222||t===8223||t>=8224&&t<=8231||t>=8240&&t<=8248||t===8249||t===8250||t>=8251&&t<=8254||t>=8257&&t<=8259||t===8260||t===8261||t===8262||t>=8263&&t<=8273||t===8274||t===8275||t>=8277&&t<=8286||t>=8592&&t<=8596||t>=8597&&t<=8601||t>=8602&&t<=8603||t>=8604&&t<=8607||t===8608||t>=8609&&t<=8610||t===8611||t>=8612&&t<=8613||t===8614||t>=8615&&t<=8621||t===8622||t>=8623&&t<=8653||t>=8654&&t<=8655||t>=8656&&t<=8657||t===8658||t===8659||t===8660||t>=8661&&t<=8691||t>=8692&&t<=8959||t>=8960&&t<=8967||t===8968||t===8969||t===8970||t===8971||t>=8972&&t<=8991||t>=8992&&t<=8993||t>=8994&&t<=9e3||t===9001||t===9002||t>=9003&&t<=9083||t===9084||t>=9085&&t<=9114||t>=9115&&t<=9139||t>=9140&&t<=9179||t>=9180&&t<=9185||t>=9186&&t<=9254||t>=9255&&t<=9279||t>=9280&&t<=9290||t>=9291&&t<=9311||t>=9472&&t<=9654||t===9655||t>=9656&&t<=9664||t===9665||t>=9666&&t<=9719||t>=9720&&t<=9727||t>=9728&&t<=9838||t===9839||t>=9840&&t<=10087||t===10088||t===10089||t===10090||t===10091||t===10092||t===10093||t===10094||t===10095||t===10096||t===10097||t===10098||t===10099||t===10100||t===10101||t>=10132&&t<=10175||t>=10176&&t<=10180||t===10181||t===10182||t>=10183&&t<=10213||t===10214||t===10215||t===10216||t===10217||t===10218||t===10219||t===10220||t===10221||t===10222||t===10223||t>=10224&&t<=10239||t>=10240&&t<=10495||t>=10496&&t<=10626||t===10627||t===10628||t===10629||t===10630||t===10631||t===10632||t===10633||t===10634||t===10635||t===10636||t===10637||t===10638||t===10639||t===10640||t===10641||t===10642||t===10643||t===10644||t===10645||t===10646||t===10647||t===10648||t>=10649&&t<=10711||t===10712||t===10713||t===10714||t===10715||t>=10716&&t<=10747||t===10748||t===10749||t>=10750&&t<=11007||t>=11008&&t<=11055||t>=11056&&t<=11076||t>=11077&&t<=11078||t>=11079&&t<=11084||t>=11085&&t<=11123||t>=11124&&t<=11125||t>=11126&&t<=11157||t===11158||t>=11159&&t<=11263||t>=11776&&t<=11777||t===11778||t===11779||t===11780||t===11781||t>=11782&&t<=11784||t===11785||t===11786||t===11787||t===11788||t===11789||t>=11790&&t<=11798||t===11799||t>=11800&&t<=11801||t===11802||t===11803||t===11804||t===11805||t>=11806&&t<=11807||t===11808||t===11809||t===11810||t===11811||t===11812||t===11813||t===11814||t===11815||t===11816||t===11817||t>=11818&&t<=11822||t===11823||t>=11824&&t<=11833||t>=11834&&t<=11835||t>=11836&&t<=11839||t===11840||t===11841||t===11842||t>=11843&&t<=11855||t>=11856&&t<=11857||t===11858||t>=11859&&t<=11903||t>=12289&&t<=12291||t===12296||t===12297||t===12298||t===12299||t===12300||t===12301||t===12302||t===12303||t===12304||t===12305||t>=12306&&t<=12307||t===12308||t===12309||t===12310||t===12311||t===12312||t===12313||t===12314||t===12315||t===12316||t===12317||t>=12318&&t<=12319||t===12320||t===12336||t===64830||t===64831||t>=65093&&t<=65094}function pw(t){t.forEach(function(e){if(delete e.location,n7(e)||i7(e))for(var r in e.options)delete e.options[r].location,pw(e.options[r].value);else e7(e)&&a7(e.style)||(t7(e)||r7(e))&&lw(e.style)?delete e.style.location:s7(e)&&pw(e.children)})}function kI(t,e){e===void 0&&(e={}),e=bg({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var r=new RI(t,e).parse();if(r.err){var n=SyntaxError(gr[r.err.kind]);throw n.location=r.err.location,n.originalMessage=r.err.message,n}return e!=null&&e.captureLocation||pw(r.val),r.val}function ab(t,e){var r=e&&e.cache?e.cache:DI,n=e&&e.serializer?e.serializer:LI,s=e&&e.strategy?e.strategy:II;return s(t,{cache:r,serializer:n})}function BI(t){return t==null||typeof t=="number"||typeof t=="boolean"}function p7(t,e,r,n){var s=BI(n)?n:r(n),i=e.get(s);return typeof i>"u"&&(i=t.call(this,n),e.set(s,i)),i}function m7(t,e,r){var n=Array.prototype.slice.call(arguments,3),s=r(n),i=e.get(s);return typeof i>"u"&&(i=t.apply(this,n),e.set(s,i)),i}function YA(t,e,r,n,s){return r.bind(e,t,n,s)}function II(t,e){var r=t.length===1?p7:m7;return YA(t,this,r,e.cache.create(),e.serializer)}function PI(t,e){return YA(t,this,m7,e.cache.create(),e.serializer)}function OI(t,e){return YA(t,this,p7,e.cache.create(),e.serializer)}var LI=function(){return JSON.stringify(arguments)};function QA(){this.cache=Object.create(null)}QA.prototype.get=function(t){return this.cache[t]};QA.prototype.set=function(t,e){this.cache[t]=e};var DI={create:function(){return new QA}},ob={variadic:PI,monadic:OI},fd;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(fd||(fd={}));var Ov=function(t){Pv(e,t);function e(r,n,s){var i=t.call(this,r)||this;return i.code=n,i.originalMessage=s,i}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error),u4=function(t){Pv(e,t);function e(r,n,s,i){return t.call(this,'Invalid values for "'.concat(r,'": "').concat(n,'". Options are "').concat(Object.keys(s).join('", "'),'"'),fd.INVALID_VALUE,i)||this}return e}(Ov),FI=function(t){Pv(e,t);function e(r,n,s){return t.call(this,'Value for "'.concat(r,'" must be of type ').concat(n),fd.INVALID_VALUE,s)||this}return e}(Ov),UI=function(t){Pv(e,t);function e(r,n){return t.call(this,'The intl string context variable "'.concat(r,'" was not provided to the string "').concat(n,'"'),fd.MISSING_VALUE,n)||this}return e}(Ov),qi;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(qi||(qi={}));function HI(t){return t.length<2?t:t.reduce(function(e,r){var n=e[e.length-1];return!n||n.type!==qi.literal||r.type!==qi.literal?e.push(r):n.value+=r.value,e},[])}function jI(t){return typeof t=="function"}function km(t,e,r,n,s,i,o){if(t.length===1&&i4(t[0]))return[{type:qi.literal,value:t[0].value}];for(var f=[],u=0,h=t;u0?new Intl.Locale(r[0]):new Intl.Locale(typeof e=="string"?e:e[0])},t.__parse=kI,t.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},t}();const bl={},VI=(t,e,r)=>r&&(e in bl||(bl[e]={}),t in bl[e]||(bl[e][t]=r),r),g7=(t,e)=>{if(e==null)return;if(e in bl&&t in bl[e])return bl[e][t];const r=f1(e);for(let n=0;n0){const u=i.slice(f,i.length).join(".");if(u in o){o=o[u];break}}o=o[i[f]]}else o=void 0;return o}(r,e)}function Bm(t,...e){delete bl[t],o1.update(r=>(r[t]=tI.all([r[t]||{},...e]),r))}Cd([o1],([t])=>Object.keys(t));o1.subscribe(t=>XA=t);const Im={};function y7(t){return Im[t]}function wg(t){return t!=null&&f1(t).some(e=>{var r;return(r=y7(e))===null||r===void 0?void 0:r.size})}function ZI(t,e){return Promise.all(e.map(n=>(function(s,i){Im[s].delete(i),Im[s].size===0&&delete Im[s]}(t,n),n().then(s=>s.default||s)))).then(n=>Bm(t,...n))}const o0={};function b7(t){if(!wg(t))return t in o0?o0[t]:Promise.resolve();const e=function(r){return f1(r).map(n=>{const s=y7(n);return[n,s?[...s]:[]]}).filter(([,n])=>n.length>0)}(t);return o0[t]=Promise.all(e.map(([r,n])=>ZI(r,n))).then(()=>{if(wg(t))return b7(t);delete o0[t]}),o0[t]}function YI({locale:t,id:e}){console.warn(`[svelte-i18n] The message "${e}" was not found in "${f1(t).join('", "')}".${wg(Ol())?` - -Note: there are at least one loader still registered to this locale that wasn't executed.`:""}`)}const N0={fallbackLocale:null,loadingDelay:200,formats:{number:{scientific:{notation:"scientific"},engineering:{notation:"engineering"},compactLong:{notation:"compact",compactDisplay:"long"},compactShort:{notation:"compact",compactDisplay:"short"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},warnOnMissingMessages:!0,handleMissingMessage:void 0,ignoreTag:!0};function ld(){return N0}function QI(t){const{formats:e,...r}=t,n=t.initialLocale||t.fallbackLocale;return r.warnOnMissingMessages&&(delete r.warnOnMissingMessages,r.handleMissingMessage==null?r.handleMissingMessage=YI:console.warn('[svelte-i18n] The "warnOnMissingMessages" option is deprecated. Please use the "handleMissingMessage" option instead.')),Object.assign(N0,r,{initialLocale:n}),e&&("number"in e&&Object.assign(N0.formats.number,e.number),"date"in e&&Object.assign(N0.formats.date,e.date),"time"in e&&Object.assign(N0.formats.time,e.time)),tu.set(n)}const lb=Iv(!1);let mw;const Pm=Iv(null);function h4(t){return t.split("-").map((e,r,n)=>n.slice(0,r+1).join("-")).reverse()}function f1(t,e=ld().fallbackLocale){const r=h4(t);return e?[...new Set([...r,...h4(e)])]:r}function Ol(){return mw??void 0}Pm.subscribe(t=>{mw=t??void 0,typeof window<"u"&&t!=null&&document.documentElement.setAttribute("lang",t)});const tu={...Pm,set:t=>{if(t&&function(e){if(e==null)return;const r=f1(e);for(let n=0;nlb.set(!0),e):lb.set(!0),b7(t).then(()=>{Pm.set(t)}).finally(()=>{clearTimeout(r),lb.set(!1)})}return Pm.set(t)}},XI=()=>typeof window>"u"?null:window.navigator.language||window.navigator.languages[0],Lv=t=>{const e=Object.create(null);return r=>{const n=JSON.stringify(r);return n in e?e[n]:e[n]=t(r)}},ip=(t,e)=>{const{formats:r}=ld();if(t in r&&e in r[t])return r[t][e];throw new Error(`[svelte-i18n] Unknown "${e}" ${t} format.`)},JI=Lv(({locale:t,format:e,...r})=>{if(t==null)throw new Error('[svelte-i18n] A "locale" must be set to format numbers');return e&&(r=ip("number",e)),new Intl.NumberFormat(t,r)}),$I=Lv(({locale:t,format:e,...r})=>{if(t==null)throw new Error('[svelte-i18n] A "locale" must be set to format dates');return e?r=ip("date",e):Object.keys(r).length===0&&(r=ip("date","short")),new Intl.DateTimeFormat(t,r)}),eP=Lv(({locale:t,format:e,...r})=>{if(t==null)throw new Error('[svelte-i18n] A "locale" must be set to format time values');return e?r=ip("time",e):Object.keys(r).length===0&&(r=ip("time","short")),new Intl.DateTimeFormat(t,r)}),tP=({locale:t=Ol(),...e}={})=>JI({locale:t,...e}),rP=({locale:t=Ol(),...e}={})=>$I({locale:t,...e}),nP=({locale:t=Ol(),...e}={})=>eP({locale:t,...e}),iP=Lv((t,e=Ol())=>new GI(t,e,ld().formats,{ignoreTag:ld().ignoreTag})),sP=(t,e={})=>{var r,n,s,i;let o=e;typeof t=="object"&&(o=t,t=o.id);const{values:f,locale:u=Ol(),default:h}=o;if(u==null)throw new Error("[svelte-i18n] Cannot format a message without first setting the initial locale.");let p=g7(t,u);if(p){if(typeof p!="string")return console.warn(`[svelte-i18n] Message with id "${t}" must be of type "string", found: "${typeof p}". Gettin its value through the "$format" method is deprecated; use the "json" method instead.`),p}else p=(i=(s=(n=(r=ld()).handleMissingMessage)===null||n===void 0?void 0:n.call(r,{locale:u,id:t,defaultValue:h}))!==null&&s!==void 0?s:h)!==null&&i!==void 0?i:t;if(!f)return p;let d=p;try{d=iP(p,u).format(f)}catch(v){v instanceof Error&&console.warn(`[svelte-i18n] Message "${t}" has syntax error:`,v.message)}return d},aP=(t,e)=>nP(e).format(t),oP=(t,e)=>rP(e).format(t),fP=(t,e)=>tP(e).format(t),lP=(t,e=Ol())=>g7(t,e),Pf=Cd([tu,o1],()=>sP);Cd([tu],()=>aP);Cd([tu],()=>oP);Cd([tu],()=>fP);Cd([tu,o1],()=>lP);let w7=(t=21)=>crypto.getRandomValues(new Uint8Array(t)).reduce((e,r)=>(r&=63,r<36?e+=r.toString(36):r<62?e+=(r-26).toString(36).toUpperCase():r>62?e+="-":e+="_",e),"");var Ag={},cP={get exports(){return Ag},set exports(t){Ag=t}};(function(t,e){var r=200,n="Expected a function",s="__lodash_hash_undefined__",i=1,o=2,f=1/0,u=9007199254740991,h="[object Arguments]",p="[object Array]",d="[object Boolean]",v="[object Date]",w="[object Error]",A="[object Function]",M="[object GeneratorFunction]",R="[object Map]",N="[object Number]",C="[object Object]",B="[object Promise]",O="[object RegExp]",D="[object Set]",q="[object String]",W="[object Symbol]",k="[object WeakMap]",I="[object ArrayBuffer]",H="[object DataView]",P="[object Float32Array]",T="[object Float64Array]",g="[object Int8Array]",a="[object Int16Array]",c="[object Int32Array]",m="[object Uint8Array]",b="[object Uint8ClampedArray]",x="[object Uint16Array]",_="[object Uint32Array]",S=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,y=/^\w*$/,l=/^\./,E=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Y=/[\\^$.*+?()[\]{}|]/g,L=/\\(\\)?/g,F=/^\[object .+?Constructor\]$/,V=/^(?:0|[1-9]\d*)$/,Z={};Z[P]=Z[T]=Z[g]=Z[a]=Z[c]=Z[m]=Z[b]=Z[x]=Z[_]=!0,Z[h]=Z[p]=Z[I]=Z[d]=Z[H]=Z[v]=Z[w]=Z[A]=Z[R]=Z[N]=Z[C]=Z[O]=Z[D]=Z[q]=Z[k]=!1;var ee=typeof ue=="object"&&ue&&ue.Object===Object&&ue,ce=typeof self=="object"&&self&&self.Object===Object&&self,U=ee||ce||Function("return this")(),j=e&&!e.nodeType&&e,se=j&&!0&&t&&!t.nodeType&&t,re=se&&se.exports===j,oe=re&&ee.process,Q=function(){try{return oe&&oe.binding("util")}catch{}}(),z=Q&&Q.isTypedArray;function G($,K,J,fe){for(var Ae=-1,Qe=$?$.length:0;++Ae-1}function Gt($,K){var J=this.__data__,fe=Uf(J,$);return fe<0?J.push([$,K]):J[fe][1]=K,this}Le.prototype.clear=Ye,Le.prototype.delete=Ar,Le.prototype.get=xr,Le.prototype.has=Er,Le.prototype.set=Gt;function Vt($){var K=-1,J=$?$.length:0;for(this.clear();++Kyt))return!1;var Lt=Qe.get($);if(Lt&&Qe.get(K))return Lt==K;var fr=-1,tr=!0,Jt=Ae&i?new mr:void 0;for(Qe.set($,K),Qe.set(K,$);++fr-1&&$%1==0&&$-1&&$%1==0&&$<=u}function vn($){var K=typeof $;return!!$&&(K=="object"||K=="function")}function ji($){return!!$&&typeof $=="object"}function Aa($){return typeof $=="symbol"||ji($)&&He.call($)==W}var $l=z?Me(z):$d;function vu($){return $==null?"":Zl($)}function qy($,K,J){var fe=$==null?void 0:jo($,K);return fe===void 0?J:fe}function Gy($,K){return $!=null&&va($,K,Gl)}function jf($){return Fr($)?Wd($):cu($)}function Vy($){return $}function Wy($){return ba($)?ne(wa($)):n0($)}t.exports=he})(cP,Ag);const uP=Ag;var sp={},hP={get exports(){return sp},set exports(t){sp=t}};(function(t){(function(){var e="input is invalid type",r="finalize already called",n=typeof window=="object",s=n?window:{};s.JS_SHA3_NO_WINDOW&&(n=!1);var i=!n&&typeof self=="object",o=!s.JS_SHA3_NO_NODE_JS&&typeof ft=="object"&&ft.versions&&ft.versions.node;o?s=ue:i&&(s=self);var f=!s.JS_SHA3_NO_COMMON_JS&&!0&&t.exports,u=!s.JS_SHA3_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",h="0123456789abcdef".split(""),p=[31,7936,2031616,520093696],d=[4,1024,262144,67108864],v=[1,256,65536,16777216],w=[6,1536,393216,100663296],A=[0,8,16,24],M=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],R=[224,256,384,512],N=[128,256],C=["hex","buffer","arrayBuffer","array","digest"],B={128:168,256:136};(s.JS_SHA3_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(L){return Object.prototype.toString.call(L)==="[object Array]"}),u&&(s.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(L){return typeof L=="object"&&L.buffer&&L.buffer.constructor===ArrayBuffer});for(var O=function(L,F,V){return function(Z){return new l(L,F,L).update(Z)[V]()}},D=function(L,F,V){return function(Z,ee){return new l(L,F,ee).update(Z)[V]()}},q=function(L,F,V){return function(Z,ee,ce,U){return a["cshake"+L].update(Z,ee,ce,U)[V]()}},W=function(L,F,V){return function(Z,ee,ce,U){return a["kmac"+L].update(Z,ee,ce,U)[V]()}},k=function(L,F,V,Z){for(var ee=0;ee>5,this.byteCount=this.blockCount<<2,this.outputBlocks=V>>5,this.extraBytes=(V&31)>>3;for(var Z=0;Z<50;++Z)this.s[Z]=0}l.prototype.update=function(L){if(this.finalized)throw new Error(r);var F,V=typeof L;if(V!=="string"){if(V==="object"){if(L===null)throw new Error(e);if(u&&L.constructor===ArrayBuffer)L=new Uint8Array(L);else if(!Array.isArray(L)&&(!u||!ArrayBuffer.isView(L)))throw new Error(e)}else throw new Error(e);F=!0}for(var Z=this.blocks,ee=this.byteCount,ce=L.length,U=this.blockCount,j=0,se=this.s,re,oe;j>2]|=L[j]<>2]|=oe<>2]|=(192|oe>>6)<>2]|=(128|oe&63)<=57344?(Z[re>>2]|=(224|oe>>12)<>2]|=(128|oe>>6&63)<>2]|=(128|oe&63)<>2]|=(240|oe>>18)<>2]|=(128|oe>>12&63)<>2]|=(128|oe>>6&63)<>2]|=(128|oe&63)<=ee){for(this.start=re-ee,this.block=Z[U],re=0;re>8,V=L&255;V>0;)ee.unshift(V),L=L>>8,V=L&255,++Z;return F?ee.push(Z):ee.unshift(Z),this.update(ee),ee.length},l.prototype.encodeString=function(L){var F,V=typeof L;if(V!=="string"){if(V==="object"){if(L===null)throw new Error(e);if(u&&L.constructor===ArrayBuffer)L=new Uint8Array(L);else if(!Array.isArray(L)&&(!u||!ArrayBuffer.isView(L)))throw new Error(e)}else throw new Error(e);F=!0}var Z=0,ee=L.length;if(F)Z=ee;else for(var ce=0;ce=57344?Z+=3:(U=65536+((U&1023)<<10|L.charCodeAt(++ce)&1023),Z+=4)}return Z+=this.encode(Z*8),this.update(L),Z},l.prototype.bytepad=function(L,F){for(var V=this.encode(F),Z=0;Z>2]|=this.padding[F&3],this.lastByteIndex===this.byteCount)for(L[0]=L[V],F=1;F>4&15]+h[j&15]+h[j>>12&15]+h[j>>8&15]+h[j>>20&15]+h[j>>16&15]+h[j>>28&15]+h[j>>24&15];ce%L===0&&(Y(F),ee=0)}return Z&&(j=F[ee],U+=h[j>>4&15]+h[j&15],Z>1&&(U+=h[j>>12&15]+h[j>>8&15]),Z>2&&(U+=h[j>>20&15]+h[j>>16&15])),U},l.prototype.arrayBuffer=function(){this.finalize();var L=this.blockCount,F=this.s,V=this.outputBlocks,Z=this.extraBytes,ee=0,ce=0,U=this.outputBits>>3,j;Z?j=new ArrayBuffer(V+1<<2):j=new ArrayBuffer(U);for(var se=new Uint32Array(j);ce>8&255,U[j+2]=se>>16&255,U[j+3]=se>>24&255;ce%L===0&&Y(F)}return Z&&(j=ce<<2,se=F[ee],U[j]=se&255,Z>1&&(U[j+1]=se>>8&255),Z>2&&(U[j+2]=se>>16&255)),U};function E(L,F,V){l.call(this,L,F,V)}E.prototype=new l,E.prototype.finalize=function(){return this.encode(this.outputBits,!0),l.prototype.finalize.call(this)};var Y=function(L){var F,V,Z,ee,ce,U,j,se,re,oe,Q,z,G,X,ne,ae,Me,ge,pe,ot,we,me,ut,ze,_e,Bt,qe,Te,xt,He,Se,Rt,Ve,Ee,Nt,Ze,Re,Ct,je,ke,Pt,Ke,Ne,Ot,De,Be,kt,Ge,Ie,Ut,Ue,Oe,It,We,Pe,_t,Le,Ye,Ar,xr,Er,Gt,Vt;for(Z=0;Z<48;Z+=2)ee=L[0]^L[10]^L[20]^L[30]^L[40],ce=L[1]^L[11]^L[21]^L[31]^L[41],U=L[2]^L[12]^L[22]^L[32]^L[42],j=L[3]^L[13]^L[23]^L[33]^L[43],se=L[4]^L[14]^L[24]^L[34]^L[44],re=L[5]^L[15]^L[25]^L[35]^L[45],oe=L[6]^L[16]^L[26]^L[36]^L[46],Q=L[7]^L[17]^L[27]^L[37]^L[47],z=L[8]^L[18]^L[28]^L[38]^L[48],G=L[9]^L[19]^L[29]^L[39]^L[49],F=z^(U<<1|j>>>31),V=G^(j<<1|U>>>31),L[0]^=F,L[1]^=V,L[10]^=F,L[11]^=V,L[20]^=F,L[21]^=V,L[30]^=F,L[31]^=V,L[40]^=F,L[41]^=V,F=ee^(se<<1|re>>>31),V=ce^(re<<1|se>>>31),L[2]^=F,L[3]^=V,L[12]^=F,L[13]^=V,L[22]^=F,L[23]^=V,L[32]^=F,L[33]^=V,L[42]^=F,L[43]^=V,F=U^(oe<<1|Q>>>31),V=j^(Q<<1|oe>>>31),L[4]^=F,L[5]^=V,L[14]^=F,L[15]^=V,L[24]^=F,L[25]^=V,L[34]^=F,L[35]^=V,L[44]^=F,L[45]^=V,F=se^(z<<1|G>>>31),V=re^(G<<1|z>>>31),L[6]^=F,L[7]^=V,L[16]^=F,L[17]^=V,L[26]^=F,L[27]^=V,L[36]^=F,L[37]^=V,L[46]^=F,L[47]^=V,F=oe^(ee<<1|ce>>>31),V=Q^(ce<<1|ee>>>31),L[8]^=F,L[9]^=V,L[18]^=F,L[19]^=V,L[28]^=F,L[29]^=V,L[38]^=F,L[39]^=V,L[48]^=F,L[49]^=V,X=L[0],ne=L[1],Be=L[11]<<4|L[10]>>>28,kt=L[10]<<4|L[11]>>>28,Te=L[20]<<3|L[21]>>>29,xt=L[21]<<3|L[20]>>>29,xr=L[31]<<9|L[30]>>>23,Er=L[30]<<9|L[31]>>>23,Ke=L[40]<<18|L[41]>>>14,Ne=L[41]<<18|L[40]>>>14,Ee=L[2]<<1|L[3]>>>31,Nt=L[3]<<1|L[2]>>>31,ae=L[13]<<12|L[12]>>>20,Me=L[12]<<12|L[13]>>>20,Ge=L[22]<<10|L[23]>>>22,Ie=L[23]<<10|L[22]>>>22,He=L[33]<<13|L[32]>>>19,Se=L[32]<<13|L[33]>>>19,Gt=L[42]<<2|L[43]>>>30,Vt=L[43]<<2|L[42]>>>30,We=L[5]<<30|L[4]>>>2,Pe=L[4]<<30|L[5]>>>2,Ze=L[14]<<6|L[15]>>>26,Re=L[15]<<6|L[14]>>>26,ge=L[25]<<11|L[24]>>>21,pe=L[24]<<11|L[25]>>>21,Ut=L[34]<<15|L[35]>>>17,Ue=L[35]<<15|L[34]>>>17,Rt=L[45]<<29|L[44]>>>3,Ve=L[44]<<29|L[45]>>>3,ze=L[6]<<28|L[7]>>>4,_e=L[7]<<28|L[6]>>>4,_t=L[17]<<23|L[16]>>>9,Le=L[16]<<23|L[17]>>>9,Ct=L[26]<<25|L[27]>>>7,je=L[27]<<25|L[26]>>>7,ot=L[36]<<21|L[37]>>>11,we=L[37]<<21|L[36]>>>11,Oe=L[47]<<24|L[46]>>>8,It=L[46]<<24|L[47]>>>8,Ot=L[8]<<27|L[9]>>>5,De=L[9]<<27|L[8]>>>5,Bt=L[18]<<20|L[19]>>>12,qe=L[19]<<20|L[18]>>>12,Ye=L[29]<<7|L[28]>>>25,Ar=L[28]<<7|L[29]>>>25,ke=L[38]<<8|L[39]>>>24,Pt=L[39]<<8|L[38]>>>24,me=L[48]<<14|L[49]>>>18,ut=L[49]<<14|L[48]>>>18,L[0]=X^~ae&ge,L[1]=ne^~Me&pe,L[10]=ze^~Bt&Te,L[11]=_e^~qe&xt,L[20]=Ee^~Ze&Ct,L[21]=Nt^~Re&je,L[30]=Ot^~Be&Ge,L[31]=De^~kt&Ie,L[40]=We^~_t&Ye,L[41]=Pe^~Le&Ar,L[2]=ae^~ge&ot,L[3]=Me^~pe&we,L[12]=Bt^~Te&He,L[13]=qe^~xt&Se,L[22]=Ze^~Ct&ke,L[23]=Re^~je&Pt,L[32]=Be^~Ge&Ut,L[33]=kt^~Ie&Ue,L[42]=_t^~Ye&xr,L[43]=Le^~Ar&Er,L[4]=ge^~ot&me,L[5]=pe^~we&ut,L[14]=Te^~He&Rt,L[15]=xt^~Se&Ve,L[24]=Ct^~ke&Ke,L[25]=je^~Pt&Ne,L[34]=Ge^~Ut&Oe,L[35]=Ie^~Ue&It,L[44]=Ye^~xr&Gt,L[45]=Ar^~Er&Vt,L[6]=ot^~me&X,L[7]=we^~ut&ne,L[16]=He^~Rt&ze,L[17]=Se^~Ve&_e,L[26]=ke^~Ke&Ee,L[27]=Pt^~Ne&Nt,L[36]=Ut^~Oe&Ot,L[37]=Ue^~It&De,L[46]=xr^~Gt&We,L[47]=Er^~Vt&Pe,L[8]=me^~X&ae,L[9]=ut^~ne&Me,L[18]=Rt^~ze&Bt,L[19]=Ve^~_e&qe,L[28]=Ke^~Ee&Ze,L[29]=Ne^~Nt&Re,L[38]=Oe^~Ot&Be,L[39]=It^~De&kt,L[48]=Gt^~We&_t,L[49]=Vt^~Pe&Le,L[0]^=M[Z],L[1]^=M[Z+1]};if(f)t.exports=a;else for(m=0;m=t.length?!1:(t.charCodeAt(e+1)&64512)===56320}function gP(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var r=[];if(typeof t=="string")if(e){if(e==="hex")for(t=t.replace(/[^a-z0-9]+/ig,""),t.length%2!==0&&(t="0"+t),s=0;s>6|192,r[n++]=i&63|128):mP(t,s)?(i=65536+((i&1023)<<10)+(t.charCodeAt(++s)&1023),r[n++]=i>>18|240,r[n++]=i>>12&63|128,r[n++]=i>>6&63|128,r[n++]=i&63|128):(r[n++]=i>>12|224,r[n++]=i>>6&63|128,r[n++]=i&63|128)}else for(s=0;s>>24|t>>>8&65280|t<<8&16711680|(t&255)<<24;return e>>>0}pr.htonl=x7;function yP(t,e){for(var r="",n=0;n>>0}return i}pr.join32=bP;function wP(t,e){for(var r=new Array(t.length*4),n=0,s=0;n>>24,r[s+1]=i>>>16&255,r[s+2]=i>>>8&255,r[s+3]=i&255):(r[s+3]=i>>>24,r[s+2]=i>>>16&255,r[s+1]=i>>>8&255,r[s]=i&255)}return r}pr.split32=wP;function AP(t,e){return t>>>e|t<<32-e}pr.rotr32=AP;function xP(t,e){return t<>>32-e}pr.rotl32=xP;function EP(t,e){return t+e>>>0}pr.sum32=EP;function MP(t,e,r){return t+e+r>>>0}pr.sum32_3=MP;function SP(t,e,r,n){return t+e+r+n>>>0}pr.sum32_4=SP;function _P(t,e,r,n,s){return t+e+r+n+s>>>0}pr.sum32_5=_P;function RP(t,e,r,n){var s=t[e],i=t[e+1],o=n+i>>>0,f=(o>>0,t[e+1]=o}pr.sum64=RP;function NP(t,e,r,n){var s=e+n>>>0,i=(s>>0}pr.sum64_hi=NP;function CP(t,e,r,n){var s=e+n;return s>>>0}pr.sum64_lo=CP;function TP(t,e,r,n,s,i,o,f){var u=0,h=e;h=h+n>>>0,u+=h>>0,u+=h>>0,u+=h>>0}pr.sum64_4_hi=TP;function kP(t,e,r,n,s,i,o,f){var u=e+n+i+f;return u>>>0}pr.sum64_4_lo=kP;function BP(t,e,r,n,s,i,o,f,u,h){var p=0,d=e;d=d+n>>>0,p+=d>>0,p+=d>>0,p+=d>>0,p+=d>>0}pr.sum64_5_hi=BP;function IP(t,e,r,n,s,i,o,f,u,h){var p=e+n+i+f+h;return p>>>0}pr.sum64_5_lo=IP;function PP(t,e,r){var n=e<<32-r|t>>>r;return n>>>0}pr.rotr64_hi=PP;function OP(t,e,r){var n=t<<32-r|e>>>r;return n>>>0}pr.rotr64_lo=OP;function LP(t,e,r){return t>>>r}pr.shr64_hi=LP;function DP(t,e,r){var n=t<<32-r|e>>>r;return n>>>0}pr.shr64_lo=DP;var Td={},p4=pr,FP=fa;function Dv(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}Td.BlockHash=Dv;Dv.prototype.update=function(e,r){if(e=p4.toArray(e,r),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){e=this.pending;var n=e.length%this._delta8;this.pending=e.slice(e.length-n,e.length),this.pending.length===0&&(this.pending=null),e=p4.join32(e,0,e.length-n,this.endian);for(var s=0;s>>24&255,s[i++]=e>>>16&255,s[i++]=e>>>8&255,s[i++]=e&255}else for(s[i++]=e&255,s[i++]=e>>>8&255,s[i++]=e>>>16&255,s[i++]=e>>>24&255,s[i++]=0,s[i++]=0,s[i++]=0,s[i++]=0,o=8;o>>3}Fo.g0_256=KP;function qP(t){return No(t,17)^No(t,19)^t>>>10}Fo.g1_256=qP;var cd=pr,GP=Td,VP=Fo,cb=cd.rotl32,f0=cd.sum32,WP=cd.sum32_5,ZP=VP.ft_1,N7=GP.BlockHash,YP=[1518500249,1859775393,2400959708,3395469782];function Bo(){if(!(this instanceof Bo))return new Bo;N7.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}cd.inherits(Bo,N7);var QP=Bo;Bo.blockSize=512;Bo.outSize=160;Bo.hmacStrength=80;Bo.padLength=64;Bo.prototype._update=function(e,r){for(var n=this.W,s=0;s<16;s++)n[s]=e[r+s];for(;sthis.blockSize&&(e=new this.Hash().update(e).digest()),DO(e.length<=this.blockSize);for(var r=e.length;r0?T:g},i.min=function(T,g){return T.cmp(g)<0?T:g},i.prototype._init=function(T,g,a){if(typeof T=="number")return this._initNumber(T,g,a);if(typeof T=="object")return this._initArray(T,g,a);g==="hex"&&(g=16),n(g===(g|0)&&g>=2&&g<=36),T=T.toString().replace(/\s+/g,"");var c=0;T[0]==="-"&&(c++,this.negative=1),c=0;c-=3)b=T[c]|T[c-1]<<8|T[c-2]<<16,this.words[m]|=b<>>26-x&67108863,x+=24,x>=26&&(x-=26,m++);else if(a==="le")for(c=0,m=0;c>>26-x&67108863,x+=24,x>=26&&(x-=26,m++);return this.strip()};function f(P,T){var g=P.charCodeAt(T);return g>=65&&g<=70?g-55:g>=97&&g<=102?g-87:g-48&15}function u(P,T,g){var a=f(P,g);return g-1>=T&&(a|=f(P,g-1)<<4),a}i.prototype._parseHex=function(T,g,a){this.length=Math.ceil((T.length-g)/6),this.words=new Array(this.length);for(var c=0;c=g;c-=2)x=u(T,g,c)<=18?(m-=18,b+=1,this.words[b]|=x>>>26):m+=8;else{var _=T.length-g;for(c=_%2===0?g+1:g;c=18?(m-=18,b+=1,this.words[b]|=x>>>26):m+=8}this.strip()};function h(P,T,g,a){for(var c=0,m=Math.min(P.length,g),b=T;b=49?c+=x-49+10:x>=17?c+=x-17+10:c+=x}return c}i.prototype._parseBase=function(T,g,a){this.words=[0],this.length=1;for(var c=0,m=1;m<=67108863;m*=g)c++;c--,m=m/g|0;for(var b=T.length-a,x=b%c,_=Math.min(b,b-x)+a,S=0,y=a;y<_;y+=c)S=h(T,y,y+c,g),this.imuln(m),this.words[0]+S<67108864?this.words[0]+=S:this._iaddn(S);if(x!==0){var l=1;for(S=h(T,y,T.length,g),y=0;y1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?""};var p=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],v=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(T,g){T=T||10,g=g|0||1;var a;if(T===16||T==="hex"){a="";for(var c=0,m=0,b=0;b>>24-c&16777215,m!==0||b!==this.length-1?a=p[6-_.length]+_+a:a=_+a,c+=2,c>=26&&(c-=26,b--)}for(m!==0&&(a=m.toString(16)+a);a.length%g!==0;)a="0"+a;return this.negative!==0&&(a="-"+a),a}if(T===(T|0)&&T>=2&&T<=36){var S=d[T],y=v[T];a="";var l=this.clone();for(l.negative=0;!l.isZero();){var E=l.modn(y).toString(T);l=l.idivn(y),l.isZero()?a=E+a:a=p[S-E.length]+E+a}for(this.isZero()&&(a="0"+a);a.length%g!==0;)a="0"+a;return this.negative!==0&&(a="-"+a),a}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var T=this.words[0];return this.length===2?T+=this.words[1]*67108864:this.length===3&&this.words[2]===1?T+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-T:T},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(T,g){return n(typeof o<"u"),this.toArrayLike(o,T,g)},i.prototype.toArray=function(T,g){return this.toArrayLike(Array,T,g)},i.prototype.toArrayLike=function(T,g,a){var c=this.byteLength(),m=a||Math.max(1,c);n(c<=m,"byte array longer than desired length"),n(m>0,"Requested array length <= 0"),this.strip();var b=g==="le",x=new T(m),_,S,y=this.clone();if(b){for(S=0;!y.isZero();S++)_=y.andln(255),y.iushrn(8),x[S]=_;for(;S=4096&&(a+=13,g>>>=13),g>=64&&(a+=7,g>>>=7),g>=8&&(a+=4,g>>>=4),g>=2&&(a+=2,g>>>=2),a+g},i.prototype._zeroBits=function(T){if(T===0)return 26;var g=T,a=0;return g&8191||(a+=13,g>>>=13),g&127||(a+=7,g>>>=7),g&15||(a+=4,g>>>=4),g&3||(a+=2,g>>>=2),g&1||a++,a},i.prototype.bitLength=function(){var T=this.words[this.length-1],g=this._countBits(T);return(this.length-1)*26+g};function w(P){for(var T=new Array(P.bitLength()),g=0;g>>c}return T}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var T=0,g=0;gT.length?this.clone().ior(T):T.clone().ior(this)},i.prototype.uor=function(T){return this.length>T.length?this.clone().iuor(T):T.clone().iuor(this)},i.prototype.iuand=function(T){var g;this.length>T.length?g=T:g=this;for(var a=0;aT.length?this.clone().iand(T):T.clone().iand(this)},i.prototype.uand=function(T){return this.length>T.length?this.clone().iuand(T):T.clone().iuand(this)},i.prototype.iuxor=function(T){var g,a;this.length>T.length?(g=this,a=T):(g=T,a=this);for(var c=0;cT.length?this.clone().ixor(T):T.clone().ixor(this)},i.prototype.uxor=function(T){return this.length>T.length?this.clone().iuxor(T):T.clone().iuxor(this)},i.prototype.inotn=function(T){n(typeof T=="number"&&T>=0);var g=Math.ceil(T/26)|0,a=T%26;this._expand(g),a>0&&g--;for(var c=0;c0&&(this.words[c]=~this.words[c]&67108863>>26-a),this.strip()},i.prototype.notn=function(T){return this.clone().inotn(T)},i.prototype.setn=function(T,g){n(typeof T=="number"&&T>=0);var a=T/26|0,c=T%26;return this._expand(a+1),g?this.words[a]=this.words[a]|1<T.length?(a=this,c=T):(a=T,c=this);for(var m=0,b=0;b>>26;for(;m!==0&&b>>26;if(this.length=a.length,m!==0)this.words[this.length]=m,this.length++;else if(a!==this)for(;bT.length?this.clone().iadd(T):T.clone().iadd(this)},i.prototype.isub=function(T){if(T.negative!==0){T.negative=0;var g=this.iadd(T);return T.negative=1,g._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(T),this.negative=1,this._normSign();var a=this.cmp(T);if(a===0)return this.negative=0,this.length=1,this.words[0]=0,this;var c,m;a>0?(c=this,m=T):(c=T,m=this);for(var b=0,x=0;x>26,this.words[x]=g&67108863;for(;b!==0&&x>26,this.words[x]=g&67108863;if(b===0&&x>>26,l=_&67108863,E=Math.min(S,T.length-1),Y=Math.max(0,S-P.length+1);Y<=E;Y++){var L=S-Y|0;c=P.words[L]|0,m=T.words[Y]|0,b=c*m+l,y+=b/67108864|0,l=b&67108863}g.words[S]=l|0,_=y|0}return _!==0?g.words[S]=_|0:g.length--,g.strip()}var M=function(T,g,a){var c=T.words,m=g.words,b=a.words,x=0,_,S,y,l=c[0]|0,E=l&8191,Y=l>>>13,L=c[1]|0,F=L&8191,V=L>>>13,Z=c[2]|0,ee=Z&8191,ce=Z>>>13,U=c[3]|0,j=U&8191,se=U>>>13,re=c[4]|0,oe=re&8191,Q=re>>>13,z=c[5]|0,G=z&8191,X=z>>>13,ne=c[6]|0,ae=ne&8191,Me=ne>>>13,ge=c[7]|0,pe=ge&8191,ot=ge>>>13,we=c[8]|0,me=we&8191,ut=we>>>13,ze=c[9]|0,_e=ze&8191,Bt=ze>>>13,qe=m[0]|0,Te=qe&8191,xt=qe>>>13,He=m[1]|0,Se=He&8191,Rt=He>>>13,Ve=m[2]|0,Ee=Ve&8191,Nt=Ve>>>13,Ze=m[3]|0,Re=Ze&8191,Ct=Ze>>>13,je=m[4]|0,ke=je&8191,Pt=je>>>13,Ke=m[5]|0,Ne=Ke&8191,Ot=Ke>>>13,De=m[6]|0,Be=De&8191,kt=De>>>13,Ge=m[7]|0,Ie=Ge&8191,Ut=Ge>>>13,Ue=m[8]|0,Oe=Ue&8191,It=Ue>>>13,We=m[9]|0,Pe=We&8191,_t=We>>>13;a.negative=T.negative^g.negative,a.length=19,_=Math.imul(E,Te),S=Math.imul(E,xt),S=S+Math.imul(Y,Te)|0,y=Math.imul(Y,xt);var Le=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Le>>>26)|0,Le&=67108863,_=Math.imul(F,Te),S=Math.imul(F,xt),S=S+Math.imul(V,Te)|0,y=Math.imul(V,xt),_=_+Math.imul(E,Se)|0,S=S+Math.imul(E,Rt)|0,S=S+Math.imul(Y,Se)|0,y=y+Math.imul(Y,Rt)|0;var Ye=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Ye>>>26)|0,Ye&=67108863,_=Math.imul(ee,Te),S=Math.imul(ee,xt),S=S+Math.imul(ce,Te)|0,y=Math.imul(ce,xt),_=_+Math.imul(F,Se)|0,S=S+Math.imul(F,Rt)|0,S=S+Math.imul(V,Se)|0,y=y+Math.imul(V,Rt)|0,_=_+Math.imul(E,Ee)|0,S=S+Math.imul(E,Nt)|0,S=S+Math.imul(Y,Ee)|0,y=y+Math.imul(Y,Nt)|0;var Ar=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,_=Math.imul(j,Te),S=Math.imul(j,xt),S=S+Math.imul(se,Te)|0,y=Math.imul(se,xt),_=_+Math.imul(ee,Se)|0,S=S+Math.imul(ee,Rt)|0,S=S+Math.imul(ce,Se)|0,y=y+Math.imul(ce,Rt)|0,_=_+Math.imul(F,Ee)|0,S=S+Math.imul(F,Nt)|0,S=S+Math.imul(V,Ee)|0,y=y+Math.imul(V,Nt)|0,_=_+Math.imul(E,Re)|0,S=S+Math.imul(E,Ct)|0,S=S+Math.imul(Y,Re)|0,y=y+Math.imul(Y,Ct)|0;var xr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(xr>>>26)|0,xr&=67108863,_=Math.imul(oe,Te),S=Math.imul(oe,xt),S=S+Math.imul(Q,Te)|0,y=Math.imul(Q,xt),_=_+Math.imul(j,Se)|0,S=S+Math.imul(j,Rt)|0,S=S+Math.imul(se,Se)|0,y=y+Math.imul(se,Rt)|0,_=_+Math.imul(ee,Ee)|0,S=S+Math.imul(ee,Nt)|0,S=S+Math.imul(ce,Ee)|0,y=y+Math.imul(ce,Nt)|0,_=_+Math.imul(F,Re)|0,S=S+Math.imul(F,Ct)|0,S=S+Math.imul(V,Re)|0,y=y+Math.imul(V,Ct)|0,_=_+Math.imul(E,ke)|0,S=S+Math.imul(E,Pt)|0,S=S+Math.imul(Y,ke)|0,y=y+Math.imul(Y,Pt)|0;var Er=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Er>>>26)|0,Er&=67108863,_=Math.imul(G,Te),S=Math.imul(G,xt),S=S+Math.imul(X,Te)|0,y=Math.imul(X,xt),_=_+Math.imul(oe,Se)|0,S=S+Math.imul(oe,Rt)|0,S=S+Math.imul(Q,Se)|0,y=y+Math.imul(Q,Rt)|0,_=_+Math.imul(j,Ee)|0,S=S+Math.imul(j,Nt)|0,S=S+Math.imul(se,Ee)|0,y=y+Math.imul(se,Nt)|0,_=_+Math.imul(ee,Re)|0,S=S+Math.imul(ee,Ct)|0,S=S+Math.imul(ce,Re)|0,y=y+Math.imul(ce,Ct)|0,_=_+Math.imul(F,ke)|0,S=S+Math.imul(F,Pt)|0,S=S+Math.imul(V,ke)|0,y=y+Math.imul(V,Pt)|0,_=_+Math.imul(E,Ne)|0,S=S+Math.imul(E,Ot)|0,S=S+Math.imul(Y,Ne)|0,y=y+Math.imul(Y,Ot)|0;var Gt=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,_=Math.imul(ae,Te),S=Math.imul(ae,xt),S=S+Math.imul(Me,Te)|0,y=Math.imul(Me,xt),_=_+Math.imul(G,Se)|0,S=S+Math.imul(G,Rt)|0,S=S+Math.imul(X,Se)|0,y=y+Math.imul(X,Rt)|0,_=_+Math.imul(oe,Ee)|0,S=S+Math.imul(oe,Nt)|0,S=S+Math.imul(Q,Ee)|0,y=y+Math.imul(Q,Nt)|0,_=_+Math.imul(j,Re)|0,S=S+Math.imul(j,Ct)|0,S=S+Math.imul(se,Re)|0,y=y+Math.imul(se,Ct)|0,_=_+Math.imul(ee,ke)|0,S=S+Math.imul(ee,Pt)|0,S=S+Math.imul(ce,ke)|0,y=y+Math.imul(ce,Pt)|0,_=_+Math.imul(F,Ne)|0,S=S+Math.imul(F,Ot)|0,S=S+Math.imul(V,Ne)|0,y=y+Math.imul(V,Ot)|0,_=_+Math.imul(E,Be)|0,S=S+Math.imul(E,kt)|0,S=S+Math.imul(Y,Be)|0,y=y+Math.imul(Y,kt)|0;var Vt=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,_=Math.imul(pe,Te),S=Math.imul(pe,xt),S=S+Math.imul(ot,Te)|0,y=Math.imul(ot,xt),_=_+Math.imul(ae,Se)|0,S=S+Math.imul(ae,Rt)|0,S=S+Math.imul(Me,Se)|0,y=y+Math.imul(Me,Rt)|0,_=_+Math.imul(G,Ee)|0,S=S+Math.imul(G,Nt)|0,S=S+Math.imul(X,Ee)|0,y=y+Math.imul(X,Nt)|0,_=_+Math.imul(oe,Re)|0,S=S+Math.imul(oe,Ct)|0,S=S+Math.imul(Q,Re)|0,y=y+Math.imul(Q,Ct)|0,_=_+Math.imul(j,ke)|0,S=S+Math.imul(j,Pt)|0,S=S+Math.imul(se,ke)|0,y=y+Math.imul(se,Pt)|0,_=_+Math.imul(ee,Ne)|0,S=S+Math.imul(ee,Ot)|0,S=S+Math.imul(ce,Ne)|0,y=y+Math.imul(ce,Ot)|0,_=_+Math.imul(F,Be)|0,S=S+Math.imul(F,kt)|0,S=S+Math.imul(V,Be)|0,y=y+Math.imul(V,kt)|0,_=_+Math.imul(E,Ie)|0,S=S+Math.imul(E,Ut)|0,S=S+Math.imul(Y,Ie)|0,y=y+Math.imul(Y,Ut)|0;var Lr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,_=Math.imul(me,Te),S=Math.imul(me,xt),S=S+Math.imul(ut,Te)|0,y=Math.imul(ut,xt),_=_+Math.imul(pe,Se)|0,S=S+Math.imul(pe,Rt)|0,S=S+Math.imul(ot,Se)|0,y=y+Math.imul(ot,Rt)|0,_=_+Math.imul(ae,Ee)|0,S=S+Math.imul(ae,Nt)|0,S=S+Math.imul(Me,Ee)|0,y=y+Math.imul(Me,Nt)|0,_=_+Math.imul(G,Re)|0,S=S+Math.imul(G,Ct)|0,S=S+Math.imul(X,Re)|0,y=y+Math.imul(X,Ct)|0,_=_+Math.imul(oe,ke)|0,S=S+Math.imul(oe,Pt)|0,S=S+Math.imul(Q,ke)|0,y=y+Math.imul(Q,Pt)|0,_=_+Math.imul(j,Ne)|0,S=S+Math.imul(j,Ot)|0,S=S+Math.imul(se,Ne)|0,y=y+Math.imul(se,Ot)|0,_=_+Math.imul(ee,Be)|0,S=S+Math.imul(ee,kt)|0,S=S+Math.imul(ce,Be)|0,y=y+Math.imul(ce,kt)|0,_=_+Math.imul(F,Ie)|0,S=S+Math.imul(F,Ut)|0,S=S+Math.imul(V,Ie)|0,y=y+Math.imul(V,Ut)|0,_=_+Math.imul(E,Oe)|0,S=S+Math.imul(E,It)|0,S=S+Math.imul(Y,Oe)|0,y=y+Math.imul(Y,It)|0;var Zr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,_=Math.imul(_e,Te),S=Math.imul(_e,xt),S=S+Math.imul(Bt,Te)|0,y=Math.imul(Bt,xt),_=_+Math.imul(me,Se)|0,S=S+Math.imul(me,Rt)|0,S=S+Math.imul(ut,Se)|0,y=y+Math.imul(ut,Rt)|0,_=_+Math.imul(pe,Ee)|0,S=S+Math.imul(pe,Nt)|0,S=S+Math.imul(ot,Ee)|0,y=y+Math.imul(ot,Nt)|0,_=_+Math.imul(ae,Re)|0,S=S+Math.imul(ae,Ct)|0,S=S+Math.imul(Me,Re)|0,y=y+Math.imul(Me,Ct)|0,_=_+Math.imul(G,ke)|0,S=S+Math.imul(G,Pt)|0,S=S+Math.imul(X,ke)|0,y=y+Math.imul(X,Pt)|0,_=_+Math.imul(oe,Ne)|0,S=S+Math.imul(oe,Ot)|0,S=S+Math.imul(Q,Ne)|0,y=y+Math.imul(Q,Ot)|0,_=_+Math.imul(j,Be)|0,S=S+Math.imul(j,kt)|0,S=S+Math.imul(se,Be)|0,y=y+Math.imul(se,kt)|0,_=_+Math.imul(ee,Ie)|0,S=S+Math.imul(ee,Ut)|0,S=S+Math.imul(ce,Ie)|0,y=y+Math.imul(ce,Ut)|0,_=_+Math.imul(F,Oe)|0,S=S+Math.imul(F,It)|0,S=S+Math.imul(V,Oe)|0,y=y+Math.imul(V,It)|0,_=_+Math.imul(E,Pe)|0,S=S+Math.imul(E,_t)|0,S=S+Math.imul(Y,Pe)|0,y=y+Math.imul(Y,_t)|0;var Ir=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,_=Math.imul(_e,Se),S=Math.imul(_e,Rt),S=S+Math.imul(Bt,Se)|0,y=Math.imul(Bt,Rt),_=_+Math.imul(me,Ee)|0,S=S+Math.imul(me,Nt)|0,S=S+Math.imul(ut,Ee)|0,y=y+Math.imul(ut,Nt)|0,_=_+Math.imul(pe,Re)|0,S=S+Math.imul(pe,Ct)|0,S=S+Math.imul(ot,Re)|0,y=y+Math.imul(ot,Ct)|0,_=_+Math.imul(ae,ke)|0,S=S+Math.imul(ae,Pt)|0,S=S+Math.imul(Me,ke)|0,y=y+Math.imul(Me,Pt)|0,_=_+Math.imul(G,Ne)|0,S=S+Math.imul(G,Ot)|0,S=S+Math.imul(X,Ne)|0,y=y+Math.imul(X,Ot)|0,_=_+Math.imul(oe,Be)|0,S=S+Math.imul(oe,kt)|0,S=S+Math.imul(Q,Be)|0,y=y+Math.imul(Q,kt)|0,_=_+Math.imul(j,Ie)|0,S=S+Math.imul(j,Ut)|0,S=S+Math.imul(se,Ie)|0,y=y+Math.imul(se,Ut)|0,_=_+Math.imul(ee,Oe)|0,S=S+Math.imul(ee,It)|0,S=S+Math.imul(ce,Oe)|0,y=y+Math.imul(ce,It)|0,_=_+Math.imul(F,Pe)|0,S=S+Math.imul(F,_t)|0,S=S+Math.imul(V,Pe)|0,y=y+Math.imul(V,_t)|0;var Dr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Dr>>>26)|0,Dr&=67108863,_=Math.imul(_e,Ee),S=Math.imul(_e,Nt),S=S+Math.imul(Bt,Ee)|0,y=Math.imul(Bt,Nt),_=_+Math.imul(me,Re)|0,S=S+Math.imul(me,Ct)|0,S=S+Math.imul(ut,Re)|0,y=y+Math.imul(ut,Ct)|0,_=_+Math.imul(pe,ke)|0,S=S+Math.imul(pe,Pt)|0,S=S+Math.imul(ot,ke)|0,y=y+Math.imul(ot,Pt)|0,_=_+Math.imul(ae,Ne)|0,S=S+Math.imul(ae,Ot)|0,S=S+Math.imul(Me,Ne)|0,y=y+Math.imul(Me,Ot)|0,_=_+Math.imul(G,Be)|0,S=S+Math.imul(G,kt)|0,S=S+Math.imul(X,Be)|0,y=y+Math.imul(X,kt)|0,_=_+Math.imul(oe,Ie)|0,S=S+Math.imul(oe,Ut)|0,S=S+Math.imul(Q,Ie)|0,y=y+Math.imul(Q,Ut)|0,_=_+Math.imul(j,Oe)|0,S=S+Math.imul(j,It)|0,S=S+Math.imul(se,Oe)|0,y=y+Math.imul(se,It)|0,_=_+Math.imul(ee,Pe)|0,S=S+Math.imul(ee,_t)|0,S=S+Math.imul(ce,Pe)|0,y=y+Math.imul(ce,_t)|0;var ar=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(ar>>>26)|0,ar&=67108863,_=Math.imul(_e,Re),S=Math.imul(_e,Ct),S=S+Math.imul(Bt,Re)|0,y=Math.imul(Bt,Ct),_=_+Math.imul(me,ke)|0,S=S+Math.imul(me,Pt)|0,S=S+Math.imul(ut,ke)|0,y=y+Math.imul(ut,Pt)|0,_=_+Math.imul(pe,Ne)|0,S=S+Math.imul(pe,Ot)|0,S=S+Math.imul(ot,Ne)|0,y=y+Math.imul(ot,Ot)|0,_=_+Math.imul(ae,Be)|0,S=S+Math.imul(ae,kt)|0,S=S+Math.imul(Me,Be)|0,y=y+Math.imul(Me,kt)|0,_=_+Math.imul(G,Ie)|0,S=S+Math.imul(G,Ut)|0,S=S+Math.imul(X,Ie)|0,y=y+Math.imul(X,Ut)|0,_=_+Math.imul(oe,Oe)|0,S=S+Math.imul(oe,It)|0,S=S+Math.imul(Q,Oe)|0,y=y+Math.imul(Q,It)|0,_=_+Math.imul(j,Pe)|0,S=S+Math.imul(j,_t)|0,S=S+Math.imul(se,Pe)|0,y=y+Math.imul(se,_t)|0;var mr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(mr>>>26)|0,mr&=67108863,_=Math.imul(_e,ke),S=Math.imul(_e,Pt),S=S+Math.imul(Bt,ke)|0,y=Math.imul(Bt,Pt),_=_+Math.imul(me,Ne)|0,S=S+Math.imul(me,Ot)|0,S=S+Math.imul(ut,Ne)|0,y=y+Math.imul(ut,Ot)|0,_=_+Math.imul(pe,Be)|0,S=S+Math.imul(pe,kt)|0,S=S+Math.imul(ot,Be)|0,y=y+Math.imul(ot,kt)|0,_=_+Math.imul(ae,Ie)|0,S=S+Math.imul(ae,Ut)|0,S=S+Math.imul(Me,Ie)|0,y=y+Math.imul(Me,Ut)|0,_=_+Math.imul(G,Oe)|0,S=S+Math.imul(G,It)|0,S=S+Math.imul(X,Oe)|0,y=y+Math.imul(X,It)|0,_=_+Math.imul(oe,Pe)|0,S=S+Math.imul(oe,_t)|0,S=S+Math.imul(Q,Pe)|0,y=y+Math.imul(Q,_t)|0;var jr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(jr>>>26)|0,jr&=67108863,_=Math.imul(_e,Ne),S=Math.imul(_e,Ot),S=S+Math.imul(Bt,Ne)|0,y=Math.imul(Bt,Ot),_=_+Math.imul(me,Be)|0,S=S+Math.imul(me,kt)|0,S=S+Math.imul(ut,Be)|0,y=y+Math.imul(ut,kt)|0,_=_+Math.imul(pe,Ie)|0,S=S+Math.imul(pe,Ut)|0,S=S+Math.imul(ot,Ie)|0,y=y+Math.imul(ot,Ut)|0,_=_+Math.imul(ae,Oe)|0,S=S+Math.imul(ae,It)|0,S=S+Math.imul(Me,Oe)|0,y=y+Math.imul(Me,It)|0,_=_+Math.imul(G,Pe)|0,S=S+Math.imul(G,_t)|0,S=S+Math.imul(X,Pe)|0,y=y+Math.imul(X,_t)|0;var Yr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,_=Math.imul(_e,Be),S=Math.imul(_e,kt),S=S+Math.imul(Bt,Be)|0,y=Math.imul(Bt,kt),_=_+Math.imul(me,Ie)|0,S=S+Math.imul(me,Ut)|0,S=S+Math.imul(ut,Ie)|0,y=y+Math.imul(ut,Ut)|0,_=_+Math.imul(pe,Oe)|0,S=S+Math.imul(pe,It)|0,S=S+Math.imul(ot,Oe)|0,y=y+Math.imul(ot,It)|0,_=_+Math.imul(ae,Pe)|0,S=S+Math.imul(ae,_t)|0,S=S+Math.imul(Me,Pe)|0,y=y+Math.imul(Me,_t)|0;var or=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(or>>>26)|0,or&=67108863,_=Math.imul(_e,Ie),S=Math.imul(_e,Ut),S=S+Math.imul(Bt,Ie)|0,y=Math.imul(Bt,Ut),_=_+Math.imul(me,Oe)|0,S=S+Math.imul(me,It)|0,S=S+Math.imul(ut,Oe)|0,y=y+Math.imul(ut,It)|0,_=_+Math.imul(pe,Pe)|0,S=S+Math.imul(pe,_t)|0,S=S+Math.imul(ot,Pe)|0,y=y+Math.imul(ot,_t)|0;var Qr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,_=Math.imul(_e,Oe),S=Math.imul(_e,It),S=S+Math.imul(Bt,Oe)|0,y=Math.imul(Bt,It),_=_+Math.imul(me,Pe)|0,S=S+Math.imul(me,_t)|0,S=S+Math.imul(ut,Pe)|0,y=y+Math.imul(ut,_t)|0;var Mr=(x+_|0)+((S&8191)<<13)|0;x=(y+(S>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,_=Math.imul(_e,Pe),S=Math.imul(_e,_t),S=S+Math.imul(Bt,Pe)|0,y=Math.imul(Bt,_t);var Xr=(x+_|0)+((S&8191)<<13)|0;return x=(y+(S>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,b[0]=Le,b[1]=Ye,b[2]=Ar,b[3]=xr,b[4]=Er,b[5]=Gt,b[6]=Vt,b[7]=Lr,b[8]=Zr,b[9]=Ir,b[10]=Dr,b[11]=ar,b[12]=mr,b[13]=jr,b[14]=Yr,b[15]=or,b[16]=Qr,b[17]=Mr,b[18]=Xr,x!==0&&(b[19]=x,a.length++),a};Math.imul||(M=A);function R(P,T,g){g.negative=T.negative^P.negative,g.length=P.length+T.length;for(var a=0,c=0,m=0;m>>26)|0,c+=b>>>26,b&=67108863}g.words[m]=x,a=b,b=c}return a!==0?g.words[m]=a:g.length--,g.strip()}function N(P,T,g){var a=new C;return a.mulp(P,T,g)}i.prototype.mulTo=function(T,g){var a,c=this.length+T.length;return this.length===10&&T.length===10?a=M(this,T,g):c<63?a=A(this,T,g):c<1024?a=R(this,T,g):a=N(this,T,g),a};function C(P,T){this.x=P,this.y=T}C.prototype.makeRBT=function(T){for(var g=new Array(T),a=i.prototype._countBits(T)-1,c=0;c>=1;return c},C.prototype.permute=function(T,g,a,c,m,b){for(var x=0;x>>1)m++;return 1<>>13,a[2*b+1]=m&8191,m=m>>>13;for(b=2*g;b>=26,g+=c/67108864|0,g+=m>>>26,this.words[a]=m&67108863}return g!==0&&(this.words[a]=g,this.length++),this},i.prototype.muln=function(T){return this.clone().imuln(T)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(T){var g=w(T);if(g.length===0)return new i(1);for(var a=this,c=0;c=0);var g=T%26,a=(T-g)/26,c=67108863>>>26-g<<26-g,m;if(g!==0){var b=0;for(m=0;m>>26-g}b&&(this.words[m]=b,this.length++)}if(a!==0){for(m=this.length-1;m>=0;m--)this.words[m+a]=this.words[m];for(m=0;m=0);var c;g?c=(g-g%26)/26:c=0;var m=T%26,b=Math.min((T-m)/26,this.length),x=67108863^67108863>>>m<b)for(this.length-=b,S=0;S=0&&(y!==0||S>=c);S--){var l=this.words[S]|0;this.words[S]=y<<26-m|l>>>m,y=l&x}return _&&y!==0&&(_.words[_.length++]=y),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(T,g,a){return n(this.negative===0),this.iushrn(T,g,a)},i.prototype.shln=function(T){return this.clone().ishln(T)},i.prototype.ushln=function(T){return this.clone().iushln(T)},i.prototype.shrn=function(T){return this.clone().ishrn(T)},i.prototype.ushrn=function(T){return this.clone().iushrn(T)},i.prototype.testn=function(T){n(typeof T=="number"&&T>=0);var g=T%26,a=(T-g)/26,c=1<=0);var g=T%26,a=(T-g)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=a)return this;if(g!==0&&a++,this.length=Math.min(a,this.length),g!==0){var c=67108863^67108863>>>g<=67108864;g++)this.words[g]-=67108864,g===this.length-1?this.words[g+1]=1:this.words[g+1]++;return this.length=Math.max(this.length,g+1),this},i.prototype.isubn=function(T){if(n(typeof T=="number"),n(T<67108864),T<0)return this.iaddn(-T);if(this.negative!==0)return this.negative=0,this.iaddn(T),this.negative=1,this;if(this.words[0]-=T,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var g=0;g>26)-(_/67108864|0),this.words[m+a]=b&67108863}for(;m>26,this.words[m+a]=b&67108863;if(x===0)return this.strip();for(n(x===-1),x=0,m=0;m>26,this.words[m]=b&67108863;return this.negative=1,this.strip()},i.prototype._wordDiv=function(T,g){var a=this.length-T.length,c=this.clone(),m=T,b=m.words[m.length-1]|0,x=this._countBits(b);a=26-x,a!==0&&(m=m.ushln(a),c.iushln(a),b=m.words[m.length-1]|0);var _=c.length-m.length,S;if(g!=="mod"){S=new i(null),S.length=_+1,S.words=new Array(S.length);for(var y=0;y=0;E--){var Y=(c.words[m.length+E]|0)*67108864+(c.words[m.length+E-1]|0);for(Y=Math.min(Y/b|0,67108863),c._ishlnsubmul(m,Y,E);c.negative!==0;)Y--,c.negative=0,c._ishlnsubmul(m,1,E),c.isZero()||(c.negative^=1);S&&(S.words[E]=Y)}return S&&S.strip(),c.strip(),g!=="div"&&a!==0&&c.iushrn(a),{div:S||null,mod:c}},i.prototype.divmod=function(T,g,a){if(n(!T.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var c,m,b;return this.negative!==0&&T.negative===0?(b=this.neg().divmod(T,g),g!=="mod"&&(c=b.div.neg()),g!=="div"&&(m=b.mod.neg(),a&&m.negative!==0&&m.iadd(T)),{div:c,mod:m}):this.negative===0&&T.negative!==0?(b=this.divmod(T.neg(),g),g!=="mod"&&(c=b.div.neg()),{div:c,mod:b.mod}):this.negative&T.negative?(b=this.neg().divmod(T.neg(),g),g!=="div"&&(m=b.mod.neg(),a&&m.negative!==0&&m.isub(T)),{div:b.div,mod:m}):T.length>this.length||this.cmp(T)<0?{div:new i(0),mod:this}:T.length===1?g==="div"?{div:this.divn(T.words[0]),mod:null}:g==="mod"?{div:null,mod:new i(this.modn(T.words[0]))}:{div:this.divn(T.words[0]),mod:new i(this.modn(T.words[0]))}:this._wordDiv(T,g)},i.prototype.div=function(T){return this.divmod(T,"div",!1).div},i.prototype.mod=function(T){return this.divmod(T,"mod",!1).mod},i.prototype.umod=function(T){return this.divmod(T,"mod",!0).mod},i.prototype.divRound=function(T){var g=this.divmod(T);if(g.mod.isZero())return g.div;var a=g.div.negative!==0?g.mod.isub(T):g.mod,c=T.ushrn(1),m=T.andln(1),b=a.cmp(c);return b<0||m===1&&b===0?g.div:g.div.negative!==0?g.div.isubn(1):g.div.iaddn(1)},i.prototype.modn=function(T){n(T<=67108863);for(var g=(1<<26)%T,a=0,c=this.length-1;c>=0;c--)a=(g*a+(this.words[c]|0))%T;return a},i.prototype.idivn=function(T){n(T<=67108863);for(var g=0,a=this.length-1;a>=0;a--){var c=(this.words[a]|0)+g*67108864;this.words[a]=c/T|0,g=c%T}return this.strip()},i.prototype.divn=function(T){return this.clone().idivn(T)},i.prototype.egcd=function(T){n(T.negative===0),n(!T.isZero());var g=this,a=T.clone();g.negative!==0?g=g.umod(T):g=g.clone();for(var c=new i(1),m=new i(0),b=new i(0),x=new i(1),_=0;g.isEven()&&a.isEven();)g.iushrn(1),a.iushrn(1),++_;for(var S=a.clone(),y=g.clone();!g.isZero();){for(var l=0,E=1;!(g.words[0]&E)&&l<26;++l,E<<=1);if(l>0)for(g.iushrn(l);l-- >0;)(c.isOdd()||m.isOdd())&&(c.iadd(S),m.isub(y)),c.iushrn(1),m.iushrn(1);for(var Y=0,L=1;!(a.words[0]&L)&&Y<26;++Y,L<<=1);if(Y>0)for(a.iushrn(Y);Y-- >0;)(b.isOdd()||x.isOdd())&&(b.iadd(S),x.isub(y)),b.iushrn(1),x.iushrn(1);g.cmp(a)>=0?(g.isub(a),c.isub(b),m.isub(x)):(a.isub(g),b.isub(c),x.isub(m))}return{a:b,b:x,gcd:a.iushln(_)}},i.prototype._invmp=function(T){n(T.negative===0),n(!T.isZero());var g=this,a=T.clone();g.negative!==0?g=g.umod(T):g=g.clone();for(var c=new i(1),m=new i(0),b=a.clone();g.cmpn(1)>0&&a.cmpn(1)>0;){for(var x=0,_=1;!(g.words[0]&_)&&x<26;++x,_<<=1);if(x>0)for(g.iushrn(x);x-- >0;)c.isOdd()&&c.iadd(b),c.iushrn(1);for(var S=0,y=1;!(a.words[0]&y)&&S<26;++S,y<<=1);if(S>0)for(a.iushrn(S);S-- >0;)m.isOdd()&&m.iadd(b),m.iushrn(1);g.cmp(a)>=0?(g.isub(a),c.isub(m)):(a.isub(g),m.isub(c))}var l;return g.cmpn(1)===0?l=c:l=m,l.cmpn(0)<0&&l.iadd(T),l},i.prototype.gcd=function(T){if(this.isZero())return T.abs();if(T.isZero())return this.abs();var g=this.clone(),a=T.clone();g.negative=0,a.negative=0;for(var c=0;g.isEven()&&a.isEven();c++)g.iushrn(1),a.iushrn(1);do{for(;g.isEven();)g.iushrn(1);for(;a.isEven();)a.iushrn(1);var m=g.cmp(a);if(m<0){var b=g;g=a,a=b}else if(m===0||a.cmpn(1)===0)break;g.isub(a)}while(!0);return a.iushln(c)},i.prototype.invm=function(T){return this.egcd(T).a.umod(T)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(T){return this.words[0]&T},i.prototype.bincn=function(T){n(typeof T=="number");var g=T%26,a=(T-g)/26,c=1<>>26,x&=67108863,this.words[b]=x}return m!==0&&(this.words[b]=m,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(T){var g=T<0;if(this.negative!==0&&!g)return-1;if(this.negative===0&&g)return 1;this.strip();var a;if(this.length>1)a=1;else{g&&(T=-T),n(T<=67108863,"Number is too big");var c=this.words[0]|0;a=c===T?0:cT.length)return 1;if(this.length=0;a--){var c=this.words[a]|0,m=T.words[a]|0;if(c!==m){cm&&(g=1);break}}return g},i.prototype.gtn=function(T){return this.cmpn(T)===1},i.prototype.gt=function(T){return this.cmp(T)===1},i.prototype.gten=function(T){return this.cmpn(T)>=0},i.prototype.gte=function(T){return this.cmp(T)>=0},i.prototype.ltn=function(T){return this.cmpn(T)===-1},i.prototype.lt=function(T){return this.cmp(T)===-1},i.prototype.lten=function(T){return this.cmpn(T)<=0},i.prototype.lte=function(T){return this.cmp(T)<=0},i.prototype.eqn=function(T){return this.cmpn(T)===0},i.prototype.eq=function(T){return this.cmp(T)===0},i.red=function(T){return new I(T)},i.prototype.toRed=function(T){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),T.convertTo(this)._forceRed(T)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(T){return this.red=T,this},i.prototype.forceRed=function(T){return n(!this.red,"Already a number in reduction context"),this._forceRed(T)},i.prototype.redAdd=function(T){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,T)},i.prototype.redIAdd=function(T){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,T)},i.prototype.redSub=function(T){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,T)},i.prototype.redISub=function(T){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,T)},i.prototype.redShl=function(T){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,T)},i.prototype.redMul=function(T){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,T),this.red.mul(this,T)},i.prototype.redIMul=function(T){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,T),this.red.imul(this,T)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(T){return n(this.red&&!T.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,T)};var B={k256:null,p224:null,p192:null,p25519:null};function O(P,T){this.name=P,this.p=new i(T,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}O.prototype._tmp=function(){var T=new i(null);return T.words=new Array(Math.ceil(this.n/13)),T},O.prototype.ireduce=function(T){var g=T,a;do this.split(g,this.tmp),g=this.imulK(g),g=g.iadd(this.tmp),a=g.bitLength();while(a>this.n);var c=a0?g.isub(this.p):g.strip!==void 0?g.strip():g._strip(),g},O.prototype.split=function(T,g){T.iushrn(this.n,0,g)},O.prototype.imulK=function(T){return T.imul(this.k)};function D(){O.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(D,O),D.prototype.split=function(T,g){for(var a=4194303,c=Math.min(T.length,9),m=0;m>>22,b=x}b>>>=22,T.words[m-10]=b,b===0&&T.length>10?T.length-=10:T.length-=9},D.prototype.imulK=function(T){T.words[T.length]=0,T.words[T.length+1]=0,T.length+=2;for(var g=0,a=0;a>>=26,T.words[a]=m,g=c}return g!==0&&(T.words[T.length++]=g),T},i._prime=function(T){if(B[T])return B[T];var g;if(T==="k256")g=new D;else if(T==="p224")g=new q;else if(T==="p192")g=new W;else if(T==="p25519")g=new k;else throw new Error("Unknown prime "+T);return B[T]=g,g};function I(P){if(typeof P=="string"){var T=i._prime(P);this.m=T.p,this.prime=T}else n(P.gtn(1),"modulus must be greater than 1"),this.m=P,this.prime=null}I.prototype._verify1=function(T){n(T.negative===0,"red works only with positives"),n(T.red,"red works only with red numbers")},I.prototype._verify2=function(T,g){n((T.negative|g.negative)===0,"red works only with positives"),n(T.red&&T.red===g.red,"red works only with red numbers")},I.prototype.imod=function(T){return this.prime?this.prime.ireduce(T)._forceRed(this):T.umod(this.m)._forceRed(this)},I.prototype.neg=function(T){return T.isZero()?T.clone():this.m.sub(T)._forceRed(this)},I.prototype.add=function(T,g){this._verify2(T,g);var a=T.add(g);return a.cmp(this.m)>=0&&a.isub(this.m),a._forceRed(this)},I.prototype.iadd=function(T,g){this._verify2(T,g);var a=T.iadd(g);return a.cmp(this.m)>=0&&a.isub(this.m),a},I.prototype.sub=function(T,g){this._verify2(T,g);var a=T.sub(g);return a.cmpn(0)<0&&a.iadd(this.m),a._forceRed(this)},I.prototype.isub=function(T,g){this._verify2(T,g);var a=T.isub(g);return a.cmpn(0)<0&&a.iadd(this.m),a},I.prototype.shl=function(T,g){return this._verify1(T),this.imod(T.ushln(g))},I.prototype.imul=function(T,g){return this._verify2(T,g),this.imod(T.imul(g))},I.prototype.mul=function(T,g){return this._verify2(T,g),this.imod(T.mul(g))},I.prototype.isqr=function(T){return this.imul(T,T.clone())},I.prototype.sqr=function(T){return this.mul(T,T)},I.prototype.sqrt=function(T){if(T.isZero())return T.clone();var g=this.m.andln(3);if(n(g%2===1),g===3){var a=this.m.add(new i(1)).iushrn(2);return this.pow(T,a)}for(var c=this.m.subn(1),m=0;!c.isZero()&&c.andln(1)===0;)m++,c.iushrn(1);n(!c.isZero());var b=new i(1).toRed(this),x=b.redNeg(),_=this.m.subn(1).iushrn(1),S=this.m.bitLength();for(S=new i(2*S*S).toRed(this);this.pow(S,_).cmp(x)!==0;)S.redIAdd(x);for(var y=this.pow(S,c),l=this.pow(T,c.addn(1).iushrn(1)),E=this.pow(T,c),Y=m;E.cmp(b)!==0;){for(var L=E,F=0;L.cmp(b)!==0;F++)L=L.redSqr();n(F=0;m--){for(var y=g.words[m],l=S-1;l>=0;l--){var E=y>>l&1;if(b!==c[0]&&(b=this.sqr(b)),E===0&&x===0){_=0;continue}x<<=1,x|=E,_++,!(_!==a&&(m!==0||l!==0))&&(b=this.mul(b,c[x]),_=0,x=0)}S=26}return b},I.prototype.convertTo=function(T){var g=T.umod(this.m);return g===T?g.clone():g},I.prototype.convertFrom=function(T){var g=T.clone();return g.red=null,g},i.mont=function(T){return new H(T)};function H(P){I.call(this,P),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(H,I),H.prototype.convertTo=function(T){return this.imod(T.ushln(this.shift))},H.prototype.convertFrom=function(T){var g=this.imod(T.mul(this.rinv));return g.red=null,g},H.prototype.imul=function(T,g){if(T.isZero()||g.isZero())return T.words[0]=0,T.length=1,T;var a=T.imul(g),c=a.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),m=a.isub(c).iushrn(this.shift),b=m;return m.cmp(this.m)>=0?b=m.isub(this.m):m.cmpn(0)<0&&(b=m.iadd(this.m)),b._forceRed(this)},H.prototype.mul=function(T,g){if(T.isZero()||g.isZero())return new i(0)._forceRed(this);var a=T.mul(g),c=a.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),m=a.isub(c).iushrn(this.shift),b=m;return m.cmp(this.m)>=0?b=m.isub(this.m):m.cmpn(0)<0&&(b=m.iadd(this.m)),b._forceRed(this)},H.prototype.invm=function(T){var g=this.imod(T._invmp(this.m).mul(this.r2));return g._forceRed(this)}})(t,ue)})(UO);const HO=gn,jO="logger/5.7.0";let y4=!1,b4=!1;const Om={debug:1,default:2,info:2,warning:3,error:4,off:5};let w4=Om.default,db=null;function zO(){try{const t=[];if(["NFD","NFC","NFKD","NFKC"].forEach(e=>{try{if("test".normalize(e)!=="test")throw new Error("bad normalize")}catch{t.push(e)}}),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}const A4=zO();var yw;(function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"})(yw||(yw={}));var Ta;(function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",t.TRANSACTION_REPLACED="TRANSACTION_REPLACED",t.ACTION_REJECTED="ACTION_REJECTED"})(Ta||(Ta={}));const x4="0123456789abcdef";let gf=class Wn{constructor(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}_log(e,r){const n=e.toLowerCase();Om[n]==null&&this.throwArgumentError("invalid log level name","logLevel",e),!(w4>Om[n])&&console.log.apply(console,r)}debug(...e){this._log(Wn.levels.DEBUG,e)}info(...e){this._log(Wn.levels.INFO,e)}warn(...e){this._log(Wn.levels.WARNING,e)}makeError(e,r,n){if(b4)return this.makeError("censored error",r,{});r||(r=Wn.errors.UNKNOWN_ERROR),n||(n={});const s=[];Object.keys(n).forEach(u=>{const h=n[u];try{if(h instanceof Uint8Array){let p="";for(let d=0;d>4],p+=x4[h[d]&15];s.push(u+"=Uint8Array(0x"+p+")")}else s.push(u+"="+JSON.stringify(h))}catch{s.push(u+"="+JSON.stringify(n[u].toString()))}}),s.push(`code=${r}`),s.push(`version=${this.version}`);const i=e;let o="";switch(r){case Ta.NUMERIC_FAULT:{o="NUMERIC_FAULT";const u=e;switch(u){case"overflow":case"underflow":case"division-by-zero":o+="-"+u;break;case"negative-power":case"negative-width":o+="-unsupported";break;case"unbound-bitwise-result":o+="-unbound-result";break}break}case Ta.CALL_EXCEPTION:case Ta.INSUFFICIENT_FUNDS:case Ta.MISSING_NEW:case Ta.NONCE_EXPIRED:case Ta.REPLACEMENT_UNDERPRICED:case Ta.TRANSACTION_REPLACED:case Ta.UNPREDICTABLE_GAS_LIMIT:o=r;break}o&&(e+=" [ See: https://links.ethers.org/v5-errors-"+o+" ]"),s.length&&(e+=" ("+s.join(", ")+")");const f=new Error(e);return f.reason=i,f.code=r,Object.keys(n).forEach(function(u){f[u]=n[u]}),f}throwError(e,r,n){throw this.makeError(e,r,n)}throwArgumentError(e,r,n){return this.throwError(e,Wn.errors.INVALID_ARGUMENT,{argument:r,value:n})}assert(e,r,n,s){e||this.throwError(r,n,s)}assertArgument(e,r,n,s){e||this.throwArgumentError(r,n,s)}checkNormalize(e){A4&&this.throwError("platform missing String.prototype.normalize",Wn.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:A4})}checkSafeUint53(e,r){typeof e=="number"&&(r==null&&(r="value not safe"),(e<0||e>=9007199254740991)&&this.throwError(r,Wn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(r,Wn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}checkArgumentCount(e,r,n){n?n=": "+n:n="",er&&this.throwError("too many arguments"+n,Wn.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:r})}checkNew(e,r){(e===Object||e==null)&&this.throwError("missing new",Wn.errors.MISSING_NEW,{name:r.name})}checkAbstract(e,r){e===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",Wn.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):(e===Object||e==null)&&this.throwError("missing new",Wn.errors.MISSING_NEW,{name:r.name})}static globalLogger(){return db||(db=new Wn(jO)),db}static setCensorship(e,r){if(!e&&r&&this.globalLogger().throwError("cannot permanently disable censorship",Wn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),y4){if(!e)return;this.globalLogger().throwError("error censorship permanent",Wn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}b4=!!e,y4=!!r}static setLogLevel(e){const r=Om[e.toLowerCase()];if(r==null){Wn.globalLogger().warn("invalid log level - "+e);return}w4=r}static from(e){return new Wn(e)}};gf.errors=Ta;gf.levels=yw;const KO="bytes/5.7.0",pb=new gf(KO);function qO(t){return!!t.toHexString}function E4(t){return typeof t=="number"&&t==t&&t%1===0}function U7(t){if(t==null)return!1;if(t.constructor===Uint8Array)return!0;if(typeof t=="string"||!E4(t.length)||t.length<0)return!1;for(let e=0;e=256)return!1}return!0}function bw(t,e){return!(typeof t!="string"||!t.match(/^0x[0-9A-Fa-f]*$/)||e&&t.length!==2+2*e)}const mb="0123456789abcdef";function GO(t,e){if(e||(e={}),typeof t=="number"){pb.checkSafeUint53(t,"invalid hexlify value");let r="";for(;t;)r=mb[t&15]+r,t=Math.floor(t/16);return r.length?(r.length%2&&(r="0"+r),"0x"+r):"0x00"}if(typeof t=="bigint")return t=t.toString(16),t.length%2?"0x0"+t:"0x"+t;if(e.allowMissingPrefix&&typeof t=="string"&&t.substring(0,2)!=="0x"&&(t="0x"+t),qO(t))return t.toHexString();if(bw(t))return t.length%2&&(e.hexPad==="left"?t="0x0"+t.substring(2):e.hexPad==="right"?t+="0":pb.throwArgumentError("hex data is odd-length","value",t)),t.toLowerCase();if(U7(t)){let r="0x";for(let n=0;n>4]+mb[s&15]}return r}return pb.throwArgumentError("invalid hexlify value","value",t)}const VO="bignumber/5.5.0";var ww=HO.BN;const so=new gf(VO),gb={},M4=9007199254740991;let S4=!1,$A=class js{constructor(e,r){so.checkNew(new.target,js),e!==gb&&so.throwError("cannot call constructor directly; use BigNumber.from",gf.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=r,this._isBigNumber=!0,Object.freeze(this)}fromTwos(e){return $i(cr(this).fromTwos(e))}toTwos(e){return $i(cr(this).toTwos(e))}abs(){return this._hex[0]==="-"?js.from(this._hex.substring(1)):this}add(e){return $i(cr(this).add(cr(e)))}sub(e){return $i(cr(this).sub(cr(e)))}div(e){return js.from(e).isZero()&&Os("division by zero","div"),$i(cr(this).div(cr(e)))}mul(e){return $i(cr(this).mul(cr(e)))}mod(e){const r=cr(e);return r.isNeg()&&Os("cannot modulo negative values","mod"),$i(cr(this).umod(r))}pow(e){const r=cr(e);return r.isNeg()&&Os("cannot raise to negative values","pow"),$i(cr(this).pow(r))}and(e){const r=cr(e);return(this.isNegative()||r.isNeg())&&Os("cannot 'and' negative values","and"),$i(cr(this).and(r))}or(e){const r=cr(e);return(this.isNegative()||r.isNeg())&&Os("cannot 'or' negative values","or"),$i(cr(this).or(r))}xor(e){const r=cr(e);return(this.isNegative()||r.isNeg())&&Os("cannot 'xor' negative values","xor"),$i(cr(this).xor(r))}mask(e){return(this.isNegative()||e<0)&&Os("cannot mask negative values","mask"),$i(cr(this).maskn(e))}shl(e){return(this.isNegative()||e<0)&&Os("cannot shift negative values","shl"),$i(cr(this).shln(e))}shr(e){return(this.isNegative()||e<0)&&Os("cannot shift negative values","shr"),$i(cr(this).shrn(e))}eq(e){return cr(this).eq(cr(e))}lt(e){return cr(this).lt(cr(e))}lte(e){return cr(this).lte(cr(e))}gt(e){return cr(this).gt(cr(e))}gte(e){return cr(this).gte(cr(e))}isNegative(){return this._hex[0]==="-"}isZero(){return cr(this).isZero()}toNumber(){try{return cr(this).toNumber()}catch{Os("overflow","toNumber",this.toString())}return null}toBigInt(){try{return BigInt(this.toString())}catch{}return so.throwError("this platform does not support BigInt",gf.errors.UNSUPPORTED_OPERATION,{value:this.toString()})}toString(){return arguments.length>0&&(arguments[0]===10?S4||(S4=!0,so.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):arguments[0]===16?so.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",gf.errors.UNEXPECTED_ARGUMENT,{}):so.throwError("BigNumber.toString does not accept parameters",gf.errors.UNEXPECTED_ARGUMENT,{})),cr(this).toString(10)}toHexString(){return this._hex}toJSON(e){return{type:"BigNumber",hex:this.toHexString()}}static from(e){if(e instanceof js)return e;if(typeof e=="string")return e.match(/^-?0x[0-9a-f]+$/i)?new js(gb,ap(e)):e.match(/^-?[0-9]+$/)?new js(gb,ap(new ww(e))):so.throwArgumentError("invalid BigNumber string","value",e);if(typeof e=="number")return e%1&&Os("underflow","BigNumber.from",e),(e>=M4||e<=-M4)&&Os("overflow","BigNumber.from",e),js.from(String(e));const r=e;if(typeof r=="bigint")return js.from(r.toString());if(U7(r))return js.from(GO(r));if(r)if(r.toHexString){const n=r.toHexString();if(typeof n=="string")return js.from(n)}else{let n=r._hex;if(n==null&&r.type==="BigNumber"&&(n=r.hex),typeof n=="string"&&(bw(n)||n[0]==="-"&&bw(n.substring(1))))return js.from(n)}return so.throwArgumentError("invalid BigNumber value","value",e)}static isBigNumber(e){return!!(e&&e._isBigNumber)}};function ap(t){if(typeof t!="string")return ap(t.toString(16));if(t[0]==="-")return t=t.substring(1),t[0]==="-"&&so.throwArgumentError("invalid hex","value",t),t=ap(t),t==="0x00"?t:"-"+t;if(t.substring(0,2)!=="0x"&&(t="0x"+t),t==="0x")return"0x00";for(t.length%2&&(t="0x0"+t.substring(2));t.length>4&&t.substring(0,4)==="0x00";)t="0x"+t.substring(4);return t}function $i(t){return $A.from(ap(t))}function cr(t){const e=$A.from(t).toHexString();return e[0]==="-"?new ww("-"+e.substring(3),16):new ww(e.substring(2),16)}function Os(t,e,r){const n={fault:t,operation:e};return r!=null&&(n.value=r),so.throwError(t,gf.errors.NUMERIC_FAULT,n)}const WO="logger/5.7.0";let _4=!1,R4=!1;const Lm={debug:1,default:2,info:2,warning:3,error:4,off:5};let N4=Lm.default,vb=null;function ZO(){try{const t=[];if(["NFD","NFC","NFKD","NFKC"].forEach(e=>{try{if("test".normalize(e)!=="test")throw new Error("bad normalize")}catch{t.push(e)}}),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}const C4=ZO();var Aw;(function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"})(Aw||(Aw={}));var ka;(function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",t.TRANSACTION_REPLACED="TRANSACTION_REPLACED",t.ACTION_REJECTED="ACTION_REJECTED"})(ka||(ka={}));const T4="0123456789abcdef";let $t=class Zn{constructor(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}_log(e,r){const n=e.toLowerCase();Lm[n]==null&&this.throwArgumentError("invalid log level name","logLevel",e),!(N4>Lm[n])&&console.log.apply(console,r)}debug(...e){this._log(Zn.levels.DEBUG,e)}info(...e){this._log(Zn.levels.INFO,e)}warn(...e){this._log(Zn.levels.WARNING,e)}makeError(e,r,n){if(R4)return this.makeError("censored error",r,{});r||(r=Zn.errors.UNKNOWN_ERROR),n||(n={});const s=[];Object.keys(n).forEach(u=>{const h=n[u];try{if(h instanceof Uint8Array){let p="";for(let d=0;d>4],p+=T4[h[d]&15];s.push(u+"=Uint8Array(0x"+p+")")}else s.push(u+"="+JSON.stringify(h))}catch{s.push(u+"="+JSON.stringify(n[u].toString()))}}),s.push(`code=${r}`),s.push(`version=${this.version}`);const i=e;let o="";switch(r){case ka.NUMERIC_FAULT:{o="NUMERIC_FAULT";const u=e;switch(u){case"overflow":case"underflow":case"division-by-zero":o+="-"+u;break;case"negative-power":case"negative-width":o+="-unsupported";break;case"unbound-bitwise-result":o+="-unbound-result";break}break}case ka.CALL_EXCEPTION:case ka.INSUFFICIENT_FUNDS:case ka.MISSING_NEW:case ka.NONCE_EXPIRED:case ka.REPLACEMENT_UNDERPRICED:case ka.TRANSACTION_REPLACED:case ka.UNPREDICTABLE_GAS_LIMIT:o=r;break}o&&(e+=" [ See: https://links.ethers.org/v5-errors-"+o+" ]"),s.length&&(e+=" ("+s.join(", ")+")");const f=new Error(e);return f.reason=i,f.code=r,Object.keys(n).forEach(function(u){f[u]=n[u]}),f}throwError(e,r,n){throw this.makeError(e,r,n)}throwArgumentError(e,r,n){return this.throwError(e,Zn.errors.INVALID_ARGUMENT,{argument:r,value:n})}assert(e,r,n,s){e||this.throwError(r,n,s)}assertArgument(e,r,n,s){e||this.throwArgumentError(r,n,s)}checkNormalize(e){C4&&this.throwError("platform missing String.prototype.normalize",Zn.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:C4})}checkSafeUint53(e,r){typeof e=="number"&&(r==null&&(r="value not safe"),(e<0||e>=9007199254740991)&&this.throwError(r,Zn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(r,Zn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}checkArgumentCount(e,r,n){n?n=": "+n:n="",er&&this.throwError("too many arguments"+n,Zn.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:r})}checkNew(e,r){(e===Object||e==null)&&this.throwError("missing new",Zn.errors.MISSING_NEW,{name:r.name})}checkAbstract(e,r){e===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",Zn.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):(e===Object||e==null)&&this.throwError("missing new",Zn.errors.MISSING_NEW,{name:r.name})}static globalLogger(){return vb||(vb=new Zn(WO)),vb}static setCensorship(e,r){if(!e&&r&&this.globalLogger().throwError("cannot permanently disable censorship",Zn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),_4){if(!e)return;this.globalLogger().throwError("error censorship permanent",Zn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}R4=!!e,_4=!!r}static setLogLevel(e){const r=Lm[e.toLowerCase()];if(r==null){Zn.globalLogger().warn("invalid log level - "+e);return}N4=r}static from(e){return new Zn(e)}};$t.errors=ka;$t.levels=Aw;const YO="bytes/5.7.0",Rn=new $t(YO);function H7(t){return!!t.toHexString}function sh(t){return t.slice||(t.slice=function(){const e=Array.prototype.slice.call(arguments);return sh(new Uint8Array(Array.prototype.slice.apply(t,e)))}),t}function j7(t){return xi(t)&&!(t.length%2)||Fv(t)}function k4(t){return typeof t=="number"&&t==t&&t%1===0}function Fv(t){if(t==null)return!1;if(t.constructor===Uint8Array)return!0;if(typeof t=="string"||!k4(t.length)||t.length<0)return!1;for(let e=0;e=256)return!1}return!0}function kn(t,e){if(e||(e={}),typeof t=="number"){Rn.checkSafeUint53(t,"invalid arrayify value");const r=[];for(;t;)r.unshift(t&255),t=parseInt(String(t/256));return r.length===0&&r.push(0),sh(new Uint8Array(r))}if(e.allowMissingPrefix&&typeof t=="string"&&t.substring(0,2)!=="0x"&&(t="0x"+t),H7(t)&&(t=t.toHexString()),xi(t)){let r=t.substring(2);r.length%2&&(e.hexPad==="left"?r="0"+r:e.hexPad==="right"?r+="0":Rn.throwArgumentError("hex data is odd-length","value",t));const n=[];for(let s=0;skn(s)),r=e.reduce((s,i)=>s+i.length,0),n=new Uint8Array(r);return e.reduce((s,i)=>(n.set(i,s),s+i.length),0),sh(n)}function QO(t){let e=kn(t);if(e.length===0)return e;let r=0;for(;re&&Rn.throwArgumentError("value out of range","value",arguments[0]);const r=new Uint8Array(e);return r.set(t,e-t.length),sh(r)}function xi(t,e){return!(typeof t!="string"||!t.match(/^0x[0-9A-Fa-f]*$/)||e&&t.length!==2+2*e)}const yb="0123456789abcdef";function Rr(t,e){if(e||(e={}),typeof t=="number"){Rn.checkSafeUint53(t,"invalid hexlify value");let r="";for(;t;)r=yb[t&15]+r,t=Math.floor(t/16);return r.length?(r.length%2&&(r="0"+r),"0x"+r):"0x00"}if(typeof t=="bigint")return t=t.toString(16),t.length%2?"0x0"+t:"0x"+t;if(e.allowMissingPrefix&&typeof t=="string"&&t.substring(0,2)!=="0x"&&(t="0x"+t),H7(t))return t.toHexString();if(xi(t))return t.length%2&&(e.hexPad==="left"?t="0x0"+t.substring(2):e.hexPad==="right"?t+="0":Rn.throwArgumentError("hex data is odd-length","value",t)),t.toLowerCase();if(Fv(t)){let r="0x";for(let n=0;n>4]+yb[s&15]}return r}return Rn.throwArgumentError("invalid hexlify value","value",t)}function Lie(t){if(typeof t!="string")t=Rr(t);else if(!xi(t)||t.length%2)return null;return(t.length-2)/2}function z7(t,e,r){return typeof t!="string"?t=Rr(t):(!xi(t)||t.length%2)&&Rn.throwArgumentError("invalid hexData","value",t),e=2+2*e,r!=null?"0x"+t.substring(e,2+2*r):"0x"+t.substring(e)}function JO(t){let e="0x";return t.forEach(r=>{e+=Rr(r).substring(2)}),e}function Die(t){const e=$O(Rr(t,{hexPad:"left"}));return e==="0x"?"0x0":e}function $O(t){typeof t!="string"&&(t=Rr(t)),xi(t)||Rn.throwArgumentError("invalid hex string","value",t),t=t.substring(2);let e=0;for(;e2*e+2&&Rn.throwArgumentError("value out of range","value",arguments[1]);t.length<2*e+2;)t="0x0"+t.substring(2);return t}function Fie(t){const e={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0,yParityAndS:"0x",compact:"0x"};if(j7(t)){let r=kn(t);r.length===64?(e.v=27+(r[32]>>7),r[32]&=127,e.r=Rr(r.slice(0,32)),e.s=Rr(r.slice(32,64))):r.length===65?(e.r=Rr(r.slice(0,32)),e.s=Rr(r.slice(32,64)),e.v=r[64]):Rn.throwArgumentError("invalid signature string","signature",t),e.v<27&&(e.v===0||e.v===1?e.v+=27:Rn.throwArgumentError("signature invalid v byte","signature",t)),e.recoveryParam=1-e.v%2,e.recoveryParam&&(r[32]|=128),e._vs=Rr(r.slice(32,64))}else{if(e.r=t.r,e.s=t.s,e.v=t.v,e.recoveryParam=t.recoveryParam,e._vs=t._vs,e._vs!=null){const s=XO(kn(e._vs),32);e._vs=Rr(s);const i=s[0]>=128?1:0;e.recoveryParam==null?e.recoveryParam=i:e.recoveryParam!==i&&Rn.throwArgumentError("signature recoveryParam mismatch _vs","signature",t),s[0]&=127;const o=Rr(s);e.s==null?e.s=o:e.s!==o&&Rn.throwArgumentError("signature v mismatch _vs","signature",t)}if(e.recoveryParam==null)e.v==null?Rn.throwArgumentError("signature missing v and recoveryParam","signature",t):e.v===0||e.v===1?e.recoveryParam=e.v:e.recoveryParam=1-e.v%2;else if(e.v==null)e.v=27+e.recoveryParam;else{const s=e.v===0||e.v===1?e.v:1-e.v%2;e.recoveryParam!==s&&Rn.throwArgumentError("signature recoveryParam mismatch v","signature",t)}e.r==null||!xi(e.r)?Rn.throwArgumentError("signature missing or invalid r","signature",t):e.r=K0(e.r,32),e.s==null||!xi(e.s)?Rn.throwArgumentError("signature missing or invalid s","signature",t):e.s=K0(e.s,32);const r=kn(e.s);r[0]>=128&&Rn.throwArgumentError("signature s out of range","signature",t),e.recoveryParam&&(r[0]|=128);const n=Rr(r);e._vs&&(xi(e._vs)||Rn.throwArgumentError("signature invalid _vs","signature",t),e._vs=K0(e._vs,32)),e._vs==null?e._vs=n:e._vs!==n&&Rn.throwArgumentError("signature _vs mismatch v and s","signature",t)}return e.yParityAndS=e._vs,e.compact=e.r+e.yParityAndS.substring(2),e}var xw={},eL={get exports(){return xw},set exports(t){xw=t}};(function(t){(function(e,r){function n(g,a){if(!g)throw new Error(a||"Assertion failed")}function s(g,a){g.super_=a;var c=function(){};c.prototype=a.prototype,g.prototype=new c,g.prototype.constructor=g}function i(g,a,c){if(i.isBN(g))return g;this.negative=0,this.words=null,this.length=0,this.red=null,g!==null&&((a==="le"||a==="be")&&(c=a,a=10),this._init(g||0,a||10,c||"be"))}typeof e=="object"?e.exports=i:r.BN=i,i.BN=i,i.wordSize=26;var o;try{typeof window<"u"&&typeof window.Buffer<"u"?o=window.Buffer:o=mt.Buffer}catch{}i.isBN=function(a){return a instanceof i?!0:a!==null&&typeof a=="object"&&a.constructor.wordSize===i.wordSize&&Array.isArray(a.words)},i.max=function(a,c){return a.cmp(c)>0?a:c},i.min=function(a,c){return a.cmp(c)<0?a:c},i.prototype._init=function(a,c,m){if(typeof a=="number")return this._initNumber(a,c,m);if(typeof a=="object")return this._initArray(a,c,m);c==="hex"&&(c=16),n(c===(c|0)&&c>=2&&c<=36),a=a.toString().replace(/\s+/g,"");var b=0;a[0]==="-"&&(b++,this.negative=1),b=0;b-=3)_=a[b]|a[b-1]<<8|a[b-2]<<16,this.words[x]|=_<>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);else if(m==="le")for(b=0,x=0;b>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);return this._strip()};function f(g,a){var c=g.charCodeAt(a);if(c>=48&&c<=57)return c-48;if(c>=65&&c<=70)return c-55;if(c>=97&&c<=102)return c-87;n(!1,"Invalid character in "+g)}function u(g,a,c){var m=f(g,c);return c-1>=a&&(m|=f(g,c-1)<<4),m}i.prototype._parseHex=function(a,c,m){this.length=Math.ceil((a.length-c)/6),this.words=new Array(this.length);for(var b=0;b=c;b-=2)S=u(a,c,b)<=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8;else{var y=a.length-c;for(b=y%2===0?c+1:c;b=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8}this._strip()};function h(g,a,c,m){for(var b=0,x=0,_=Math.min(g.length,c),S=a;S<_;S++){var y=g.charCodeAt(S)-48;b*=m,y>=49?x=y-49+10:y>=17?x=y-17+10:x=y,n(y>=0&&x1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{i.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch{i.prototype.inspect=d}else i.prototype.inspect=d;function d(){return(this.red?""}var v=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],w=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(a,c){a=a||10,c=c|0||1;var m;if(a===16||a==="hex"){m="";for(var b=0,x=0,_=0;_>>24-b&16777215,b+=2,b>=26&&(b-=26,_--),x!==0||_!==this.length-1?m=v[6-y.length]+y+m:m=y+m}for(x!==0&&(m=x.toString(16)+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}if(a===(a|0)&&a>=2&&a<=36){var l=w[a],E=A[a];m="";var Y=this.clone();for(Y.negative=0;!Y.isZero();){var L=Y.modrn(E).toString(a);Y=Y.idivn(E),Y.isZero()?m=L+m:m=v[l-L.length]+L+m}for(this.isZero()&&(m="0"+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var a=this.words[0];return this.length===2?a+=this.words[1]*67108864:this.length===3&&this.words[2]===1?a+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-a:a},i.prototype.toJSON=function(){return this.toString(16,2)},o&&(i.prototype.toBuffer=function(a,c){return this.toArrayLike(o,a,c)}),i.prototype.toArray=function(a,c){return this.toArrayLike(Array,a,c)};var M=function(a,c){return a.allocUnsafe?a.allocUnsafe(c):new a(c)};i.prototype.toArrayLike=function(a,c,m){this._strip();var b=this.byteLength(),x=m||Math.max(1,b);n(b<=x,"byte array longer than desired length"),n(x>0,"Requested array length <= 0");var _=M(a,x),S=c==="le"?"LE":"BE";return this["_toArrayLike"+S](_,b),_},i.prototype._toArrayLikeLE=function(a,c){for(var m=0,b=0,x=0,_=0;x>8&255),m>16&255),_===6?(m>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m=0&&(a[m--]=S>>8&255),m>=0&&(a[m--]=S>>16&255),_===6?(m>=0&&(a[m--]=S>>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m>=0)for(a[m--]=b;m>=0;)a[m--]=0},Math.clz32?i.prototype._countBits=function(a){return 32-Math.clz32(a)}:i.prototype._countBits=function(a){var c=a,m=0;return c>=4096&&(m+=13,c>>>=13),c>=64&&(m+=7,c>>>=7),c>=8&&(m+=4,c>>>=4),c>=2&&(m+=2,c>>>=2),m+c},i.prototype._zeroBits=function(a){if(a===0)return 26;var c=a,m=0;return c&8191||(m+=13,c>>>=13),c&127||(m+=7,c>>>=7),c&15||(m+=4,c>>>=4),c&3||(m+=2,c>>>=2),c&1||m++,m},i.prototype.bitLength=function(){var a=this.words[this.length-1],c=this._countBits(a);return(this.length-1)*26+c};function R(g){for(var a=new Array(g.bitLength()),c=0;c>>b&1}return a}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var a=0,c=0;ca.length?this.clone().ior(a):a.clone().ior(this)},i.prototype.uor=function(a){return this.length>a.length?this.clone().iuor(a):a.clone().iuor(this)},i.prototype.iuand=function(a){var c;this.length>a.length?c=a:c=this;for(var m=0;ma.length?this.clone().iand(a):a.clone().iand(this)},i.prototype.uand=function(a){return this.length>a.length?this.clone().iuand(a):a.clone().iuand(this)},i.prototype.iuxor=function(a){var c,m;this.length>a.length?(c=this,m=a):(c=a,m=this);for(var b=0;ba.length?this.clone().ixor(a):a.clone().ixor(this)},i.prototype.uxor=function(a){return this.length>a.length?this.clone().iuxor(a):a.clone().iuxor(this)},i.prototype.inotn=function(a){n(typeof a=="number"&&a>=0);var c=Math.ceil(a/26)|0,m=a%26;this._expand(c),m>0&&c--;for(var b=0;b0&&(this.words[b]=~this.words[b]&67108863>>26-m),this._strip()},i.prototype.notn=function(a){return this.clone().inotn(a)},i.prototype.setn=function(a,c){n(typeof a=="number"&&a>=0);var m=a/26|0,b=a%26;return this._expand(m+1),c?this.words[m]=this.words[m]|1<a.length?(m=this,b=a):(m=a,b=this);for(var x=0,_=0;_>>26;for(;x!==0&&_>>26;if(this.length=m.length,x!==0)this.words[this.length]=x,this.length++;else if(m!==this)for(;_a.length?this.clone().iadd(a):a.clone().iadd(this)},i.prototype.isub=function(a){if(a.negative!==0){a.negative=0;var c=this.iadd(a);return a.negative=1,c._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(a),this.negative=1,this._normSign();var m=this.cmp(a);if(m===0)return this.negative=0,this.length=1,this.words[0]=0,this;var b,x;m>0?(b=this,x=a):(b=a,x=this);for(var _=0,S=0;S>26,this.words[S]=c&67108863;for(;_!==0&&S>26,this.words[S]=c&67108863;if(_===0&&S>>26,Y=y&67108863,L=Math.min(l,a.length-1),F=Math.max(0,l-g.length+1);F<=L;F++){var V=l-F|0;b=g.words[V]|0,x=a.words[F]|0,_=b*x+Y,E+=_/67108864|0,Y=_&67108863}c.words[l]=Y|0,y=E|0}return y!==0?c.words[l]=y|0:c.length--,c._strip()}var C=function(a,c,m){var b=a.words,x=c.words,_=m.words,S=0,y,l,E,Y=b[0]|0,L=Y&8191,F=Y>>>13,V=b[1]|0,Z=V&8191,ee=V>>>13,ce=b[2]|0,U=ce&8191,j=ce>>>13,se=b[3]|0,re=se&8191,oe=se>>>13,Q=b[4]|0,z=Q&8191,G=Q>>>13,X=b[5]|0,ne=X&8191,ae=X>>>13,Me=b[6]|0,ge=Me&8191,pe=Me>>>13,ot=b[7]|0,we=ot&8191,me=ot>>>13,ut=b[8]|0,ze=ut&8191,_e=ut>>>13,Bt=b[9]|0,qe=Bt&8191,Te=Bt>>>13,xt=x[0]|0,He=xt&8191,Se=xt>>>13,Rt=x[1]|0,Ve=Rt&8191,Ee=Rt>>>13,Nt=x[2]|0,Ze=Nt&8191,Re=Nt>>>13,Ct=x[3]|0,je=Ct&8191,ke=Ct>>>13,Pt=x[4]|0,Ke=Pt&8191,Ne=Pt>>>13,Ot=x[5]|0,De=Ot&8191,Be=Ot>>>13,kt=x[6]|0,Ge=kt&8191,Ie=kt>>>13,Ut=x[7]|0,Ue=Ut&8191,Oe=Ut>>>13,It=x[8]|0,We=It&8191,Pe=It>>>13,_t=x[9]|0,Le=_t&8191,Ye=_t>>>13;m.negative=a.negative^c.negative,m.length=19,y=Math.imul(L,He),l=Math.imul(L,Se),l=l+Math.imul(F,He)|0,E=Math.imul(F,Se);var Ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,y=Math.imul(Z,He),l=Math.imul(Z,Se),l=l+Math.imul(ee,He)|0,E=Math.imul(ee,Se),y=y+Math.imul(L,Ve)|0,l=l+Math.imul(L,Ee)|0,l=l+Math.imul(F,Ve)|0,E=E+Math.imul(F,Ee)|0;var xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(xr>>>26)|0,xr&=67108863,y=Math.imul(U,He),l=Math.imul(U,Se),l=l+Math.imul(j,He)|0,E=Math.imul(j,Se),y=y+Math.imul(Z,Ve)|0,l=l+Math.imul(Z,Ee)|0,l=l+Math.imul(ee,Ve)|0,E=E+Math.imul(ee,Ee)|0,y=y+Math.imul(L,Ze)|0,l=l+Math.imul(L,Re)|0,l=l+Math.imul(F,Ze)|0,E=E+Math.imul(F,Re)|0;var Er=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Er>>>26)|0,Er&=67108863,y=Math.imul(re,He),l=Math.imul(re,Se),l=l+Math.imul(oe,He)|0,E=Math.imul(oe,Se),y=y+Math.imul(U,Ve)|0,l=l+Math.imul(U,Ee)|0,l=l+Math.imul(j,Ve)|0,E=E+Math.imul(j,Ee)|0,y=y+Math.imul(Z,Ze)|0,l=l+Math.imul(Z,Re)|0,l=l+Math.imul(ee,Ze)|0,E=E+Math.imul(ee,Re)|0,y=y+Math.imul(L,je)|0,l=l+Math.imul(L,ke)|0,l=l+Math.imul(F,je)|0,E=E+Math.imul(F,ke)|0;var Gt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,y=Math.imul(z,He),l=Math.imul(z,Se),l=l+Math.imul(G,He)|0,E=Math.imul(G,Se),y=y+Math.imul(re,Ve)|0,l=l+Math.imul(re,Ee)|0,l=l+Math.imul(oe,Ve)|0,E=E+Math.imul(oe,Ee)|0,y=y+Math.imul(U,Ze)|0,l=l+Math.imul(U,Re)|0,l=l+Math.imul(j,Ze)|0,E=E+Math.imul(j,Re)|0,y=y+Math.imul(Z,je)|0,l=l+Math.imul(Z,ke)|0,l=l+Math.imul(ee,je)|0,E=E+Math.imul(ee,ke)|0,y=y+Math.imul(L,Ke)|0,l=l+Math.imul(L,Ne)|0,l=l+Math.imul(F,Ke)|0,E=E+Math.imul(F,Ne)|0;var Vt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,y=Math.imul(ne,He),l=Math.imul(ne,Se),l=l+Math.imul(ae,He)|0,E=Math.imul(ae,Se),y=y+Math.imul(z,Ve)|0,l=l+Math.imul(z,Ee)|0,l=l+Math.imul(G,Ve)|0,E=E+Math.imul(G,Ee)|0,y=y+Math.imul(re,Ze)|0,l=l+Math.imul(re,Re)|0,l=l+Math.imul(oe,Ze)|0,E=E+Math.imul(oe,Re)|0,y=y+Math.imul(U,je)|0,l=l+Math.imul(U,ke)|0,l=l+Math.imul(j,je)|0,E=E+Math.imul(j,ke)|0,y=y+Math.imul(Z,Ke)|0,l=l+Math.imul(Z,Ne)|0,l=l+Math.imul(ee,Ke)|0,E=E+Math.imul(ee,Ne)|0,y=y+Math.imul(L,De)|0,l=l+Math.imul(L,Be)|0,l=l+Math.imul(F,De)|0,E=E+Math.imul(F,Be)|0;var Lr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,y=Math.imul(ge,He),l=Math.imul(ge,Se),l=l+Math.imul(pe,He)|0,E=Math.imul(pe,Se),y=y+Math.imul(ne,Ve)|0,l=l+Math.imul(ne,Ee)|0,l=l+Math.imul(ae,Ve)|0,E=E+Math.imul(ae,Ee)|0,y=y+Math.imul(z,Ze)|0,l=l+Math.imul(z,Re)|0,l=l+Math.imul(G,Ze)|0,E=E+Math.imul(G,Re)|0,y=y+Math.imul(re,je)|0,l=l+Math.imul(re,ke)|0,l=l+Math.imul(oe,je)|0,E=E+Math.imul(oe,ke)|0,y=y+Math.imul(U,Ke)|0,l=l+Math.imul(U,Ne)|0,l=l+Math.imul(j,Ke)|0,E=E+Math.imul(j,Ne)|0,y=y+Math.imul(Z,De)|0,l=l+Math.imul(Z,Be)|0,l=l+Math.imul(ee,De)|0,E=E+Math.imul(ee,Be)|0,y=y+Math.imul(L,Ge)|0,l=l+Math.imul(L,Ie)|0,l=l+Math.imul(F,Ge)|0,E=E+Math.imul(F,Ie)|0;var Zr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,y=Math.imul(we,He),l=Math.imul(we,Se),l=l+Math.imul(me,He)|0,E=Math.imul(me,Se),y=y+Math.imul(ge,Ve)|0,l=l+Math.imul(ge,Ee)|0,l=l+Math.imul(pe,Ve)|0,E=E+Math.imul(pe,Ee)|0,y=y+Math.imul(ne,Ze)|0,l=l+Math.imul(ne,Re)|0,l=l+Math.imul(ae,Ze)|0,E=E+Math.imul(ae,Re)|0,y=y+Math.imul(z,je)|0,l=l+Math.imul(z,ke)|0,l=l+Math.imul(G,je)|0,E=E+Math.imul(G,ke)|0,y=y+Math.imul(re,Ke)|0,l=l+Math.imul(re,Ne)|0,l=l+Math.imul(oe,Ke)|0,E=E+Math.imul(oe,Ne)|0,y=y+Math.imul(U,De)|0,l=l+Math.imul(U,Be)|0,l=l+Math.imul(j,De)|0,E=E+Math.imul(j,Be)|0,y=y+Math.imul(Z,Ge)|0,l=l+Math.imul(Z,Ie)|0,l=l+Math.imul(ee,Ge)|0,E=E+Math.imul(ee,Ie)|0,y=y+Math.imul(L,Ue)|0,l=l+Math.imul(L,Oe)|0,l=l+Math.imul(F,Ue)|0,E=E+Math.imul(F,Oe)|0;var Ir=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,y=Math.imul(ze,He),l=Math.imul(ze,Se),l=l+Math.imul(_e,He)|0,E=Math.imul(_e,Se),y=y+Math.imul(we,Ve)|0,l=l+Math.imul(we,Ee)|0,l=l+Math.imul(me,Ve)|0,E=E+Math.imul(me,Ee)|0,y=y+Math.imul(ge,Ze)|0,l=l+Math.imul(ge,Re)|0,l=l+Math.imul(pe,Ze)|0,E=E+Math.imul(pe,Re)|0,y=y+Math.imul(ne,je)|0,l=l+Math.imul(ne,ke)|0,l=l+Math.imul(ae,je)|0,E=E+Math.imul(ae,ke)|0,y=y+Math.imul(z,Ke)|0,l=l+Math.imul(z,Ne)|0,l=l+Math.imul(G,Ke)|0,E=E+Math.imul(G,Ne)|0,y=y+Math.imul(re,De)|0,l=l+Math.imul(re,Be)|0,l=l+Math.imul(oe,De)|0,E=E+Math.imul(oe,Be)|0,y=y+Math.imul(U,Ge)|0,l=l+Math.imul(U,Ie)|0,l=l+Math.imul(j,Ge)|0,E=E+Math.imul(j,Ie)|0,y=y+Math.imul(Z,Ue)|0,l=l+Math.imul(Z,Oe)|0,l=l+Math.imul(ee,Ue)|0,E=E+Math.imul(ee,Oe)|0,y=y+Math.imul(L,We)|0,l=l+Math.imul(L,Pe)|0,l=l+Math.imul(F,We)|0,E=E+Math.imul(F,Pe)|0;var Dr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Dr>>>26)|0,Dr&=67108863,y=Math.imul(qe,He),l=Math.imul(qe,Se),l=l+Math.imul(Te,He)|0,E=Math.imul(Te,Se),y=y+Math.imul(ze,Ve)|0,l=l+Math.imul(ze,Ee)|0,l=l+Math.imul(_e,Ve)|0,E=E+Math.imul(_e,Ee)|0,y=y+Math.imul(we,Ze)|0,l=l+Math.imul(we,Re)|0,l=l+Math.imul(me,Ze)|0,E=E+Math.imul(me,Re)|0,y=y+Math.imul(ge,je)|0,l=l+Math.imul(ge,ke)|0,l=l+Math.imul(pe,je)|0,E=E+Math.imul(pe,ke)|0,y=y+Math.imul(ne,Ke)|0,l=l+Math.imul(ne,Ne)|0,l=l+Math.imul(ae,Ke)|0,E=E+Math.imul(ae,Ne)|0,y=y+Math.imul(z,De)|0,l=l+Math.imul(z,Be)|0,l=l+Math.imul(G,De)|0,E=E+Math.imul(G,Be)|0,y=y+Math.imul(re,Ge)|0,l=l+Math.imul(re,Ie)|0,l=l+Math.imul(oe,Ge)|0,E=E+Math.imul(oe,Ie)|0,y=y+Math.imul(U,Ue)|0,l=l+Math.imul(U,Oe)|0,l=l+Math.imul(j,Ue)|0,E=E+Math.imul(j,Oe)|0,y=y+Math.imul(Z,We)|0,l=l+Math.imul(Z,Pe)|0,l=l+Math.imul(ee,We)|0,E=E+Math.imul(ee,Pe)|0,y=y+Math.imul(L,Le)|0,l=l+Math.imul(L,Ye)|0,l=l+Math.imul(F,Le)|0,E=E+Math.imul(F,Ye)|0;var ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(ar>>>26)|0,ar&=67108863,y=Math.imul(qe,Ve),l=Math.imul(qe,Ee),l=l+Math.imul(Te,Ve)|0,E=Math.imul(Te,Ee),y=y+Math.imul(ze,Ze)|0,l=l+Math.imul(ze,Re)|0,l=l+Math.imul(_e,Ze)|0,E=E+Math.imul(_e,Re)|0,y=y+Math.imul(we,je)|0,l=l+Math.imul(we,ke)|0,l=l+Math.imul(me,je)|0,E=E+Math.imul(me,ke)|0,y=y+Math.imul(ge,Ke)|0,l=l+Math.imul(ge,Ne)|0,l=l+Math.imul(pe,Ke)|0,E=E+Math.imul(pe,Ne)|0,y=y+Math.imul(ne,De)|0,l=l+Math.imul(ne,Be)|0,l=l+Math.imul(ae,De)|0,E=E+Math.imul(ae,Be)|0,y=y+Math.imul(z,Ge)|0,l=l+Math.imul(z,Ie)|0,l=l+Math.imul(G,Ge)|0,E=E+Math.imul(G,Ie)|0,y=y+Math.imul(re,Ue)|0,l=l+Math.imul(re,Oe)|0,l=l+Math.imul(oe,Ue)|0,E=E+Math.imul(oe,Oe)|0,y=y+Math.imul(U,We)|0,l=l+Math.imul(U,Pe)|0,l=l+Math.imul(j,We)|0,E=E+Math.imul(j,Pe)|0,y=y+Math.imul(Z,Le)|0,l=l+Math.imul(Z,Ye)|0,l=l+Math.imul(ee,Le)|0,E=E+Math.imul(ee,Ye)|0;var mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(mr>>>26)|0,mr&=67108863,y=Math.imul(qe,Ze),l=Math.imul(qe,Re),l=l+Math.imul(Te,Ze)|0,E=Math.imul(Te,Re),y=y+Math.imul(ze,je)|0,l=l+Math.imul(ze,ke)|0,l=l+Math.imul(_e,je)|0,E=E+Math.imul(_e,ke)|0,y=y+Math.imul(we,Ke)|0,l=l+Math.imul(we,Ne)|0,l=l+Math.imul(me,Ke)|0,E=E+Math.imul(me,Ne)|0,y=y+Math.imul(ge,De)|0,l=l+Math.imul(ge,Be)|0,l=l+Math.imul(pe,De)|0,E=E+Math.imul(pe,Be)|0,y=y+Math.imul(ne,Ge)|0,l=l+Math.imul(ne,Ie)|0,l=l+Math.imul(ae,Ge)|0,E=E+Math.imul(ae,Ie)|0,y=y+Math.imul(z,Ue)|0,l=l+Math.imul(z,Oe)|0,l=l+Math.imul(G,Ue)|0,E=E+Math.imul(G,Oe)|0,y=y+Math.imul(re,We)|0,l=l+Math.imul(re,Pe)|0,l=l+Math.imul(oe,We)|0,E=E+Math.imul(oe,Pe)|0,y=y+Math.imul(U,Le)|0,l=l+Math.imul(U,Ye)|0,l=l+Math.imul(j,Le)|0,E=E+Math.imul(j,Ye)|0;var jr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(jr>>>26)|0,jr&=67108863,y=Math.imul(qe,je),l=Math.imul(qe,ke),l=l+Math.imul(Te,je)|0,E=Math.imul(Te,ke),y=y+Math.imul(ze,Ke)|0,l=l+Math.imul(ze,Ne)|0,l=l+Math.imul(_e,Ke)|0,E=E+Math.imul(_e,Ne)|0,y=y+Math.imul(we,De)|0,l=l+Math.imul(we,Be)|0,l=l+Math.imul(me,De)|0,E=E+Math.imul(me,Be)|0,y=y+Math.imul(ge,Ge)|0,l=l+Math.imul(ge,Ie)|0,l=l+Math.imul(pe,Ge)|0,E=E+Math.imul(pe,Ie)|0,y=y+Math.imul(ne,Ue)|0,l=l+Math.imul(ne,Oe)|0,l=l+Math.imul(ae,Ue)|0,E=E+Math.imul(ae,Oe)|0,y=y+Math.imul(z,We)|0,l=l+Math.imul(z,Pe)|0,l=l+Math.imul(G,We)|0,E=E+Math.imul(G,Pe)|0,y=y+Math.imul(re,Le)|0,l=l+Math.imul(re,Ye)|0,l=l+Math.imul(oe,Le)|0,E=E+Math.imul(oe,Ye)|0;var Yr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,y=Math.imul(qe,Ke),l=Math.imul(qe,Ne),l=l+Math.imul(Te,Ke)|0,E=Math.imul(Te,Ne),y=y+Math.imul(ze,De)|0,l=l+Math.imul(ze,Be)|0,l=l+Math.imul(_e,De)|0,E=E+Math.imul(_e,Be)|0,y=y+Math.imul(we,Ge)|0,l=l+Math.imul(we,Ie)|0,l=l+Math.imul(me,Ge)|0,E=E+Math.imul(me,Ie)|0,y=y+Math.imul(ge,Ue)|0,l=l+Math.imul(ge,Oe)|0,l=l+Math.imul(pe,Ue)|0,E=E+Math.imul(pe,Oe)|0,y=y+Math.imul(ne,We)|0,l=l+Math.imul(ne,Pe)|0,l=l+Math.imul(ae,We)|0,E=E+Math.imul(ae,Pe)|0,y=y+Math.imul(z,Le)|0,l=l+Math.imul(z,Ye)|0,l=l+Math.imul(G,Le)|0,E=E+Math.imul(G,Ye)|0;var or=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(or>>>26)|0,or&=67108863,y=Math.imul(qe,De),l=Math.imul(qe,Be),l=l+Math.imul(Te,De)|0,E=Math.imul(Te,Be),y=y+Math.imul(ze,Ge)|0,l=l+Math.imul(ze,Ie)|0,l=l+Math.imul(_e,Ge)|0,E=E+Math.imul(_e,Ie)|0,y=y+Math.imul(we,Ue)|0,l=l+Math.imul(we,Oe)|0,l=l+Math.imul(me,Ue)|0,E=E+Math.imul(me,Oe)|0,y=y+Math.imul(ge,We)|0,l=l+Math.imul(ge,Pe)|0,l=l+Math.imul(pe,We)|0,E=E+Math.imul(pe,Pe)|0,y=y+Math.imul(ne,Le)|0,l=l+Math.imul(ne,Ye)|0,l=l+Math.imul(ae,Le)|0,E=E+Math.imul(ae,Ye)|0;var Qr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,y=Math.imul(qe,Ge),l=Math.imul(qe,Ie),l=l+Math.imul(Te,Ge)|0,E=Math.imul(Te,Ie),y=y+Math.imul(ze,Ue)|0,l=l+Math.imul(ze,Oe)|0,l=l+Math.imul(_e,Ue)|0,E=E+Math.imul(_e,Oe)|0,y=y+Math.imul(we,We)|0,l=l+Math.imul(we,Pe)|0,l=l+Math.imul(me,We)|0,E=E+Math.imul(me,Pe)|0,y=y+Math.imul(ge,Le)|0,l=l+Math.imul(ge,Ye)|0,l=l+Math.imul(pe,Le)|0,E=E+Math.imul(pe,Ye)|0;var Mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,y=Math.imul(qe,Ue),l=Math.imul(qe,Oe),l=l+Math.imul(Te,Ue)|0,E=Math.imul(Te,Oe),y=y+Math.imul(ze,We)|0,l=l+Math.imul(ze,Pe)|0,l=l+Math.imul(_e,We)|0,E=E+Math.imul(_e,Pe)|0,y=y+Math.imul(we,Le)|0,l=l+Math.imul(we,Ye)|0,l=l+Math.imul(me,Le)|0,E=E+Math.imul(me,Ye)|0;var Xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,y=Math.imul(qe,We),l=Math.imul(qe,Pe),l=l+Math.imul(Te,We)|0,E=Math.imul(Te,Pe),y=y+Math.imul(ze,Le)|0,l=l+Math.imul(ze,Ye)|0,l=l+Math.imul(_e,Le)|0,E=E+Math.imul(_e,Ye)|0;var on=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(on>>>26)|0,on&=67108863,y=Math.imul(qe,Le),l=Math.imul(qe,Ye),l=l+Math.imul(Te,Le)|0,E=Math.imul(Te,Ye);var Cr=(S+y|0)+((l&8191)<<13)|0;return S=(E+(l>>>13)|0)+(Cr>>>26)|0,Cr&=67108863,_[0]=Ar,_[1]=xr,_[2]=Er,_[3]=Gt,_[4]=Vt,_[5]=Lr,_[6]=Zr,_[7]=Ir,_[8]=Dr,_[9]=ar,_[10]=mr,_[11]=jr,_[12]=Yr,_[13]=or,_[14]=Qr,_[15]=Mr,_[16]=Xr,_[17]=on,_[18]=Cr,S!==0&&(_[19]=S,m.length++),m};Math.imul||(C=N);function B(g,a,c){c.negative=a.negative^g.negative,c.length=g.length+a.length;for(var m=0,b=0,x=0;x>>26)|0,b+=_>>>26,_&=67108863}c.words[x]=S,m=_,_=b}return m!==0?c.words[x]=m:c.length--,c._strip()}function O(g,a,c){return B(g,a,c)}i.prototype.mulTo=function(a,c){var m,b=this.length+a.length;return this.length===10&&a.length===10?m=C(this,a,c):b<63?m=N(this,a,c):b<1024?m=B(this,a,c):m=O(this,a,c),m},i.prototype.mul=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),this.mulTo(a,c)},i.prototype.mulf=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),O(this,a,c)},i.prototype.imul=function(a){return this.clone().mulTo(a,this)},i.prototype.imuln=function(a){var c=a<0;c&&(a=-a),n(typeof a=="number"),n(a<67108864);for(var m=0,b=0;b>=26,m+=x/67108864|0,m+=_>>>26,this.words[b]=_&67108863}return m!==0&&(this.words[b]=m,this.length++),c?this.ineg():this},i.prototype.muln=function(a){return this.clone().imuln(a)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(a){var c=R(a);if(c.length===0)return new i(1);for(var m=this,b=0;b=0);var c=a%26,m=(a-c)/26,b=67108863>>>26-c<<26-c,x;if(c!==0){var _=0;for(x=0;x>>26-c}_&&(this.words[x]=_,this.length++)}if(m!==0){for(x=this.length-1;x>=0;x--)this.words[x+m]=this.words[x];for(x=0;x=0);var b;c?b=(c-c%26)/26:b=0;var x=a%26,_=Math.min((a-x)/26,this.length),S=67108863^67108863>>>x<_)for(this.length-=_,l=0;l=0&&(E!==0||l>=b);l--){var Y=this.words[l]|0;this.words[l]=E<<26-x|Y>>>x,E=Y&S}return y&&E!==0&&(y.words[y.length++]=E),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},i.prototype.ishrn=function(a,c,m){return n(this.negative===0),this.iushrn(a,c,m)},i.prototype.shln=function(a){return this.clone().ishln(a)},i.prototype.ushln=function(a){return this.clone().iushln(a)},i.prototype.shrn=function(a){return this.clone().ishrn(a)},i.prototype.ushrn=function(a){return this.clone().iushrn(a)},i.prototype.testn=function(a){n(typeof a=="number"&&a>=0);var c=a%26,m=(a-c)/26,b=1<=0);var c=a%26,m=(a-c)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=m)return this;if(c!==0&&m++,this.length=Math.min(m,this.length),c!==0){var b=67108863^67108863>>>c<=67108864;c++)this.words[c]-=67108864,c===this.length-1?this.words[c+1]=1:this.words[c+1]++;return this.length=Math.max(this.length,c+1),this},i.prototype.isubn=function(a){if(n(typeof a=="number"),n(a<67108864),a<0)return this.iaddn(-a);if(this.negative!==0)return this.negative=0,this.iaddn(a),this.negative=1,this;if(this.words[0]-=a,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var c=0;c>26)-(y/67108864|0),this.words[x+m]=_&67108863}for(;x>26,this.words[x+m]=_&67108863;if(S===0)return this._strip();for(n(S===-1),S=0,x=0;x>26,this.words[x]=_&67108863;return this.negative=1,this._strip()},i.prototype._wordDiv=function(a,c){var m=this.length-a.length,b=this.clone(),x=a,_=x.words[x.length-1]|0,S=this._countBits(_);m=26-S,m!==0&&(x=x.ushln(m),b.iushln(m),_=x.words[x.length-1]|0);var y=b.length-x.length,l;if(c!=="mod"){l=new i(null),l.length=y+1,l.words=new Array(l.length);for(var E=0;E=0;L--){var F=(b.words[x.length+L]|0)*67108864+(b.words[x.length+L-1]|0);for(F=Math.min(F/_|0,67108863),b._ishlnsubmul(x,F,L);b.negative!==0;)F--,b.negative=0,b._ishlnsubmul(x,1,L),b.isZero()||(b.negative^=1);l&&(l.words[L]=F)}return l&&l._strip(),b._strip(),c!=="div"&&m!==0&&b.iushrn(m),{div:l||null,mod:b}},i.prototype.divmod=function(a,c,m){if(n(!a.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var b,x,_;return this.negative!==0&&a.negative===0?(_=this.neg().divmod(a,c),c!=="mod"&&(b=_.div.neg()),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.iadd(a)),{div:b,mod:x}):this.negative===0&&a.negative!==0?(_=this.divmod(a.neg(),c),c!=="mod"&&(b=_.div.neg()),{div:b,mod:_.mod}):this.negative&a.negative?(_=this.neg().divmod(a.neg(),c),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.isub(a)),{div:_.div,mod:x}):a.length>this.length||this.cmp(a)<0?{div:new i(0),mod:this}:a.length===1?c==="div"?{div:this.divn(a.words[0]),mod:null}:c==="mod"?{div:null,mod:new i(this.modrn(a.words[0]))}:{div:this.divn(a.words[0]),mod:new i(this.modrn(a.words[0]))}:this._wordDiv(a,c)},i.prototype.div=function(a){return this.divmod(a,"div",!1).div},i.prototype.mod=function(a){return this.divmod(a,"mod",!1).mod},i.prototype.umod=function(a){return this.divmod(a,"mod",!0).mod},i.prototype.divRound=function(a){var c=this.divmod(a);if(c.mod.isZero())return c.div;var m=c.div.negative!==0?c.mod.isub(a):c.mod,b=a.ushrn(1),x=a.andln(1),_=m.cmp(b);return _<0||x===1&&_===0?c.div:c.div.negative!==0?c.div.isubn(1):c.div.iaddn(1)},i.prototype.modrn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=(1<<26)%a,b=0,x=this.length-1;x>=0;x--)b=(m*b+(this.words[x]|0))%a;return c?-b:b},i.prototype.modn=function(a){return this.modrn(a)},i.prototype.idivn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=0,b=this.length-1;b>=0;b--){var x=(this.words[b]|0)+m*67108864;this.words[b]=x/a|0,m=x%a}return this._strip(),c?this.ineg():this},i.prototype.divn=function(a){return this.clone().idivn(a)},i.prototype.egcd=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=new i(0),S=new i(1),y=0;c.isEven()&&m.isEven();)c.iushrn(1),m.iushrn(1),++y;for(var l=m.clone(),E=c.clone();!c.isZero();){for(var Y=0,L=1;!(c.words[0]&L)&&Y<26;++Y,L<<=1);if(Y>0)for(c.iushrn(Y);Y-- >0;)(b.isOdd()||x.isOdd())&&(b.iadd(l),x.isub(E)),b.iushrn(1),x.iushrn(1);for(var F=0,V=1;!(m.words[0]&V)&&F<26;++F,V<<=1);if(F>0)for(m.iushrn(F);F-- >0;)(_.isOdd()||S.isOdd())&&(_.iadd(l),S.isub(E)),_.iushrn(1),S.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(_),x.isub(S)):(m.isub(c),_.isub(b),S.isub(x))}return{a:_,b:S,gcd:m.iushln(y)}},i.prototype._invmp=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=m.clone();c.cmpn(1)>0&&m.cmpn(1)>0;){for(var S=0,y=1;!(c.words[0]&y)&&S<26;++S,y<<=1);if(S>0)for(c.iushrn(S);S-- >0;)b.isOdd()&&b.iadd(_),b.iushrn(1);for(var l=0,E=1;!(m.words[0]&E)&&l<26;++l,E<<=1);if(l>0)for(m.iushrn(l);l-- >0;)x.isOdd()&&x.iadd(_),x.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(x)):(m.isub(c),x.isub(b))}var Y;return c.cmpn(1)===0?Y=b:Y=x,Y.cmpn(0)<0&&Y.iadd(a),Y},i.prototype.gcd=function(a){if(this.isZero())return a.abs();if(a.isZero())return this.abs();var c=this.clone(),m=a.clone();c.negative=0,m.negative=0;for(var b=0;c.isEven()&&m.isEven();b++)c.iushrn(1),m.iushrn(1);do{for(;c.isEven();)c.iushrn(1);for(;m.isEven();)m.iushrn(1);var x=c.cmp(m);if(x<0){var _=c;c=m,m=_}else if(x===0||m.cmpn(1)===0)break;c.isub(m)}while(!0);return m.iushln(b)},i.prototype.invm=function(a){return this.egcd(a).a.umod(a)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(a){return this.words[0]&a},i.prototype.bincn=function(a){n(typeof a=="number");var c=a%26,m=(a-c)/26,b=1<>>26,S&=67108863,this.words[_]=S}return x!==0&&(this.words[_]=x,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(a){var c=a<0;if(this.negative!==0&&!c)return-1;if(this.negative===0&&c)return 1;this._strip();var m;if(this.length>1)m=1;else{c&&(a=-a),n(a<=67108863,"Number is too big");var b=this.words[0]|0;m=b===a?0:ba.length)return 1;if(this.length=0;m--){var b=this.words[m]|0,x=a.words[m]|0;if(b!==x){bx&&(c=1);break}}return c},i.prototype.gtn=function(a){return this.cmpn(a)===1},i.prototype.gt=function(a){return this.cmp(a)===1},i.prototype.gten=function(a){return this.cmpn(a)>=0},i.prototype.gte=function(a){return this.cmp(a)>=0},i.prototype.ltn=function(a){return this.cmpn(a)===-1},i.prototype.lt=function(a){return this.cmp(a)===-1},i.prototype.lten=function(a){return this.cmpn(a)<=0},i.prototype.lte=function(a){return this.cmp(a)<=0},i.prototype.eqn=function(a){return this.cmpn(a)===0},i.prototype.eq=function(a){return this.cmp(a)===0},i.red=function(a){return new P(a)},i.prototype.toRed=function(a){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),a.convertTo(this)._forceRed(a)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(a){return this.red=a,this},i.prototype.forceRed=function(a){return n(!this.red,"Already a number in reduction context"),this._forceRed(a)},i.prototype.redAdd=function(a){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,a)},i.prototype.redIAdd=function(a){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,a)},i.prototype.redSub=function(a){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,a)},i.prototype.redISub=function(a){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,a)},i.prototype.redShl=function(a){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,a)},i.prototype.redMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.mul(this,a)},i.prototype.redIMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.imul(this,a)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(a){return n(this.red&&!a.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,a)};var D={k256:null,p224:null,p192:null,p25519:null};function q(g,a){this.name=g,this.p=new i(a,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}q.prototype._tmp=function(){var a=new i(null);return a.words=new Array(Math.ceil(this.n/13)),a},q.prototype.ireduce=function(a){var c=a,m;do this.split(c,this.tmp),c=this.imulK(c),c=c.iadd(this.tmp),m=c.bitLength();while(m>this.n);var b=m0?c.isub(this.p):c.strip!==void 0?c.strip():c._strip(),c},q.prototype.split=function(a,c){a.iushrn(this.n,0,c)},q.prototype.imulK=function(a){return a.imul(this.k)};function W(){q.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(W,q),W.prototype.split=function(a,c){for(var m=4194303,b=Math.min(a.length,9),x=0;x>>22,_=S}_>>>=22,a.words[x-10]=_,_===0&&a.length>10?a.length-=10:a.length-=9},W.prototype.imulK=function(a){a.words[a.length]=0,a.words[a.length+1]=0,a.length+=2;for(var c=0,m=0;m>>=26,a.words[m]=x,c=b}return c!==0&&(a.words[a.length++]=c),a},i._prime=function(a){if(D[a])return D[a];var c;if(a==="k256")c=new W;else if(a==="p224")c=new k;else if(a==="p192")c=new I;else if(a==="p25519")c=new H;else throw new Error("Unknown prime "+a);return D[a]=c,c};function P(g){if(typeof g=="string"){var a=i._prime(g);this.m=a.p,this.prime=a}else n(g.gtn(1),"modulus must be greater than 1"),this.m=g,this.prime=null}P.prototype._verify1=function(a){n(a.negative===0,"red works only with positives"),n(a.red,"red works only with red numbers")},P.prototype._verify2=function(a,c){n((a.negative|c.negative)===0,"red works only with positives"),n(a.red&&a.red===c.red,"red works only with red numbers")},P.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):(p(a,a.umod(this.m)._forceRed(this)),a)},P.prototype.neg=function(a){return a.isZero()?a.clone():this.m.sub(a)._forceRed(this)},P.prototype.add=function(a,c){this._verify2(a,c);var m=a.add(c);return m.cmp(this.m)>=0&&m.isub(this.m),m._forceRed(this)},P.prototype.iadd=function(a,c){this._verify2(a,c);var m=a.iadd(c);return m.cmp(this.m)>=0&&m.isub(this.m),m},P.prototype.sub=function(a,c){this._verify2(a,c);var m=a.sub(c);return m.cmpn(0)<0&&m.iadd(this.m),m._forceRed(this)},P.prototype.isub=function(a,c){this._verify2(a,c);var m=a.isub(c);return m.cmpn(0)<0&&m.iadd(this.m),m},P.prototype.shl=function(a,c){return this._verify1(a),this.imod(a.ushln(c))},P.prototype.imul=function(a,c){return this._verify2(a,c),this.imod(a.imul(c))},P.prototype.mul=function(a,c){return this._verify2(a,c),this.imod(a.mul(c))},P.prototype.isqr=function(a){return this.imul(a,a.clone())},P.prototype.sqr=function(a){return this.mul(a,a)},P.prototype.sqrt=function(a){if(a.isZero())return a.clone();var c=this.m.andln(3);if(n(c%2===1),c===3){var m=this.m.add(new i(1)).iushrn(2);return this.pow(a,m)}for(var b=this.m.subn(1),x=0;!b.isZero()&&b.andln(1)===0;)x++,b.iushrn(1);n(!b.isZero());var _=new i(1).toRed(this),S=_.redNeg(),y=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);this.pow(l,y).cmp(S)!==0;)l.redIAdd(S);for(var E=this.pow(l,b),Y=this.pow(a,b.addn(1).iushrn(1)),L=this.pow(a,b),F=x;L.cmp(_)!==0;){for(var V=L,Z=0;V.cmp(_)!==0;Z++)V=V.redSqr();n(Z=0;x--){for(var E=c.words[x],Y=l-1;Y>=0;Y--){var L=E>>Y&1;if(_!==b[0]&&(_=this.sqr(_)),L===0&&S===0){y=0;continue}S<<=1,S|=L,y++,!(y!==m&&(x!==0||Y!==0))&&(_=this.mul(_,b[S]),y=0,S=0)}l=26}return _},P.prototype.convertTo=function(a){var c=a.umod(this.m);return c===a?c.clone():c},P.prototype.convertFrom=function(a){var c=a.clone();return c.red=null,c},i.mont=function(a){return new T(a)};function T(g){P.call(this,g),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(T,P),T.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))},T.prototype.convertFrom=function(a){var c=this.imod(a.mul(this.rinv));return c.red=null,c},T.prototype.imul=function(a,c){if(a.isZero()||c.isZero())return a.words[0]=0,a.length=1,a;var m=a.imul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.mul=function(a,c){if(a.isZero()||c.isZero())return new i(0)._forceRed(this);var m=a.mul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.invm=function(a){var c=this.imod(a._invmp(this.m).mul(this.r2));return c._forceRed(this)}})(t,ue)})(eL);const tL=xw,rL="bignumber/5.7.0";var xg=tL.BN;const Wo=new $t(rL),bb={},B4=9007199254740991;let I4=!1,Yi=class _a{constructor(e,r){e!==bb&&Wo.throwError("cannot call constructor directly; use BigNumber.from",$t.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=r,this._isBigNumber=!0,Object.freeze(this)}fromTwos(e){return es(ur(this).fromTwos(e))}toTwos(e){return es(ur(this).toTwos(e))}abs(){return this._hex[0]==="-"?_a.from(this._hex.substring(1)):this}add(e){return es(ur(this).add(ur(e)))}sub(e){return es(ur(this).sub(ur(e)))}div(e){return _a.from(e).isZero()&&Ls("division-by-zero","div"),es(ur(this).div(ur(e)))}mul(e){return es(ur(this).mul(ur(e)))}mod(e){const r=ur(e);return r.isNeg()&&Ls("division-by-zero","mod"),es(ur(this).umod(r))}pow(e){const r=ur(e);return r.isNeg()&&Ls("negative-power","pow"),es(ur(this).pow(r))}and(e){const r=ur(e);return(this.isNegative()||r.isNeg())&&Ls("unbound-bitwise-result","and"),es(ur(this).and(r))}or(e){const r=ur(e);return(this.isNegative()||r.isNeg())&&Ls("unbound-bitwise-result","or"),es(ur(this).or(r))}xor(e){const r=ur(e);return(this.isNegative()||r.isNeg())&&Ls("unbound-bitwise-result","xor"),es(ur(this).xor(r))}mask(e){return(this.isNegative()||e<0)&&Ls("negative-width","mask"),es(ur(this).maskn(e))}shl(e){return(this.isNegative()||e<0)&&Ls("negative-width","shl"),es(ur(this).shln(e))}shr(e){return(this.isNegative()||e<0)&&Ls("negative-width","shr"),es(ur(this).shrn(e))}eq(e){return ur(this).eq(ur(e))}lt(e){return ur(this).lt(ur(e))}lte(e){return ur(this).lte(ur(e))}gt(e){return ur(this).gt(ur(e))}gte(e){return ur(this).gte(ur(e))}isNegative(){return this._hex[0]==="-"}isZero(){return ur(this).isZero()}toNumber(){try{return ur(this).toNumber()}catch{Ls("overflow","toNumber",this.toString())}return null}toBigInt(){try{return BigInt(this.toString())}catch{}return Wo.throwError("this platform does not support BigInt",$t.errors.UNSUPPORTED_OPERATION,{value:this.toString()})}toString(){return arguments.length>0&&(arguments[0]===10?I4||(I4=!0,Wo.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):arguments[0]===16?Wo.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",$t.errors.UNEXPECTED_ARGUMENT,{}):Wo.throwError("BigNumber.toString does not accept parameters",$t.errors.UNEXPECTED_ARGUMENT,{})),ur(this).toString(10)}toHexString(){return this._hex}toJSON(e){return{type:"BigNumber",hex:this.toHexString()}}static from(e){if(e instanceof _a)return e;if(typeof e=="string")return e.match(/^-?0x[0-9a-f]+$/i)?new _a(bb,op(e)):e.match(/^-?[0-9]+$/)?new _a(bb,op(new xg(e))):Wo.throwArgumentError("invalid BigNumber string","value",e);if(typeof e=="number")return e%1&&Ls("underflow","BigNumber.from",e),(e>=B4||e<=-B4)&&Ls("overflow","BigNumber.from",e),_a.from(String(e));const r=e;if(typeof r=="bigint")return _a.from(r.toString());if(Fv(r))return _a.from(Rr(r));if(r)if(r.toHexString){const n=r.toHexString();if(typeof n=="string")return _a.from(n)}else{let n=r._hex;if(n==null&&r.type==="BigNumber"&&(n=r.hex),typeof n=="string"&&(xi(n)||n[0]==="-"&&xi(n.substring(1))))return _a.from(n)}return Wo.throwArgumentError("invalid BigNumber value","value",e)}static isBigNumber(e){return!!(e&&e._isBigNumber)}};function op(t){if(typeof t!="string")return op(t.toString(16));if(t[0]==="-")return t=t.substring(1),t[0]==="-"&&Wo.throwArgumentError("invalid hex","value",t),t=op(t),t==="0x00"?t:"-"+t;if(t.substring(0,2)!=="0x"&&(t="0x"+t),t==="0x")return"0x00";for(t.length%2&&(t="0x0"+t.substring(2));t.length>4&&t.substring(0,4)==="0x00";)t="0x"+t.substring(4);return t}function es(t){return Yi.from(op(t))}function ur(t){const e=Yi.from(t).toHexString();return e[0]==="-"?new xg("-"+e.substring(3),16):new xg(e.substring(2),16)}function Ls(t,e,r){const n={fault:t,operation:e};return r!=null&&(n.value=r),Wo.throwError(t,$t.errors.NUMERIC_FAULT,n)}function nL(t){return new xg(t,36).toString(16)}function fp(t){return"0x"+JA.keccak_256(kn(t))}const iL="rlp/5.7.0",fo=new $t(iL);function P4(t){const e=[];for(;t;)e.unshift(t&255),t>>=8;return e}function O4(t,e,r){let n=0;for(let s=0;se+1+n&&fo.throwError("child data too short",$t.errors.BUFFER_OVERRUN,{})}return{consumed:1+n,result:s}}function q7(t,e){if(t.length===0&&fo.throwError("data too short",$t.errors.BUFFER_OVERRUN,{}),t[e]>=248){const r=t[e]-247;e+1+r>t.length&&fo.throwError("data short segment too short",$t.errors.BUFFER_OVERRUN,{});const n=O4(t,e+1,r);return e+1+r+n>t.length&&fo.throwError("data long segment too short",$t.errors.BUFFER_OVERRUN,{}),L4(t,e,e+1+r,r+n)}else if(t[e]>=192){const r=t[e]-192;return e+1+r>t.length&&fo.throwError("data array too short",$t.errors.BUFFER_OVERRUN,{}),L4(t,e,e+1,r)}else if(t[e]>=184){const r=t[e]-183;e+1+r>t.length&&fo.throwError("data array too short",$t.errors.BUFFER_OVERRUN,{});const n=O4(t,e+1,r);e+1+r+n>t.length&&fo.throwError("data array too short",$t.errors.BUFFER_OVERRUN,{});const s=Rr(t.slice(e+1+r,e+1+r+n));return{consumed:1+r+n,result:s}}else if(t[e]>=128){const r=t[e]-128;e+1+r>t.length&&fo.throwError("data too short",$t.errors.BUFFER_OVERRUN,{});const n=Rr(t.slice(e+1,e+1+r));return{consumed:1+r,result:n}}return{consumed:1,result:Rr(t[e])}}function Uie(t){const e=kn(t),r=q7(e,0);return r.consumed!==e.length&&fo.throwArgumentError("invalid rlp data","data",t),r.result}const aL="address/5.7.0",zu=new $t(aL);function D4(t){xi(t,20)||zu.throwArgumentError("invalid address","address",t),t=t.toLowerCase();const e=t.substring(2).split(""),r=new Uint8Array(40);for(let s=0;s<40;s++)r[s]=e[s].charCodeAt(0);const n=kn(fp(r));for(let s=0;s<40;s+=2)n[s>>1]>>4>=8&&(e[s]=e[s].toUpperCase()),(n[s>>1]&15)>=8&&(e[s+1]=e[s+1].toUpperCase());return"0x"+e.join("")}const oL=9007199254740991;function fL(t){return Math.log10?Math.log10(t):Math.log(t)/Math.LN10}const e3={};for(let t=0;t<10;t++)e3[String(t)]=String(t);for(let t=0;t<26;t++)e3[String.fromCharCode(65+t)]=String(10+t);const F4=Math.floor(fL(oL));function lL(t){t=t.toUpperCase(),t=t.substring(4)+t.substring(0,2)+"00";let e=t.split("").map(n=>e3[n]).join("");for(;e.length>=F4;){let n=e.substring(0,F4);e=parseInt(n,10)%97+e.substring(n.length)}let r=String(98-parseInt(e,10)%97);for(;r.length<2;)r="0"+r;return r}function lp(t){let e=null;if(typeof t!="string"&&zu.throwArgumentError("invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/))t.substring(0,2)!=="0x"&&(t="0x"+t),e=D4(t),t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&e!==t&&zu.throwArgumentError("bad address checksum","address",t);else if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(t.substring(2,4)!==lL(t)&&zu.throwArgumentError("bad icap checksum","address",t),e=nL(t.substring(4));e.length<40;)e="0"+e;e=D4("0x"+e)}else zu.throwArgumentError("invalid address","address",t);return e}function Hie(t){let e=null;try{e=lp(t.from)}catch{zu.throwArgumentError("missing from address","transaction",t)}const r=QO(kn(Yi.from(t.nonce).toHexString()));return lp(z7(fp(sL([e,r])),12))}const cL="properties/5.7.0";var uL=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const Eg=new $t(cL);function yi(t,e,r){Object.defineProperty(t,e,{enumerable:!0,value:r,writable:!1})}function Z1(t,e){for(let r=0;r<32;r++){if(t[e])return t[e];if(!t.prototype||typeof t.prototype!="object")break;t=Object.getPrototypeOf(t.prototype).constructor}return null}function jie(t){return uL(this,void 0,void 0,function*(){const e=Object.keys(t).map(n=>{const s=t[n];return Promise.resolve(s).then(i=>({key:n,value:i}))});return(yield Promise.all(e)).reduce((n,s)=>(n[s.key]=s.value,n),{})})}function zie(t,e){(!t||typeof t!="object")&&Eg.throwArgumentError("invalid object","object",t),Object.keys(t).forEach(r=>{e[r]||Eg.throwArgumentError("invalid object key - "+r,"transaction:"+r,t)})}function Kie(t){const e={};for(const r in t)e[r]=t[r];return e}const hL={bigint:!0,boolean:!0,function:!0,number:!0,string:!0};function G7(t){if(t==null||hL[typeof t])return!0;if(Array.isArray(t)||typeof t=="object"){if(!Object.isFrozen(t))return!1;const e=Object.keys(t);for(let r=0;rEw(e)));if(typeof t=="object"){const e={};for(const r in t){const n=t[r];n!==void 0&&yi(e,r,Ew(n))}return e}return Eg.throwArgumentError(`Cannot deepCopy ${typeof t}`,"object",t)}function Ew(t){return dL(t)}let Uv=class{constructor(e){for(const r in e)this[r]=Ew(e[r])}};const pL=Yi.from(-1),mL=Yi.from(0),gL=Yi.from(1),vL=Yi.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),yL="strings/5.7.0",V7=new $t(yL);var cp;(function(t){t.current="",t.NFC="NFC",t.NFD="NFD",t.NFKC="NFKC",t.NFKD="NFKD"})(cp||(cp={}));var xs;(function(t){t.UNEXPECTED_CONTINUE="unexpected continuation byte",t.BAD_PREFIX="bad codepoint prefix",t.OVERRUN="string overrun",t.MISSING_CONTINUE="missing continuation byte",t.OUT_OF_RANGE="out of UTF-8 range",t.UTF16_SURROGATE="UTF-16 surrogate",t.OVERLONG="overlong representation"})(xs||(xs={}));function bL(t,e,r,n,s){return V7.throwArgumentError(`invalid codepoint at offset ${e}; ${t}`,"bytes",r)}function W7(t,e,r,n,s){if(t===xs.BAD_PREFIX||t===xs.UNEXPECTED_CONTINUE){let i=0;for(let o=e+1;o>6===2;o++)i++;return i}return t===xs.OVERRUN?r.length-e-1:0}function wL(t,e,r,n,s){return t===xs.OVERLONG?(n.push(s),0):(n.push(65533),W7(t,e,r))}const AL=Object.freeze({error:bL,ignore:W7,replace:wL});function Z7(t,e){e==null&&(e=AL.error),t=kn(t);const r=[];let n=0;for(;n>7)){r.push(s);continue}let i=null,o=null;if((s&224)===192)i=1,o=127;else if((s&240)===224)i=2,o=2047;else if((s&248)===240)i=3,o=65535;else{(s&192)===128?n+=e(xs.UNEXPECTED_CONTINUE,n-1,t,r):n+=e(xs.BAD_PREFIX,n-1,t,r);continue}if(n-1+i>=t.length){n+=e(xs.OVERRUN,n-1,t,r);continue}let f=s&(1<<8-i-1)-1;for(let u=0;u1114111){n+=e(xs.OUT_OF_RANGE,n-1-i,t,r,f);continue}if(f>=55296&&f<=57343){n+=e(xs.UTF16_SURROGATE,n-1-i,t,r,f);continue}if(f<=o){n+=e(xs.OVERLONG,n-1-i,t,r,f);continue}r.push(f)}}return r}function t3(t,e=cp.current){e!=cp.current&&(V7.checkNormalize(),t=t.normalize(e));let r=[];for(let n=0;n>6|192),r.push(s&63|128);else if((s&64512)==55296){n++;const i=t.charCodeAt(n);if(n>=t.length||(i&64512)!==56320)throw new Error("invalid utf-8 string");const o=65536+((s&1023)<<10)+(i&1023);r.push(o>>18|240),r.push(o>>12&63|128),r.push(o>>6&63|128),r.push(o&63|128)}else r.push(s>>12|224),r.push(s>>6&63|128),r.push(s&63|128)}return kn(r)}function xL(t){return t.map(e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10&1023)+55296,(e&1023)+56320))).join("")}function EL(t,e){return xL(Z7(t,e))}function Gie(t,e=cp.current){return Z7(t3(t,e))}function Y1(t){return fp(t3(t))}var Mw={},ML={get exports(){return Mw},set exports(t){Mw=t}};(function(t){(function(e,r){function n(g,a){if(!g)throw new Error(a||"Assertion failed")}function s(g,a){g.super_=a;var c=function(){};c.prototype=a.prototype,g.prototype=new c,g.prototype.constructor=g}function i(g,a,c){if(i.isBN(g))return g;this.negative=0,this.words=null,this.length=0,this.red=null,g!==null&&((a==="le"||a==="be")&&(c=a,a=10),this._init(g||0,a||10,c||"be"))}typeof e=="object"?e.exports=i:r.BN=i,i.BN=i,i.wordSize=26;var o;try{typeof window<"u"&&typeof window.Buffer<"u"?o=window.Buffer:o=mt.Buffer}catch{}i.isBN=function(a){return a instanceof i?!0:a!==null&&typeof a=="object"&&a.constructor.wordSize===i.wordSize&&Array.isArray(a.words)},i.max=function(a,c){return a.cmp(c)>0?a:c},i.min=function(a,c){return a.cmp(c)<0?a:c},i.prototype._init=function(a,c,m){if(typeof a=="number")return this._initNumber(a,c,m);if(typeof a=="object")return this._initArray(a,c,m);c==="hex"&&(c=16),n(c===(c|0)&&c>=2&&c<=36),a=a.toString().replace(/\s+/g,"");var b=0;a[0]==="-"&&(b++,this.negative=1),b=0;b-=3)_=a[b]|a[b-1]<<8|a[b-2]<<16,this.words[x]|=_<>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);else if(m==="le")for(b=0,x=0;b>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);return this._strip()};function f(g,a){var c=g.charCodeAt(a);if(c>=48&&c<=57)return c-48;if(c>=65&&c<=70)return c-55;if(c>=97&&c<=102)return c-87;n(!1,"Invalid character in "+g)}function u(g,a,c){var m=f(g,c);return c-1>=a&&(m|=f(g,c-1)<<4),m}i.prototype._parseHex=function(a,c,m){this.length=Math.ceil((a.length-c)/6),this.words=new Array(this.length);for(var b=0;b=c;b-=2)S=u(a,c,b)<=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8;else{var y=a.length-c;for(b=y%2===0?c+1:c;b=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8}this._strip()};function h(g,a,c,m){for(var b=0,x=0,_=Math.min(g.length,c),S=a;S<_;S++){var y=g.charCodeAt(S)-48;b*=m,y>=49?x=y-49+10:y>=17?x=y-17+10:x=y,n(y>=0&&x1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{i.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch{i.prototype.inspect=d}else i.prototype.inspect=d;function d(){return(this.red?""}var v=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],w=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(a,c){a=a||10,c=c|0||1;var m;if(a===16||a==="hex"){m="";for(var b=0,x=0,_=0;_>>24-b&16777215,b+=2,b>=26&&(b-=26,_--),x!==0||_!==this.length-1?m=v[6-y.length]+y+m:m=y+m}for(x!==0&&(m=x.toString(16)+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}if(a===(a|0)&&a>=2&&a<=36){var l=w[a],E=A[a];m="";var Y=this.clone();for(Y.negative=0;!Y.isZero();){var L=Y.modrn(E).toString(a);Y=Y.idivn(E),Y.isZero()?m=L+m:m=v[l-L.length]+L+m}for(this.isZero()&&(m="0"+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var a=this.words[0];return this.length===2?a+=this.words[1]*67108864:this.length===3&&this.words[2]===1?a+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-a:a},i.prototype.toJSON=function(){return this.toString(16,2)},o&&(i.prototype.toBuffer=function(a,c){return this.toArrayLike(o,a,c)}),i.prototype.toArray=function(a,c){return this.toArrayLike(Array,a,c)};var M=function(a,c){return a.allocUnsafe?a.allocUnsafe(c):new a(c)};i.prototype.toArrayLike=function(a,c,m){this._strip();var b=this.byteLength(),x=m||Math.max(1,b);n(b<=x,"byte array longer than desired length"),n(x>0,"Requested array length <= 0");var _=M(a,x),S=c==="le"?"LE":"BE";return this["_toArrayLike"+S](_,b),_},i.prototype._toArrayLikeLE=function(a,c){for(var m=0,b=0,x=0,_=0;x>8&255),m>16&255),_===6?(m>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m=0&&(a[m--]=S>>8&255),m>=0&&(a[m--]=S>>16&255),_===6?(m>=0&&(a[m--]=S>>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m>=0)for(a[m--]=b;m>=0;)a[m--]=0},Math.clz32?i.prototype._countBits=function(a){return 32-Math.clz32(a)}:i.prototype._countBits=function(a){var c=a,m=0;return c>=4096&&(m+=13,c>>>=13),c>=64&&(m+=7,c>>>=7),c>=8&&(m+=4,c>>>=4),c>=2&&(m+=2,c>>>=2),m+c},i.prototype._zeroBits=function(a){if(a===0)return 26;var c=a,m=0;return c&8191||(m+=13,c>>>=13),c&127||(m+=7,c>>>=7),c&15||(m+=4,c>>>=4),c&3||(m+=2,c>>>=2),c&1||m++,m},i.prototype.bitLength=function(){var a=this.words[this.length-1],c=this._countBits(a);return(this.length-1)*26+c};function R(g){for(var a=new Array(g.bitLength()),c=0;c>>b&1}return a}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var a=0,c=0;ca.length?this.clone().ior(a):a.clone().ior(this)},i.prototype.uor=function(a){return this.length>a.length?this.clone().iuor(a):a.clone().iuor(this)},i.prototype.iuand=function(a){var c;this.length>a.length?c=a:c=this;for(var m=0;ma.length?this.clone().iand(a):a.clone().iand(this)},i.prototype.uand=function(a){return this.length>a.length?this.clone().iuand(a):a.clone().iuand(this)},i.prototype.iuxor=function(a){var c,m;this.length>a.length?(c=this,m=a):(c=a,m=this);for(var b=0;ba.length?this.clone().ixor(a):a.clone().ixor(this)},i.prototype.uxor=function(a){return this.length>a.length?this.clone().iuxor(a):a.clone().iuxor(this)},i.prototype.inotn=function(a){n(typeof a=="number"&&a>=0);var c=Math.ceil(a/26)|0,m=a%26;this._expand(c),m>0&&c--;for(var b=0;b0&&(this.words[b]=~this.words[b]&67108863>>26-m),this._strip()},i.prototype.notn=function(a){return this.clone().inotn(a)},i.prototype.setn=function(a,c){n(typeof a=="number"&&a>=0);var m=a/26|0,b=a%26;return this._expand(m+1),c?this.words[m]=this.words[m]|1<a.length?(m=this,b=a):(m=a,b=this);for(var x=0,_=0;_>>26;for(;x!==0&&_>>26;if(this.length=m.length,x!==0)this.words[this.length]=x,this.length++;else if(m!==this)for(;_a.length?this.clone().iadd(a):a.clone().iadd(this)},i.prototype.isub=function(a){if(a.negative!==0){a.negative=0;var c=this.iadd(a);return a.negative=1,c._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(a),this.negative=1,this._normSign();var m=this.cmp(a);if(m===0)return this.negative=0,this.length=1,this.words[0]=0,this;var b,x;m>0?(b=this,x=a):(b=a,x=this);for(var _=0,S=0;S>26,this.words[S]=c&67108863;for(;_!==0&&S>26,this.words[S]=c&67108863;if(_===0&&S>>26,Y=y&67108863,L=Math.min(l,a.length-1),F=Math.max(0,l-g.length+1);F<=L;F++){var V=l-F|0;b=g.words[V]|0,x=a.words[F]|0,_=b*x+Y,E+=_/67108864|0,Y=_&67108863}c.words[l]=Y|0,y=E|0}return y!==0?c.words[l]=y|0:c.length--,c._strip()}var C=function(a,c,m){var b=a.words,x=c.words,_=m.words,S=0,y,l,E,Y=b[0]|0,L=Y&8191,F=Y>>>13,V=b[1]|0,Z=V&8191,ee=V>>>13,ce=b[2]|0,U=ce&8191,j=ce>>>13,se=b[3]|0,re=se&8191,oe=se>>>13,Q=b[4]|0,z=Q&8191,G=Q>>>13,X=b[5]|0,ne=X&8191,ae=X>>>13,Me=b[6]|0,ge=Me&8191,pe=Me>>>13,ot=b[7]|0,we=ot&8191,me=ot>>>13,ut=b[8]|0,ze=ut&8191,_e=ut>>>13,Bt=b[9]|0,qe=Bt&8191,Te=Bt>>>13,xt=x[0]|0,He=xt&8191,Se=xt>>>13,Rt=x[1]|0,Ve=Rt&8191,Ee=Rt>>>13,Nt=x[2]|0,Ze=Nt&8191,Re=Nt>>>13,Ct=x[3]|0,je=Ct&8191,ke=Ct>>>13,Pt=x[4]|0,Ke=Pt&8191,Ne=Pt>>>13,Ot=x[5]|0,De=Ot&8191,Be=Ot>>>13,kt=x[6]|0,Ge=kt&8191,Ie=kt>>>13,Ut=x[7]|0,Ue=Ut&8191,Oe=Ut>>>13,It=x[8]|0,We=It&8191,Pe=It>>>13,_t=x[9]|0,Le=_t&8191,Ye=_t>>>13;m.negative=a.negative^c.negative,m.length=19,y=Math.imul(L,He),l=Math.imul(L,Se),l=l+Math.imul(F,He)|0,E=Math.imul(F,Se);var Ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,y=Math.imul(Z,He),l=Math.imul(Z,Se),l=l+Math.imul(ee,He)|0,E=Math.imul(ee,Se),y=y+Math.imul(L,Ve)|0,l=l+Math.imul(L,Ee)|0,l=l+Math.imul(F,Ve)|0,E=E+Math.imul(F,Ee)|0;var xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(xr>>>26)|0,xr&=67108863,y=Math.imul(U,He),l=Math.imul(U,Se),l=l+Math.imul(j,He)|0,E=Math.imul(j,Se),y=y+Math.imul(Z,Ve)|0,l=l+Math.imul(Z,Ee)|0,l=l+Math.imul(ee,Ve)|0,E=E+Math.imul(ee,Ee)|0,y=y+Math.imul(L,Ze)|0,l=l+Math.imul(L,Re)|0,l=l+Math.imul(F,Ze)|0,E=E+Math.imul(F,Re)|0;var Er=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Er>>>26)|0,Er&=67108863,y=Math.imul(re,He),l=Math.imul(re,Se),l=l+Math.imul(oe,He)|0,E=Math.imul(oe,Se),y=y+Math.imul(U,Ve)|0,l=l+Math.imul(U,Ee)|0,l=l+Math.imul(j,Ve)|0,E=E+Math.imul(j,Ee)|0,y=y+Math.imul(Z,Ze)|0,l=l+Math.imul(Z,Re)|0,l=l+Math.imul(ee,Ze)|0,E=E+Math.imul(ee,Re)|0,y=y+Math.imul(L,je)|0,l=l+Math.imul(L,ke)|0,l=l+Math.imul(F,je)|0,E=E+Math.imul(F,ke)|0;var Gt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,y=Math.imul(z,He),l=Math.imul(z,Se),l=l+Math.imul(G,He)|0,E=Math.imul(G,Se),y=y+Math.imul(re,Ve)|0,l=l+Math.imul(re,Ee)|0,l=l+Math.imul(oe,Ve)|0,E=E+Math.imul(oe,Ee)|0,y=y+Math.imul(U,Ze)|0,l=l+Math.imul(U,Re)|0,l=l+Math.imul(j,Ze)|0,E=E+Math.imul(j,Re)|0,y=y+Math.imul(Z,je)|0,l=l+Math.imul(Z,ke)|0,l=l+Math.imul(ee,je)|0,E=E+Math.imul(ee,ke)|0,y=y+Math.imul(L,Ke)|0,l=l+Math.imul(L,Ne)|0,l=l+Math.imul(F,Ke)|0,E=E+Math.imul(F,Ne)|0;var Vt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,y=Math.imul(ne,He),l=Math.imul(ne,Se),l=l+Math.imul(ae,He)|0,E=Math.imul(ae,Se),y=y+Math.imul(z,Ve)|0,l=l+Math.imul(z,Ee)|0,l=l+Math.imul(G,Ve)|0,E=E+Math.imul(G,Ee)|0,y=y+Math.imul(re,Ze)|0,l=l+Math.imul(re,Re)|0,l=l+Math.imul(oe,Ze)|0,E=E+Math.imul(oe,Re)|0,y=y+Math.imul(U,je)|0,l=l+Math.imul(U,ke)|0,l=l+Math.imul(j,je)|0,E=E+Math.imul(j,ke)|0,y=y+Math.imul(Z,Ke)|0,l=l+Math.imul(Z,Ne)|0,l=l+Math.imul(ee,Ke)|0,E=E+Math.imul(ee,Ne)|0,y=y+Math.imul(L,De)|0,l=l+Math.imul(L,Be)|0,l=l+Math.imul(F,De)|0,E=E+Math.imul(F,Be)|0;var Lr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,y=Math.imul(ge,He),l=Math.imul(ge,Se),l=l+Math.imul(pe,He)|0,E=Math.imul(pe,Se),y=y+Math.imul(ne,Ve)|0,l=l+Math.imul(ne,Ee)|0,l=l+Math.imul(ae,Ve)|0,E=E+Math.imul(ae,Ee)|0,y=y+Math.imul(z,Ze)|0,l=l+Math.imul(z,Re)|0,l=l+Math.imul(G,Ze)|0,E=E+Math.imul(G,Re)|0,y=y+Math.imul(re,je)|0,l=l+Math.imul(re,ke)|0,l=l+Math.imul(oe,je)|0,E=E+Math.imul(oe,ke)|0,y=y+Math.imul(U,Ke)|0,l=l+Math.imul(U,Ne)|0,l=l+Math.imul(j,Ke)|0,E=E+Math.imul(j,Ne)|0,y=y+Math.imul(Z,De)|0,l=l+Math.imul(Z,Be)|0,l=l+Math.imul(ee,De)|0,E=E+Math.imul(ee,Be)|0,y=y+Math.imul(L,Ge)|0,l=l+Math.imul(L,Ie)|0,l=l+Math.imul(F,Ge)|0,E=E+Math.imul(F,Ie)|0;var Zr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,y=Math.imul(we,He),l=Math.imul(we,Se),l=l+Math.imul(me,He)|0,E=Math.imul(me,Se),y=y+Math.imul(ge,Ve)|0,l=l+Math.imul(ge,Ee)|0,l=l+Math.imul(pe,Ve)|0,E=E+Math.imul(pe,Ee)|0,y=y+Math.imul(ne,Ze)|0,l=l+Math.imul(ne,Re)|0,l=l+Math.imul(ae,Ze)|0,E=E+Math.imul(ae,Re)|0,y=y+Math.imul(z,je)|0,l=l+Math.imul(z,ke)|0,l=l+Math.imul(G,je)|0,E=E+Math.imul(G,ke)|0,y=y+Math.imul(re,Ke)|0,l=l+Math.imul(re,Ne)|0,l=l+Math.imul(oe,Ke)|0,E=E+Math.imul(oe,Ne)|0,y=y+Math.imul(U,De)|0,l=l+Math.imul(U,Be)|0,l=l+Math.imul(j,De)|0,E=E+Math.imul(j,Be)|0,y=y+Math.imul(Z,Ge)|0,l=l+Math.imul(Z,Ie)|0,l=l+Math.imul(ee,Ge)|0,E=E+Math.imul(ee,Ie)|0,y=y+Math.imul(L,Ue)|0,l=l+Math.imul(L,Oe)|0,l=l+Math.imul(F,Ue)|0,E=E+Math.imul(F,Oe)|0;var Ir=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,y=Math.imul(ze,He),l=Math.imul(ze,Se),l=l+Math.imul(_e,He)|0,E=Math.imul(_e,Se),y=y+Math.imul(we,Ve)|0,l=l+Math.imul(we,Ee)|0,l=l+Math.imul(me,Ve)|0,E=E+Math.imul(me,Ee)|0,y=y+Math.imul(ge,Ze)|0,l=l+Math.imul(ge,Re)|0,l=l+Math.imul(pe,Ze)|0,E=E+Math.imul(pe,Re)|0,y=y+Math.imul(ne,je)|0,l=l+Math.imul(ne,ke)|0,l=l+Math.imul(ae,je)|0,E=E+Math.imul(ae,ke)|0,y=y+Math.imul(z,Ke)|0,l=l+Math.imul(z,Ne)|0,l=l+Math.imul(G,Ke)|0,E=E+Math.imul(G,Ne)|0,y=y+Math.imul(re,De)|0,l=l+Math.imul(re,Be)|0,l=l+Math.imul(oe,De)|0,E=E+Math.imul(oe,Be)|0,y=y+Math.imul(U,Ge)|0,l=l+Math.imul(U,Ie)|0,l=l+Math.imul(j,Ge)|0,E=E+Math.imul(j,Ie)|0,y=y+Math.imul(Z,Ue)|0,l=l+Math.imul(Z,Oe)|0,l=l+Math.imul(ee,Ue)|0,E=E+Math.imul(ee,Oe)|0,y=y+Math.imul(L,We)|0,l=l+Math.imul(L,Pe)|0,l=l+Math.imul(F,We)|0,E=E+Math.imul(F,Pe)|0;var Dr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Dr>>>26)|0,Dr&=67108863,y=Math.imul(qe,He),l=Math.imul(qe,Se),l=l+Math.imul(Te,He)|0,E=Math.imul(Te,Se),y=y+Math.imul(ze,Ve)|0,l=l+Math.imul(ze,Ee)|0,l=l+Math.imul(_e,Ve)|0,E=E+Math.imul(_e,Ee)|0,y=y+Math.imul(we,Ze)|0,l=l+Math.imul(we,Re)|0,l=l+Math.imul(me,Ze)|0,E=E+Math.imul(me,Re)|0,y=y+Math.imul(ge,je)|0,l=l+Math.imul(ge,ke)|0,l=l+Math.imul(pe,je)|0,E=E+Math.imul(pe,ke)|0,y=y+Math.imul(ne,Ke)|0,l=l+Math.imul(ne,Ne)|0,l=l+Math.imul(ae,Ke)|0,E=E+Math.imul(ae,Ne)|0,y=y+Math.imul(z,De)|0,l=l+Math.imul(z,Be)|0,l=l+Math.imul(G,De)|0,E=E+Math.imul(G,Be)|0,y=y+Math.imul(re,Ge)|0,l=l+Math.imul(re,Ie)|0,l=l+Math.imul(oe,Ge)|0,E=E+Math.imul(oe,Ie)|0,y=y+Math.imul(U,Ue)|0,l=l+Math.imul(U,Oe)|0,l=l+Math.imul(j,Ue)|0,E=E+Math.imul(j,Oe)|0,y=y+Math.imul(Z,We)|0,l=l+Math.imul(Z,Pe)|0,l=l+Math.imul(ee,We)|0,E=E+Math.imul(ee,Pe)|0,y=y+Math.imul(L,Le)|0,l=l+Math.imul(L,Ye)|0,l=l+Math.imul(F,Le)|0,E=E+Math.imul(F,Ye)|0;var ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(ar>>>26)|0,ar&=67108863,y=Math.imul(qe,Ve),l=Math.imul(qe,Ee),l=l+Math.imul(Te,Ve)|0,E=Math.imul(Te,Ee),y=y+Math.imul(ze,Ze)|0,l=l+Math.imul(ze,Re)|0,l=l+Math.imul(_e,Ze)|0,E=E+Math.imul(_e,Re)|0,y=y+Math.imul(we,je)|0,l=l+Math.imul(we,ke)|0,l=l+Math.imul(me,je)|0,E=E+Math.imul(me,ke)|0,y=y+Math.imul(ge,Ke)|0,l=l+Math.imul(ge,Ne)|0,l=l+Math.imul(pe,Ke)|0,E=E+Math.imul(pe,Ne)|0,y=y+Math.imul(ne,De)|0,l=l+Math.imul(ne,Be)|0,l=l+Math.imul(ae,De)|0,E=E+Math.imul(ae,Be)|0,y=y+Math.imul(z,Ge)|0,l=l+Math.imul(z,Ie)|0,l=l+Math.imul(G,Ge)|0,E=E+Math.imul(G,Ie)|0,y=y+Math.imul(re,Ue)|0,l=l+Math.imul(re,Oe)|0,l=l+Math.imul(oe,Ue)|0,E=E+Math.imul(oe,Oe)|0,y=y+Math.imul(U,We)|0,l=l+Math.imul(U,Pe)|0,l=l+Math.imul(j,We)|0,E=E+Math.imul(j,Pe)|0,y=y+Math.imul(Z,Le)|0,l=l+Math.imul(Z,Ye)|0,l=l+Math.imul(ee,Le)|0,E=E+Math.imul(ee,Ye)|0;var mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(mr>>>26)|0,mr&=67108863,y=Math.imul(qe,Ze),l=Math.imul(qe,Re),l=l+Math.imul(Te,Ze)|0,E=Math.imul(Te,Re),y=y+Math.imul(ze,je)|0,l=l+Math.imul(ze,ke)|0,l=l+Math.imul(_e,je)|0,E=E+Math.imul(_e,ke)|0,y=y+Math.imul(we,Ke)|0,l=l+Math.imul(we,Ne)|0,l=l+Math.imul(me,Ke)|0,E=E+Math.imul(me,Ne)|0,y=y+Math.imul(ge,De)|0,l=l+Math.imul(ge,Be)|0,l=l+Math.imul(pe,De)|0,E=E+Math.imul(pe,Be)|0,y=y+Math.imul(ne,Ge)|0,l=l+Math.imul(ne,Ie)|0,l=l+Math.imul(ae,Ge)|0,E=E+Math.imul(ae,Ie)|0,y=y+Math.imul(z,Ue)|0,l=l+Math.imul(z,Oe)|0,l=l+Math.imul(G,Ue)|0,E=E+Math.imul(G,Oe)|0,y=y+Math.imul(re,We)|0,l=l+Math.imul(re,Pe)|0,l=l+Math.imul(oe,We)|0,E=E+Math.imul(oe,Pe)|0,y=y+Math.imul(U,Le)|0,l=l+Math.imul(U,Ye)|0,l=l+Math.imul(j,Le)|0,E=E+Math.imul(j,Ye)|0;var jr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(jr>>>26)|0,jr&=67108863,y=Math.imul(qe,je),l=Math.imul(qe,ke),l=l+Math.imul(Te,je)|0,E=Math.imul(Te,ke),y=y+Math.imul(ze,Ke)|0,l=l+Math.imul(ze,Ne)|0,l=l+Math.imul(_e,Ke)|0,E=E+Math.imul(_e,Ne)|0,y=y+Math.imul(we,De)|0,l=l+Math.imul(we,Be)|0,l=l+Math.imul(me,De)|0,E=E+Math.imul(me,Be)|0,y=y+Math.imul(ge,Ge)|0,l=l+Math.imul(ge,Ie)|0,l=l+Math.imul(pe,Ge)|0,E=E+Math.imul(pe,Ie)|0,y=y+Math.imul(ne,Ue)|0,l=l+Math.imul(ne,Oe)|0,l=l+Math.imul(ae,Ue)|0,E=E+Math.imul(ae,Oe)|0,y=y+Math.imul(z,We)|0,l=l+Math.imul(z,Pe)|0,l=l+Math.imul(G,We)|0,E=E+Math.imul(G,Pe)|0,y=y+Math.imul(re,Le)|0,l=l+Math.imul(re,Ye)|0,l=l+Math.imul(oe,Le)|0,E=E+Math.imul(oe,Ye)|0;var Yr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,y=Math.imul(qe,Ke),l=Math.imul(qe,Ne),l=l+Math.imul(Te,Ke)|0,E=Math.imul(Te,Ne),y=y+Math.imul(ze,De)|0,l=l+Math.imul(ze,Be)|0,l=l+Math.imul(_e,De)|0,E=E+Math.imul(_e,Be)|0,y=y+Math.imul(we,Ge)|0,l=l+Math.imul(we,Ie)|0,l=l+Math.imul(me,Ge)|0,E=E+Math.imul(me,Ie)|0,y=y+Math.imul(ge,Ue)|0,l=l+Math.imul(ge,Oe)|0,l=l+Math.imul(pe,Ue)|0,E=E+Math.imul(pe,Oe)|0,y=y+Math.imul(ne,We)|0,l=l+Math.imul(ne,Pe)|0,l=l+Math.imul(ae,We)|0,E=E+Math.imul(ae,Pe)|0,y=y+Math.imul(z,Le)|0,l=l+Math.imul(z,Ye)|0,l=l+Math.imul(G,Le)|0,E=E+Math.imul(G,Ye)|0;var or=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(or>>>26)|0,or&=67108863,y=Math.imul(qe,De),l=Math.imul(qe,Be),l=l+Math.imul(Te,De)|0,E=Math.imul(Te,Be),y=y+Math.imul(ze,Ge)|0,l=l+Math.imul(ze,Ie)|0,l=l+Math.imul(_e,Ge)|0,E=E+Math.imul(_e,Ie)|0,y=y+Math.imul(we,Ue)|0,l=l+Math.imul(we,Oe)|0,l=l+Math.imul(me,Ue)|0,E=E+Math.imul(me,Oe)|0,y=y+Math.imul(ge,We)|0,l=l+Math.imul(ge,Pe)|0,l=l+Math.imul(pe,We)|0,E=E+Math.imul(pe,Pe)|0,y=y+Math.imul(ne,Le)|0,l=l+Math.imul(ne,Ye)|0,l=l+Math.imul(ae,Le)|0,E=E+Math.imul(ae,Ye)|0;var Qr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,y=Math.imul(qe,Ge),l=Math.imul(qe,Ie),l=l+Math.imul(Te,Ge)|0,E=Math.imul(Te,Ie),y=y+Math.imul(ze,Ue)|0,l=l+Math.imul(ze,Oe)|0,l=l+Math.imul(_e,Ue)|0,E=E+Math.imul(_e,Oe)|0,y=y+Math.imul(we,We)|0,l=l+Math.imul(we,Pe)|0,l=l+Math.imul(me,We)|0,E=E+Math.imul(me,Pe)|0,y=y+Math.imul(ge,Le)|0,l=l+Math.imul(ge,Ye)|0,l=l+Math.imul(pe,Le)|0,E=E+Math.imul(pe,Ye)|0;var Mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,y=Math.imul(qe,Ue),l=Math.imul(qe,Oe),l=l+Math.imul(Te,Ue)|0,E=Math.imul(Te,Oe),y=y+Math.imul(ze,We)|0,l=l+Math.imul(ze,Pe)|0,l=l+Math.imul(_e,We)|0,E=E+Math.imul(_e,Pe)|0,y=y+Math.imul(we,Le)|0,l=l+Math.imul(we,Ye)|0,l=l+Math.imul(me,Le)|0,E=E+Math.imul(me,Ye)|0;var Xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,y=Math.imul(qe,We),l=Math.imul(qe,Pe),l=l+Math.imul(Te,We)|0,E=Math.imul(Te,Pe),y=y+Math.imul(ze,Le)|0,l=l+Math.imul(ze,Ye)|0,l=l+Math.imul(_e,Le)|0,E=E+Math.imul(_e,Ye)|0;var on=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(on>>>26)|0,on&=67108863,y=Math.imul(qe,Le),l=Math.imul(qe,Ye),l=l+Math.imul(Te,Le)|0,E=Math.imul(Te,Ye);var Cr=(S+y|0)+((l&8191)<<13)|0;return S=(E+(l>>>13)|0)+(Cr>>>26)|0,Cr&=67108863,_[0]=Ar,_[1]=xr,_[2]=Er,_[3]=Gt,_[4]=Vt,_[5]=Lr,_[6]=Zr,_[7]=Ir,_[8]=Dr,_[9]=ar,_[10]=mr,_[11]=jr,_[12]=Yr,_[13]=or,_[14]=Qr,_[15]=Mr,_[16]=Xr,_[17]=on,_[18]=Cr,S!==0&&(_[19]=S,m.length++),m};Math.imul||(C=N);function B(g,a,c){c.negative=a.negative^g.negative,c.length=g.length+a.length;for(var m=0,b=0,x=0;x>>26)|0,b+=_>>>26,_&=67108863}c.words[x]=S,m=_,_=b}return m!==0?c.words[x]=m:c.length--,c._strip()}function O(g,a,c){return B(g,a,c)}i.prototype.mulTo=function(a,c){var m,b=this.length+a.length;return this.length===10&&a.length===10?m=C(this,a,c):b<63?m=N(this,a,c):b<1024?m=B(this,a,c):m=O(this,a,c),m},i.prototype.mul=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),this.mulTo(a,c)},i.prototype.mulf=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),O(this,a,c)},i.prototype.imul=function(a){return this.clone().mulTo(a,this)},i.prototype.imuln=function(a){var c=a<0;c&&(a=-a),n(typeof a=="number"),n(a<67108864);for(var m=0,b=0;b>=26,m+=x/67108864|0,m+=_>>>26,this.words[b]=_&67108863}return m!==0&&(this.words[b]=m,this.length++),c?this.ineg():this},i.prototype.muln=function(a){return this.clone().imuln(a)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(a){var c=R(a);if(c.length===0)return new i(1);for(var m=this,b=0;b=0);var c=a%26,m=(a-c)/26,b=67108863>>>26-c<<26-c,x;if(c!==0){var _=0;for(x=0;x>>26-c}_&&(this.words[x]=_,this.length++)}if(m!==0){for(x=this.length-1;x>=0;x--)this.words[x+m]=this.words[x];for(x=0;x=0);var b;c?b=(c-c%26)/26:b=0;var x=a%26,_=Math.min((a-x)/26,this.length),S=67108863^67108863>>>x<_)for(this.length-=_,l=0;l=0&&(E!==0||l>=b);l--){var Y=this.words[l]|0;this.words[l]=E<<26-x|Y>>>x,E=Y&S}return y&&E!==0&&(y.words[y.length++]=E),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},i.prototype.ishrn=function(a,c,m){return n(this.negative===0),this.iushrn(a,c,m)},i.prototype.shln=function(a){return this.clone().ishln(a)},i.prototype.ushln=function(a){return this.clone().iushln(a)},i.prototype.shrn=function(a){return this.clone().ishrn(a)},i.prototype.ushrn=function(a){return this.clone().iushrn(a)},i.prototype.testn=function(a){n(typeof a=="number"&&a>=0);var c=a%26,m=(a-c)/26,b=1<=0);var c=a%26,m=(a-c)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=m)return this;if(c!==0&&m++,this.length=Math.min(m,this.length),c!==0){var b=67108863^67108863>>>c<=67108864;c++)this.words[c]-=67108864,c===this.length-1?this.words[c+1]=1:this.words[c+1]++;return this.length=Math.max(this.length,c+1),this},i.prototype.isubn=function(a){if(n(typeof a=="number"),n(a<67108864),a<0)return this.iaddn(-a);if(this.negative!==0)return this.negative=0,this.iaddn(a),this.negative=1,this;if(this.words[0]-=a,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var c=0;c>26)-(y/67108864|0),this.words[x+m]=_&67108863}for(;x>26,this.words[x+m]=_&67108863;if(S===0)return this._strip();for(n(S===-1),S=0,x=0;x>26,this.words[x]=_&67108863;return this.negative=1,this._strip()},i.prototype._wordDiv=function(a,c){var m=this.length-a.length,b=this.clone(),x=a,_=x.words[x.length-1]|0,S=this._countBits(_);m=26-S,m!==0&&(x=x.ushln(m),b.iushln(m),_=x.words[x.length-1]|0);var y=b.length-x.length,l;if(c!=="mod"){l=new i(null),l.length=y+1,l.words=new Array(l.length);for(var E=0;E=0;L--){var F=(b.words[x.length+L]|0)*67108864+(b.words[x.length+L-1]|0);for(F=Math.min(F/_|0,67108863),b._ishlnsubmul(x,F,L);b.negative!==0;)F--,b.negative=0,b._ishlnsubmul(x,1,L),b.isZero()||(b.negative^=1);l&&(l.words[L]=F)}return l&&l._strip(),b._strip(),c!=="div"&&m!==0&&b.iushrn(m),{div:l||null,mod:b}},i.prototype.divmod=function(a,c,m){if(n(!a.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var b,x,_;return this.negative!==0&&a.negative===0?(_=this.neg().divmod(a,c),c!=="mod"&&(b=_.div.neg()),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.iadd(a)),{div:b,mod:x}):this.negative===0&&a.negative!==0?(_=this.divmod(a.neg(),c),c!=="mod"&&(b=_.div.neg()),{div:b,mod:_.mod}):this.negative&a.negative?(_=this.neg().divmod(a.neg(),c),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.isub(a)),{div:_.div,mod:x}):a.length>this.length||this.cmp(a)<0?{div:new i(0),mod:this}:a.length===1?c==="div"?{div:this.divn(a.words[0]),mod:null}:c==="mod"?{div:null,mod:new i(this.modrn(a.words[0]))}:{div:this.divn(a.words[0]),mod:new i(this.modrn(a.words[0]))}:this._wordDiv(a,c)},i.prototype.div=function(a){return this.divmod(a,"div",!1).div},i.prototype.mod=function(a){return this.divmod(a,"mod",!1).mod},i.prototype.umod=function(a){return this.divmod(a,"mod",!0).mod},i.prototype.divRound=function(a){var c=this.divmod(a);if(c.mod.isZero())return c.div;var m=c.div.negative!==0?c.mod.isub(a):c.mod,b=a.ushrn(1),x=a.andln(1),_=m.cmp(b);return _<0||x===1&&_===0?c.div:c.div.negative!==0?c.div.isubn(1):c.div.iaddn(1)},i.prototype.modrn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=(1<<26)%a,b=0,x=this.length-1;x>=0;x--)b=(m*b+(this.words[x]|0))%a;return c?-b:b},i.prototype.modn=function(a){return this.modrn(a)},i.prototype.idivn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=0,b=this.length-1;b>=0;b--){var x=(this.words[b]|0)+m*67108864;this.words[b]=x/a|0,m=x%a}return this._strip(),c?this.ineg():this},i.prototype.divn=function(a){return this.clone().idivn(a)},i.prototype.egcd=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=new i(0),S=new i(1),y=0;c.isEven()&&m.isEven();)c.iushrn(1),m.iushrn(1),++y;for(var l=m.clone(),E=c.clone();!c.isZero();){for(var Y=0,L=1;!(c.words[0]&L)&&Y<26;++Y,L<<=1);if(Y>0)for(c.iushrn(Y);Y-- >0;)(b.isOdd()||x.isOdd())&&(b.iadd(l),x.isub(E)),b.iushrn(1),x.iushrn(1);for(var F=0,V=1;!(m.words[0]&V)&&F<26;++F,V<<=1);if(F>0)for(m.iushrn(F);F-- >0;)(_.isOdd()||S.isOdd())&&(_.iadd(l),S.isub(E)),_.iushrn(1),S.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(_),x.isub(S)):(m.isub(c),_.isub(b),S.isub(x))}return{a:_,b:S,gcd:m.iushln(y)}},i.prototype._invmp=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=m.clone();c.cmpn(1)>0&&m.cmpn(1)>0;){for(var S=0,y=1;!(c.words[0]&y)&&S<26;++S,y<<=1);if(S>0)for(c.iushrn(S);S-- >0;)b.isOdd()&&b.iadd(_),b.iushrn(1);for(var l=0,E=1;!(m.words[0]&E)&&l<26;++l,E<<=1);if(l>0)for(m.iushrn(l);l-- >0;)x.isOdd()&&x.iadd(_),x.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(x)):(m.isub(c),x.isub(b))}var Y;return c.cmpn(1)===0?Y=b:Y=x,Y.cmpn(0)<0&&Y.iadd(a),Y},i.prototype.gcd=function(a){if(this.isZero())return a.abs();if(a.isZero())return this.abs();var c=this.clone(),m=a.clone();c.negative=0,m.negative=0;for(var b=0;c.isEven()&&m.isEven();b++)c.iushrn(1),m.iushrn(1);do{for(;c.isEven();)c.iushrn(1);for(;m.isEven();)m.iushrn(1);var x=c.cmp(m);if(x<0){var _=c;c=m,m=_}else if(x===0||m.cmpn(1)===0)break;c.isub(m)}while(!0);return m.iushln(b)},i.prototype.invm=function(a){return this.egcd(a).a.umod(a)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(a){return this.words[0]&a},i.prototype.bincn=function(a){n(typeof a=="number");var c=a%26,m=(a-c)/26,b=1<>>26,S&=67108863,this.words[_]=S}return x!==0&&(this.words[_]=x,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(a){var c=a<0;if(this.negative!==0&&!c)return-1;if(this.negative===0&&c)return 1;this._strip();var m;if(this.length>1)m=1;else{c&&(a=-a),n(a<=67108863,"Number is too big");var b=this.words[0]|0;m=b===a?0:ba.length)return 1;if(this.length=0;m--){var b=this.words[m]|0,x=a.words[m]|0;if(b!==x){bx&&(c=1);break}}return c},i.prototype.gtn=function(a){return this.cmpn(a)===1},i.prototype.gt=function(a){return this.cmp(a)===1},i.prototype.gten=function(a){return this.cmpn(a)>=0},i.prototype.gte=function(a){return this.cmp(a)>=0},i.prototype.ltn=function(a){return this.cmpn(a)===-1},i.prototype.lt=function(a){return this.cmp(a)===-1},i.prototype.lten=function(a){return this.cmpn(a)<=0},i.prototype.lte=function(a){return this.cmp(a)<=0},i.prototype.eqn=function(a){return this.cmpn(a)===0},i.prototype.eq=function(a){return this.cmp(a)===0},i.red=function(a){return new P(a)},i.prototype.toRed=function(a){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),a.convertTo(this)._forceRed(a)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(a){return this.red=a,this},i.prototype.forceRed=function(a){return n(!this.red,"Already a number in reduction context"),this._forceRed(a)},i.prototype.redAdd=function(a){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,a)},i.prototype.redIAdd=function(a){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,a)},i.prototype.redSub=function(a){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,a)},i.prototype.redISub=function(a){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,a)},i.prototype.redShl=function(a){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,a)},i.prototype.redMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.mul(this,a)},i.prototype.redIMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.imul(this,a)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(a){return n(this.red&&!a.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,a)};var D={k256:null,p224:null,p192:null,p25519:null};function q(g,a){this.name=g,this.p=new i(a,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}q.prototype._tmp=function(){var a=new i(null);return a.words=new Array(Math.ceil(this.n/13)),a},q.prototype.ireduce=function(a){var c=a,m;do this.split(c,this.tmp),c=this.imulK(c),c=c.iadd(this.tmp),m=c.bitLength();while(m>this.n);var b=m0?c.isub(this.p):c.strip!==void 0?c.strip():c._strip(),c},q.prototype.split=function(a,c){a.iushrn(this.n,0,c)},q.prototype.imulK=function(a){return a.imul(this.k)};function W(){q.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(W,q),W.prototype.split=function(a,c){for(var m=4194303,b=Math.min(a.length,9),x=0;x>>22,_=S}_>>>=22,a.words[x-10]=_,_===0&&a.length>10?a.length-=10:a.length-=9},W.prototype.imulK=function(a){a.words[a.length]=0,a.words[a.length+1]=0,a.length+=2;for(var c=0,m=0;m>>=26,a.words[m]=x,c=b}return c!==0&&(a.words[a.length++]=c),a},i._prime=function(a){if(D[a])return D[a];var c;if(a==="k256")c=new W;else if(a==="p224")c=new k;else if(a==="p192")c=new I;else if(a==="p25519")c=new H;else throw new Error("Unknown prime "+a);return D[a]=c,c};function P(g){if(typeof g=="string"){var a=i._prime(g);this.m=a.p,this.prime=a}else n(g.gtn(1),"modulus must be greater than 1"),this.m=g,this.prime=null}P.prototype._verify1=function(a){n(a.negative===0,"red works only with positives"),n(a.red,"red works only with red numbers")},P.prototype._verify2=function(a,c){n((a.negative|c.negative)===0,"red works only with positives"),n(a.red&&a.red===c.red,"red works only with red numbers")},P.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):(p(a,a.umod(this.m)._forceRed(this)),a)},P.prototype.neg=function(a){return a.isZero()?a.clone():this.m.sub(a)._forceRed(this)},P.prototype.add=function(a,c){this._verify2(a,c);var m=a.add(c);return m.cmp(this.m)>=0&&m.isub(this.m),m._forceRed(this)},P.prototype.iadd=function(a,c){this._verify2(a,c);var m=a.iadd(c);return m.cmp(this.m)>=0&&m.isub(this.m),m},P.prototype.sub=function(a,c){this._verify2(a,c);var m=a.sub(c);return m.cmpn(0)<0&&m.iadd(this.m),m._forceRed(this)},P.prototype.isub=function(a,c){this._verify2(a,c);var m=a.isub(c);return m.cmpn(0)<0&&m.iadd(this.m),m},P.prototype.shl=function(a,c){return this._verify1(a),this.imod(a.ushln(c))},P.prototype.imul=function(a,c){return this._verify2(a,c),this.imod(a.imul(c))},P.prototype.mul=function(a,c){return this._verify2(a,c),this.imod(a.mul(c))},P.prototype.isqr=function(a){return this.imul(a,a.clone())},P.prototype.sqr=function(a){return this.mul(a,a)},P.prototype.sqrt=function(a){if(a.isZero())return a.clone();var c=this.m.andln(3);if(n(c%2===1),c===3){var m=this.m.add(new i(1)).iushrn(2);return this.pow(a,m)}for(var b=this.m.subn(1),x=0;!b.isZero()&&b.andln(1)===0;)x++,b.iushrn(1);n(!b.isZero());var _=new i(1).toRed(this),S=_.redNeg(),y=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);this.pow(l,y).cmp(S)!==0;)l.redIAdd(S);for(var E=this.pow(l,b),Y=this.pow(a,b.addn(1).iushrn(1)),L=this.pow(a,b),F=x;L.cmp(_)!==0;){for(var V=L,Z=0;V.cmp(_)!==0;Z++)V=V.redSqr();n(Z=0;x--){for(var E=c.words[x],Y=l-1;Y>=0;Y--){var L=E>>Y&1;if(_!==b[0]&&(_=this.sqr(_)),L===0&&S===0){y=0;continue}S<<=1,S|=L,y++,!(y!==m&&(x!==0||Y!==0))&&(_=this.mul(_,b[S]),y=0,S=0)}l=26}return _},P.prototype.convertTo=function(a){var c=a.umod(this.m);return c===a?c.clone():c},P.prototype.convertFrom=function(a){var c=a.clone();return c.red=null,c},i.mont=function(a){return new T(a)};function T(g){P.call(this,g),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(T,P),T.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))},T.prototype.convertFrom=function(a){var c=this.imod(a.mul(this.rinv));return c.red=null,c},T.prototype.imul=function(a,c){if(a.isZero()||c.isZero())return a.words[0]=0,a.length=1,a;var m=a.imul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.mul=function(a,c){if(a.isZero()||c.isZero())return new i(0)._forceRed(this);var m=a.mul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.invm=function(a){var c=this.imod(a._invmp(this.m).mul(this.r2));return c._forceRed(this)}})(t,ue)})(ML);const qt=Mw,SL="logger/5.7.0";let U4=!1,H4=!1;const Dm={debug:1,default:2,info:2,warning:3,error:4,off:5};let j4=Dm.default,wb=null;function _L(){try{const t=[];if(["NFD","NFC","NFKD","NFKC"].forEach(e=>{try{if("test".normalize(e)!=="test")throw new Error("bad normalize")}catch{t.push(e)}}),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}const z4=_L();var Sw;(function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"})(Sw||(Sw={}));var Ba;(function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",t.TRANSACTION_REPLACED="TRANSACTION_REPLACED",t.ACTION_REJECTED="ACTION_REJECTED"})(Ba||(Ba={}));const K4="0123456789abcdef";let at=class Yn{constructor(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}_log(e,r){const n=e.toLowerCase();Dm[n]==null&&this.throwArgumentError("invalid log level name","logLevel",e),!(j4>Dm[n])&&console.log.apply(console,r)}debug(...e){this._log(Yn.levels.DEBUG,e)}info(...e){this._log(Yn.levels.INFO,e)}warn(...e){this._log(Yn.levels.WARNING,e)}makeError(e,r,n){if(H4)return this.makeError("censored error",r,{});r||(r=Yn.errors.UNKNOWN_ERROR),n||(n={});const s=[];Object.keys(n).forEach(u=>{const h=n[u];try{if(h instanceof Uint8Array){let p="";for(let d=0;d>4],p+=K4[h[d]&15];s.push(u+"=Uint8Array(0x"+p+")")}else s.push(u+"="+JSON.stringify(h))}catch{s.push(u+"="+JSON.stringify(n[u].toString()))}}),s.push(`code=${r}`),s.push(`version=${this.version}`);const i=e;let o="";switch(r){case Ba.NUMERIC_FAULT:{o="NUMERIC_FAULT";const u=e;switch(u){case"overflow":case"underflow":case"division-by-zero":o+="-"+u;break;case"negative-power":case"negative-width":o+="-unsupported";break;case"unbound-bitwise-result":o+="-unbound-result";break}break}case Ba.CALL_EXCEPTION:case Ba.INSUFFICIENT_FUNDS:case Ba.MISSING_NEW:case Ba.NONCE_EXPIRED:case Ba.REPLACEMENT_UNDERPRICED:case Ba.TRANSACTION_REPLACED:case Ba.UNPREDICTABLE_GAS_LIMIT:o=r;break}o&&(e+=" [ See: https://links.ethers.org/v5-errors-"+o+" ]"),s.length&&(e+=" ("+s.join(", ")+")");const f=new Error(e);return f.reason=i,f.code=r,Object.keys(n).forEach(function(u){f[u]=n[u]}),f}throwError(e,r,n){throw this.makeError(e,r,n)}throwArgumentError(e,r,n){return this.throwError(e,Yn.errors.INVALID_ARGUMENT,{argument:r,value:n})}assert(e,r,n,s){e||this.throwError(r,n,s)}assertArgument(e,r,n,s){e||this.throwArgumentError(r,n,s)}checkNormalize(e){z4&&this.throwError("platform missing String.prototype.normalize",Yn.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:z4})}checkSafeUint53(e,r){typeof e=="number"&&(r==null&&(r="value not safe"),(e<0||e>=9007199254740991)&&this.throwError(r,Yn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(r,Yn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}checkArgumentCount(e,r,n){n?n=": "+n:n="",er&&this.throwError("too many arguments"+n,Yn.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:r})}checkNew(e,r){(e===Object||e==null)&&this.throwError("missing new",Yn.errors.MISSING_NEW,{name:r.name})}checkAbstract(e,r){e===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",Yn.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):(e===Object||e==null)&&this.throwError("missing new",Yn.errors.MISSING_NEW,{name:r.name})}static globalLogger(){return wb||(wb=new Yn(SL)),wb}static setCensorship(e,r){if(!e&&r&&this.globalLogger().throwError("cannot permanently disable censorship",Yn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),U4){if(!e)return;this.globalLogger().throwError("error censorship permanent",Yn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}H4=!!e,U4=!!r}static setLogLevel(e){const r=Dm[e.toLowerCase()];if(r==null){Yn.globalLogger().warn("invalid log level - "+e);return}j4=r}static from(e){return new Yn(e)}};at.errors=Ba;at.levels=Sw;const RL="bytes/5.7.0",Nn=new at(RL);function Y7(t){return!!t.toHexString}function oh(t){return t.slice||(t.slice=function(){const e=Array.prototype.slice.call(arguments);return oh(new Uint8Array(Array.prototype.slice.apply(t,e)))}),t}function r3(t){return sn(t)&&!(t.length%2)||Hv(t)}function q4(t){return typeof t=="number"&&t==t&&t%1===0}function Hv(t){if(t==null)return!1;if(t.constructor===Uint8Array)return!0;if(typeof t=="string"||!q4(t.length)||t.length<0)return!1;for(let e=0;e=256)return!1}return!0}function nr(t,e){if(e||(e={}),typeof t=="number"){Nn.checkSafeUint53(t,"invalid arrayify value");const r=[];for(;t;)r.unshift(t&255),t=parseInt(String(t/256));return r.length===0&&r.push(0),oh(new Uint8Array(r))}if(e.allowMissingPrefix&&typeof t=="string"&&t.substring(0,2)!=="0x"&&(t="0x"+t),Y7(t)&&(t=t.toHexString()),sn(t)){let r=t.substring(2);r.length%2&&(e.hexPad==="left"?r="0"+r:e.hexPad==="right"?r+="0":Nn.throwArgumentError("hex data is odd-length","value",t));const n=[];for(let s=0;snr(s)),r=e.reduce((s,i)=>s+i.length,0),n=new Uint8Array(r);return e.reduce((s,i)=>(n.set(i,s),s+i.length),0),oh(n)}function dd(t){let e=nr(t);if(e.length===0)return e;let r=0;for(;re&&Nn.throwArgumentError("value out of range","value",arguments[0]);const r=new Uint8Array(e);return r.set(t,e-t.length),oh(r)}function sn(t,e){return!(typeof t!="string"||!t.match(/^0x[0-9A-Fa-f]*$/)||e&&t.length!==2+2*e)}const Ab="0123456789abcdef";function Qt(t,e){if(e||(e={}),typeof t=="number"){Nn.checkSafeUint53(t,"invalid hexlify value");let r="";for(;t;)r=Ab[t&15]+r,t=Math.floor(t/16);return r.length?(r.length%2&&(r="0"+r),"0x"+r):"0x00"}if(typeof t=="bigint")return t=t.toString(16),t.length%2?"0x0"+t:"0x"+t;if(e.allowMissingPrefix&&typeof t=="string"&&t.substring(0,2)!=="0x"&&(t="0x"+t),Y7(t))return t.toHexString();if(sn(t))return t.length%2&&(e.hexPad==="left"?t="0x0"+t.substring(2):e.hexPad==="right"?t+="0":Nn.throwArgumentError("hex data is odd-length","value",t)),t.toLowerCase();if(Hv(t)){let r="0x";for(let n=0;n>4]+Ab[s&15]}return r}return Nn.throwArgumentError("invalid hexlify value","value",t)}function Id(t){if(typeof t!="string")t=Qt(t);else if(!sn(t)||t.length%2)return null;return(t.length-2)/2}function El(t,e,r){return typeof t!="string"?t=Qt(t):(!sn(t)||t.length%2)&&Nn.throwArgumentError("invalid hexData","value",t),e=2+2*e,r!=null?"0x"+t.substring(e,2+2*r):"0x"+t.substring(e)}function So(t){let e="0x";return t.forEach(r=>{e+=Qt(r).substring(2)}),e}function n3(t){const e=CL(Qt(t,{hexPad:"left"}));return e==="0x"?"0x0":e}function CL(t){typeof t!="string"&&(t=Qt(t)),sn(t)||Nn.throwArgumentError("invalid hex string","value",t),t=t.substring(2);let e=0;for(;e2*e+2&&Nn.throwArgumentError("value out of range","value",arguments[1]);t.length<2*e+2;)t="0x0"+t.substring(2);return t}function jv(t){const e={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0,yParityAndS:"0x",compact:"0x"};if(r3(t)){let r=nr(t);r.length===64?(e.v=27+(r[32]>>7),r[32]&=127,e.r=Qt(r.slice(0,32)),e.s=Qt(r.slice(32,64))):r.length===65?(e.r=Qt(r.slice(0,32)),e.s=Qt(r.slice(32,64)),e.v=r[64]):Nn.throwArgumentError("invalid signature string","signature",t),e.v<27&&(e.v===0||e.v===1?e.v+=27:Nn.throwArgumentError("signature invalid v byte","signature",t)),e.recoveryParam=1-e.v%2,e.recoveryParam&&(r[32]|=128),e._vs=Qt(r.slice(32,64))}else{if(e.r=t.r,e.s=t.s,e.v=t.v,e.recoveryParam=t.recoveryParam,e._vs=t._vs,e._vs!=null){const s=NL(nr(e._vs),32);e._vs=Qt(s);const i=s[0]>=128?1:0;e.recoveryParam==null?e.recoveryParam=i:e.recoveryParam!==i&&Nn.throwArgumentError("signature recoveryParam mismatch _vs","signature",t),s[0]&=127;const o=Qt(s);e.s==null?e.s=o:e.s!==o&&Nn.throwArgumentError("signature v mismatch _vs","signature",t)}if(e.recoveryParam==null)e.v==null?Nn.throwArgumentError("signature missing v and recoveryParam","signature",t):e.v===0||e.v===1?e.recoveryParam=e.v:e.recoveryParam=1-e.v%2;else if(e.v==null)e.v=27+e.recoveryParam;else{const s=e.v===0||e.v===1?e.v:1-e.v%2;e.recoveryParam!==s&&Nn.throwArgumentError("signature recoveryParam mismatch v","signature",t)}e.r==null||!sn(e.r)?Nn.throwArgumentError("signature missing or invalid r","signature",t):e.r=Jn(e.r,32),e.s==null||!sn(e.s)?Nn.throwArgumentError("signature missing or invalid s","signature",t):e.s=Jn(e.s,32);const r=nr(e.s);r[0]>=128&&Nn.throwArgumentError("signature s out of range","signature",t),e.recoveryParam&&(r[0]|=128);const n=Qt(r);e._vs&&(sn(e._vs)||Nn.throwArgumentError("signature invalid _vs","signature",t),e._vs=Jn(e._vs,32)),e._vs==null?e._vs=n:e._vs!==n&&Nn.throwArgumentError("signature _vs mismatch v and s","signature",t)}return e.yParityAndS=e._vs,e.compact=e.r+e.yParityAndS.substring(2),e}const TL="bignumber/5.7.0";var Mg=qt.BN;const Zo=new at(TL),xb={},G4=9007199254740991;let V4=!1;class Mt{constructor(e,r){e!==xb&&Zo.throwError("cannot call constructor directly; use BigNumber.from",at.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=r,this._isBigNumber=!0,Object.freeze(this)}fromTwos(e){return ts(hr(this).fromTwos(e))}toTwos(e){return ts(hr(this).toTwos(e))}abs(){return this._hex[0]==="-"?Mt.from(this._hex.substring(1)):this}add(e){return ts(hr(this).add(hr(e)))}sub(e){return ts(hr(this).sub(hr(e)))}div(e){return Mt.from(e).isZero()&&Ds("division-by-zero","div"),ts(hr(this).div(hr(e)))}mul(e){return ts(hr(this).mul(hr(e)))}mod(e){const r=hr(e);return r.isNeg()&&Ds("division-by-zero","mod"),ts(hr(this).umod(r))}pow(e){const r=hr(e);return r.isNeg()&&Ds("negative-power","pow"),ts(hr(this).pow(r))}and(e){const r=hr(e);return(this.isNegative()||r.isNeg())&&Ds("unbound-bitwise-result","and"),ts(hr(this).and(r))}or(e){const r=hr(e);return(this.isNegative()||r.isNeg())&&Ds("unbound-bitwise-result","or"),ts(hr(this).or(r))}xor(e){const r=hr(e);return(this.isNegative()||r.isNeg())&&Ds("unbound-bitwise-result","xor"),ts(hr(this).xor(r))}mask(e){return(this.isNegative()||e<0)&&Ds("negative-width","mask"),ts(hr(this).maskn(e))}shl(e){return(this.isNegative()||e<0)&&Ds("negative-width","shl"),ts(hr(this).shln(e))}shr(e){return(this.isNegative()||e<0)&&Ds("negative-width","shr"),ts(hr(this).shrn(e))}eq(e){return hr(this).eq(hr(e))}lt(e){return hr(this).lt(hr(e))}lte(e){return hr(this).lte(hr(e))}gt(e){return hr(this).gt(hr(e))}gte(e){return hr(this).gte(hr(e))}isNegative(){return this._hex[0]==="-"}isZero(){return hr(this).isZero()}toNumber(){try{return hr(this).toNumber()}catch{Ds("overflow","toNumber",this.toString())}return null}toBigInt(){try{return BigInt(this.toString())}catch{}return Zo.throwError("this platform does not support BigInt",at.errors.UNSUPPORTED_OPERATION,{value:this.toString()})}toString(){return arguments.length>0&&(arguments[0]===10?V4||(V4=!0,Zo.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):arguments[0]===16?Zo.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",at.errors.UNEXPECTED_ARGUMENT,{}):Zo.throwError("BigNumber.toString does not accept parameters",at.errors.UNEXPECTED_ARGUMENT,{})),hr(this).toString(10)}toHexString(){return this._hex}toJSON(e){return{type:"BigNumber",hex:this.toHexString()}}static from(e){if(e instanceof Mt)return e;if(typeof e=="string")return e.match(/^-?0x[0-9a-f]+$/i)?new Mt(xb,up(e)):e.match(/^-?[0-9]+$/)?new Mt(xb,up(new Mg(e))):Zo.throwArgumentError("invalid BigNumber string","value",e);if(typeof e=="number")return e%1&&Ds("underflow","BigNumber.from",e),(e>=G4||e<=-G4)&&Ds("overflow","BigNumber.from",e),Mt.from(String(e));const r=e;if(typeof r=="bigint")return Mt.from(r.toString());if(Hv(r))return Mt.from(Qt(r));if(r)if(r.toHexString){const n=r.toHexString();if(typeof n=="string")return Mt.from(n)}else{let n=r._hex;if(n==null&&r.type==="BigNumber"&&(n=r.hex),typeof n=="string"&&(sn(n)||n[0]==="-"&&sn(n.substring(1))))return Mt.from(n)}return Zo.throwArgumentError("invalid BigNumber value","value",e)}static isBigNumber(e){return!!(e&&e._isBigNumber)}}function up(t){if(typeof t!="string")return up(t.toString(16));if(t[0]==="-")return t=t.substring(1),t[0]==="-"&&Zo.throwArgumentError("invalid hex","value",t),t=up(t),t==="0x00"?t:"-"+t;if(t.substring(0,2)!=="0x"&&(t="0x"+t),t==="0x")return"0x00";for(t.length%2&&(t="0x0"+t.substring(2));t.length>4&&t.substring(0,4)==="0x00";)t="0x"+t.substring(4);return t}function ts(t){return Mt.from(up(t))}function hr(t){const e=Mt.from(t).toHexString();return e[0]==="-"?new Mg("-"+e.substring(3),16):new Mg(e.substring(2),16)}function Ds(t,e,r){const n={fault:t,operation:e};return r!=null&&(n.value=r),Zo.throwError(t,at.errors.NUMERIC_FAULT,n)}function kL(t){return new Mg(t,36).toString(16)}const BL="properties/5.7.0";var IL=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const Sg=new at(BL);function Nr(t,e,r){Object.defineProperty(t,e,{enumerable:!0,value:r,writable:!1})}function C0(t,e){for(let r=0;r<32;r++){if(t[e])return t[e];if(!t.prototype||typeof t.prototype!="object")break;t=Object.getPrototypeOf(t.prototype).constructor}return null}function vi(t){return IL(this,void 0,void 0,function*(){const e=Object.keys(t).map(n=>{const s=t[n];return Promise.resolve(s).then(i=>({key:n,value:i}))});return(yield Promise.all(e)).reduce((n,s)=>(n[s.key]=s.value,n),{})})}function PL(t,e){(!t||typeof t!="object")&&Sg.throwArgumentError("invalid object","object",t),Object.keys(t).forEach(r=>{e[r]||Sg.throwArgumentError("invalid object key - "+r,"transaction:"+r,t)})}function ds(t){const e={};for(const r in t)e[r]=t[r];return e}const OL={bigint:!0,boolean:!0,function:!0,number:!0,string:!0};function Q7(t){if(t==null||OL[typeof t])return!0;if(Array.isArray(t)||typeof t=="object"){if(!Object.isFrozen(t))return!1;const e=Object.keys(t);for(let r=0;rhp(e)));if(typeof t=="object"){const e={};for(const r in t){const n=t[r];n!==void 0&&Nr(e,r,hp(n))}return e}return Sg.throwArgumentError(`Cannot deepCopy ${typeof t}`,"object",t)}function hp(t){return LL(t)}class DL{constructor(e){for(const r in e)this[r]=hp(e[r])}}const FL="abstract-provider/5.7.0";var UL=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const HL=new at(FL);class jL extends DL{static isForkEvent(e){return!!(e&&e._isForkEvent)}}class _g{constructor(){HL.checkAbstract(new.target,_g),Nr(this,"_isProvider",!0)}getFeeData(){return UL(this,void 0,void 0,function*(){const{block:e,gasPrice:r}=yield vi({block:this.getBlock("latest"),gasPrice:this.getGasPrice().catch(o=>null)});let n=null,s=null,i=null;return e&&e.baseFeePerGas&&(n=e.baseFeePerGas,i=Mt.from("1500000000"),s=e.baseFeePerGas.mul(2).add(i)),{lastBaseFeePerGas:n,maxFeePerGas:s,maxPriorityFeePerGas:i,gasPrice:r}})}addListener(e,r){return this.on(e,r)}removeListener(e,r){return this.off(e,r)}static isProvider(e){return!!(e&&e._isProvider)}}const zL="networks/5.7.1",W4=new at(zL);function KL(t){return t&&typeof t.renetwork=="function"}function Jo(t){const e=function(r,n){n==null&&(n={});const s=[];if(r.InfuraProvider&&n.infura!=="-")try{s.push(new r.InfuraProvider(t,n.infura))}catch{}if(r.EtherscanProvider&&n.etherscan!=="-")try{s.push(new r.EtherscanProvider(t,n.etherscan))}catch{}if(r.AlchemyProvider&&n.alchemy!=="-")try{s.push(new r.AlchemyProvider(t,n.alchemy))}catch{}if(r.PocketProvider&&n.pocket!=="-"){const i=["goerli","ropsten","rinkeby","sepolia"];try{const o=new r.PocketProvider(t,n.pocket);o.network&&i.indexOf(o.network.name)===-1&&s.push(o)}catch{}}if(r.CloudflareProvider&&n.cloudflare!=="-")try{s.push(new r.CloudflareProvider(t))}catch{}if(r.AnkrProvider&&n.ankr!=="-")try{const i=["ropsten"],o=new r.AnkrProvider(t,n.ankr);o.network&&i.indexOf(o.network.name)===-1&&s.push(o)}catch{}if(s.length===0)return null;if(r.FallbackProvider){let i=1;return n.quorum!=null?i=n.quorum:t==="homestead"&&(i=2),new r.FallbackProvider(s,i)}return s[0]};return e.renetwork=function(r){return Jo(r)},e}function Rg(t,e){const r=function(n,s){return n.JsonRpcProvider?new n.JsonRpcProvider(t,e):null};return r.renetwork=function(n){return Rg(t,n)},r}const Z4={chainId:1,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"homestead",_defaultProvider:Jo("homestead")},Y4={chainId:3,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"ropsten",_defaultProvider:Jo("ropsten")},Q4={chainId:63,name:"classicMordor",_defaultProvider:Rg("https://www.ethercluster.com/mordor","classicMordor")},Q1={unspecified:{chainId:0,name:"unspecified"},homestead:Z4,mainnet:Z4,morden:{chainId:2,name:"morden"},ropsten:Y4,testnet:Y4,rinkeby:{chainId:4,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"rinkeby",_defaultProvider:Jo("rinkeby")},kovan:{chainId:42,name:"kovan",_defaultProvider:Jo("kovan")},goerli:{chainId:5,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"goerli",_defaultProvider:Jo("goerli")},kintsugi:{chainId:1337702,name:"kintsugi"},sepolia:{chainId:11155111,name:"sepolia",_defaultProvider:Jo("sepolia")},classic:{chainId:61,name:"classic",_defaultProvider:Rg("https://www.ethercluster.com/etc","classic")},classicMorden:{chainId:62,name:"classicMorden"},classicMordor:Q4,classicTestnet:Q4,classicKotti:{chainId:6,name:"classicKotti",_defaultProvider:Rg("https://www.ethercluster.com/kotti","classicKotti")},xdai:{chainId:100,name:"xdai"},matic:{chainId:137,name:"matic",_defaultProvider:Jo("matic")},maticmum:{chainId:80001,name:"maticmum"},optimism:{chainId:10,name:"optimism",_defaultProvider:Jo("optimism")},"optimism-kovan":{chainId:69,name:"optimism-kovan"},"optimism-goerli":{chainId:420,name:"optimism-goerli"},arbitrum:{chainId:42161,name:"arbitrum"},"arbitrum-rinkeby":{chainId:421611,name:"arbitrum-rinkeby"},"arbitrum-goerli":{chainId:421613,name:"arbitrum-goerli"},bnb:{chainId:56,name:"bnb"},bnbt:{chainId:97,name:"bnbt"}};function qL(t){if(t==null)return null;if(typeof t=="number"){for(const n in Q1){const s=Q1[n];if(s.chainId===t)return{name:s.name,chainId:s.chainId,ensAddress:s.ensAddress||null,_defaultProvider:s._defaultProvider||null}}return{chainId:t,name:"unknown"}}if(typeof t=="string"){const n=Q1[t];return n==null?null:{name:n.name,chainId:n.chainId,ensAddress:n.ensAddress,_defaultProvider:n._defaultProvider||null}}const e=Q1[t.name];if(!e)return typeof t.chainId!="number"&&W4.throwArgumentError("invalid network chainId","network",t),t;t.chainId!==0&&t.chainId!==e.chainId&&W4.throwArgumentError("network chainId mismatch","network",t);let r=t._defaultProvider||null;return r==null&&e._defaultProvider&&(KL(e._defaultProvider)?r=e._defaultProvider.renetwork(t):r=e._defaultProvider),{name:t.name,chainId:e.chainId,ensAddress:t.ensAddress||e.ensAddress||null,_defaultProvider:r}}class X7{constructor(e){Nr(this,"alphabet",e),Nr(this,"base",e.length),Nr(this,"_alphabetMap",{}),Nr(this,"_leader",e.charAt(0));for(let r=0;r0;)n.push(o%this.base),o=o/this.base|0}let s="";for(let i=0;r[i]===0&&i=0;--i)s+=this.alphabet[n[i]];return s}decode(e){if(typeof e!="string")throw new TypeError("Expected String");let r=[];if(e.length===0)return new Uint8Array(r);r.push(0);for(let n=0;n>=8;for(;i>0;)r.push(i&255),i>>=8}for(let n=0;e[n]===this._leader&&n>6===2;o++)i++;return i}return t===Es.OVERRUN?r.length-e-1:0}function QL(t,e,r,n,s){return t===Es.OVERLONG?(n.push(s),0):(n.push(65533),eM(t,e,r))}const XL=Object.freeze({error:YL,ignore:eM,replace:QL});function tM(t,e){e==null&&(e=XL.error),t=nr(t);const r=[];let n=0;for(;n>7)){r.push(s);continue}let i=null,o=null;if((s&224)===192)i=1,o=127;else if((s&240)===224)i=2,o=2047;else if((s&248)===240)i=3,o=65535;else{(s&192)===128?n+=e(Es.UNEXPECTED_CONTINUE,n-1,t,r):n+=e(Es.BAD_PREFIX,n-1,t,r);continue}if(n-1+i>=t.length){n+=e(Es.OVERRUN,n-1,t,r);continue}let f=s&(1<<8-i-1)-1;for(let u=0;u1114111){n+=e(Es.OUT_OF_RANGE,n-1-i,t,r,f);continue}if(f>=55296&&f<=57343){n+=e(Es.UTF16_SURROGATE,n-1-i,t,r,f);continue}if(f<=o){n+=e(Es.OVERLONG,n-1-i,t,r,f);continue}r.push(f)}}return r}function Nf(t,e=dp.current){e!=dp.current&&($7.checkNormalize(),t=t.normalize(e));let r=[];for(let n=0;n>6|192),r.push(s&63|128);else if((s&64512)==55296){n++;const i=t.charCodeAt(n);if(n>=t.length||(i&64512)!==56320)throw new Error("invalid utf-8 string");const o=65536+((s&1023)<<10)+(i&1023);r.push(o>>18|240),r.push(o>>12&63|128),r.push(o>>6&63|128),r.push(o&63|128)}else r.push(s>>12|224),r.push(s>>6&63|128),r.push(s&63|128)}return nr(r)}function JL(t){return t.map(e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10&1023)+55296,(e&1023)+56320))).join("")}function l1(t,e){return JL(tM(t,e))}function $L(t,e=dp.current){return tM(Nf(t,e))}function rM(t){return Ai(Nf(t))}const nM="hash/5.7.0";function iM(t){t=atob(t);const e=[];for(let r=0;r0&&Array.isArray(f)?s(f,o-1):r.push(f)})};return s(t,e),r}function tD(t){const e={};for(let r=0;r>--u&1}const d=31,v=Math.pow(2,d),w=v>>>1,A=w>>1,M=v-1;let R=0;for(let D=0;D1;){let H=q+W>>>1;D>>1|p(),k=k<<1^w,I=(I^w)<<1|w|1;C=k,B=1+I-k}let O=n-4;return N.map(D=>{switch(D-O){case 3:return O+65792+(t[f++]<<16|t[f++]<<8|t[f++]);case 2:return O+256+(t[f++]<<8|t[f++]);case 1:return O+t[f++];default:return D-1}})}function nD(t){let e=0;return()=>t[e++]}function iD(t){return nD(rD(t))}function sD(t){return t&1?~t>>1:t>>1}function aD(t,e){let r=Array(t);for(let n=0;ne[o]):r}function fD(t){let e=[];for(;;){let r=t();if(r==0)break;e.push(cD(r,t))}for(;;){let r=t()-1;if(r<0)break;e.push(uD(r,t))}return tD(sM(e))}function lD(t){let e=[];for(;;){let r=t();if(r==0)break;e.push(r)}return e}function aM(t,e,r){let n=Array(t).fill(void 0).map(()=>[]);for(let s=0;sn[o].push(i));return n}function cD(t,e){let r=1+e(),n=e(),s=lD(e),i=aM(s.length,1+t,e);return sM(i.map((o,f)=>{const u=o[0],h=o.slice(1);return Array(s[f]).fill(void 0).map((p,d)=>{let v=d*n;return[u+d*r,h.map(w=>w+v)]})}))}function uD(t,e){let r=1+e();return aM(r,1+t,e).map(s=>[s[0],s.slice(1)])}function hD(t){let e=Ng(t).sort((n,s)=>n-s);return r();function r(){let n=[];for(;;){let h=Ng(t,e);if(h.length==0)break;n.push({set:new Set(h),node:r()})}n.sort((h,p)=>p.set.size-h.set.size);let s=t(),i=s%3;s=s/3|0;let o=!!(s&1);s>>=1;let f=s==1,u=s==2;return{branches:n,valid:i,fe0f:o,save:f,check:u}}}function dD(){return iD(iM("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"))}const zv=dD(),pD=new Set(Ng(zv)),mD=new Set(Ng(zv)),gD=fD(zv),vD=hD(zv),J4=45,$4=95;function oM(t){return $L(t)}function yD(t){return t.filter(e=>e!=65039)}function fM(t){for(let e of t.split(".")){let r=oM(e);try{for(let n=r.lastIndexOf($4)-1;n>=0;n--)if(r[n]!==$4)throw new Error("underscore only allowed at start");if(r.length>=4&&r.every(n=>n<128)&&r[2]===J4&&r[3]===J4)throw new Error("invalid label extension")}catch(n){throw new Error(`Invalid label "${e}": ${n.message}`)}}return t}function bD(t){return fM(wD(t,yD))}function wD(t,e){let r=oM(t).reverse(),n=[];for(;r.length;){let s=xD(r);if(s){n.push(...e(s));continue}let i=r.pop();if(pD.has(i)){n.push(i);continue}if(mD.has(i))continue;let o=gD[i];if(o){n.push(...o);continue}throw new Error(`Disallowed codepoint: 0x${i.toString(16).toUpperCase()}`)}return fM(AD(String.fromCodePoint(...n)))}function AD(t){return t.normalize("NFC")}function xD(t,e){var r;let n=vD,s,i,o=[],f=t.length;for(e&&(e.length=0);f;){let u=t[--f];if(n=(r=n.branches.find(h=>h.set.has(u)))===null||r===void 0?void 0:r.node,!n)break;if(n.save)i=u;else if(n.check&&u===i)break;o.push(u),n.fe0f&&(o.push(65039),f>0&&t[f-1]==65039&&f--),n.valid&&(s=o.slice(),n.valid==2&&s.splice(1,1),e&&e.push(...t.slice(f).reverse()),t.length=f)}return s}const ED=new at(nM),lM=new Uint8Array(32);lM.fill(0);function e5(t){if(t.length===0)throw new Error("invalid ENS name; empty component");return t}function MD(t){const e=Nf(bD(t)),r=[];if(t.length===0)return r;let n=0;for(let s=0;s=e.length)throw new Error("invalid ENS name; empty component");return r.push(e5(e.slice(n))),r}function Cg(t){typeof t!="string"&&ED.throwArgumentError("invalid ENS name; not a string","name",t);let e=lM;const r=MD(t);for(;r.length;)e=Ai(Ku([e,Ai(r.pop())]));return Qt(e)}const SD="rlp/5.7.0",lo=new at(SD);function t5(t){const e=[];for(;t;)e.unshift(t&255),t>>=8;return e}function r5(t,e,r){let n=0;for(let s=0;se+1+n&&lo.throwError("child data too short",at.errors.BUFFER_OVERRUN,{})}return{consumed:1+n,result:s}}function uM(t,e){if(t.length===0&&lo.throwError("data too short",at.errors.BUFFER_OVERRUN,{}),t[e]>=248){const r=t[e]-247;e+1+r>t.length&&lo.throwError("data short segment too short",at.errors.BUFFER_OVERRUN,{});const n=r5(t,e+1,r);return e+1+r+n>t.length&&lo.throwError("data long segment too short",at.errors.BUFFER_OVERRUN,{}),n5(t,e,e+1+r,r+n)}else if(t[e]>=192){const r=t[e]-192;return e+1+r>t.length&&lo.throwError("data array too short",at.errors.BUFFER_OVERRUN,{}),n5(t,e,e+1,r)}else if(t[e]>=184){const r=t[e]-183;e+1+r>t.length&&lo.throwError("data array too short",at.errors.BUFFER_OVERRUN,{});const n=r5(t,e+1,r);e+1+r+n>t.length&&lo.throwError("data array too short",at.errors.BUFFER_OVERRUN,{});const s=Qt(t.slice(e+1+r,e+1+r+n));return{consumed:1+r+n,result:s}}else if(t[e]>=128){const r=t[e]-128;e+1+r>t.length&&lo.throwError("data too short",at.errors.BUFFER_OVERRUN,{});const n=Qt(t.slice(e+1,e+1+r));return{consumed:1+r,result:n}}return{consumed:1,result:Qt(t[e])}}function i3(t){const e=nr(t),r=uM(e,0);return r.consumed!==e.length&&lo.throwArgumentError("invalid rlp data","data",t),r.result}const _D="address/5.7.0",qu=new at(_D);function i5(t){sn(t,20)||qu.throwArgumentError("invalid address","address",t),t=t.toLowerCase();const e=t.substring(2).split(""),r=new Uint8Array(40);for(let s=0;s<40;s++)r[s]=e[s].charCodeAt(0);const n=nr(Ai(r));for(let s=0;s<40;s+=2)n[s>>1]>>4>=8&&(e[s]=e[s].toUpperCase()),(n[s>>1]&15)>=8&&(e[s+1]=e[s+1].toUpperCase());return"0x"+e.join("")}const RD=9007199254740991;function ND(t){return Math.log10?Math.log10(t):Math.log(t)/Math.LN10}const s3={};for(let t=0;t<10;t++)s3[String(t)]=String(t);for(let t=0;t<26;t++)s3[String.fromCharCode(65+t)]=String(10+t);const s5=Math.floor(ND(RD));function CD(t){t=t.toUpperCase(),t=t.substring(4)+t.substring(0,2)+"00";let e=t.split("").map(n=>s3[n]).join("");for(;e.length>=s5;){let n=e.substring(0,s5);e=parseInt(n,10)%97+e.substring(n.length)}let r=String(98-parseInt(e,10)%97);for(;r.length<2;)r="0"+r;return r}function qa(t){let e=null;if(typeof t!="string"&&qu.throwArgumentError("invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/))t.substring(0,2)!=="0x"&&(t="0x"+t),e=i5(t),t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&e!==t&&qu.throwArgumentError("bad address checksum","address",t);else if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(t.substring(2,4)!==CD(t)&&qu.throwArgumentError("bad icap checksum","address",t),e=kL(t.substring(4));e.length<40;)e="0"+e;e=i5("0x"+e)}else qu.throwArgumentError("invalid address","address",t);return e}function TD(t){let e=null;try{e=qa(t.from)}catch{qu.throwArgumentError("missing from address","transaction",t)}const r=dd(nr(Mt.from(t.nonce).toHexString()));return qa(El(Ai(Kv([e,r])),12))}var kD=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const An=new at(nM),hM=new Uint8Array(32);hM.fill(0);const BD=Mt.from(-1),dM=Mt.from(0),pM=Mt.from(1),ID=Mt.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function PD(t){const e=nr(t),r=e.length%32;return r?So([e,hM.slice(r)]):Qt(e)}const OD=Jn(pM.toHexString(),32),LD=Jn(dM.toHexString(),32),a5={name:"string",version:"string",chainId:"uint256",verifyingContract:"address",salt:"bytes32"},Eb=["name","version","chainId","verifyingContract","salt"];function o5(t){return function(e){return typeof e!="string"&&An.throwArgumentError(`invalid domain value for ${JSON.stringify(t)}`,`domain.${t}`,e),e}}const DD={name:o5("name"),version:o5("version"),chainId:function(t){try{return Mt.from(t).toString()}catch{}return An.throwArgumentError('invalid domain value for "chainId"',"domain.chainId",t)},verifyingContract:function(t){try{return qa(t).toLowerCase()}catch{}return An.throwArgumentError('invalid domain value "verifyingContract"',"domain.verifyingContract",t)},salt:function(t){try{const e=nr(t);if(e.length!==32)throw new Error("bad length");return Qt(e)}catch{}return An.throwArgumentError('invalid domain value "salt"',"domain.salt",t)}};function Mb(t){{const e=t.match(/^(u?)int(\d*)$/);if(e){const r=e[1]==="",n=parseInt(e[2]||"256");(n%8!==0||n>256||e[2]&&e[2]!==String(n))&&An.throwArgumentError("invalid numeric width","type",t);const s=ID.mask(r?n-1:n),i=r?s.add(pM).mul(BD):dM;return function(o){const f=Mt.from(o);return(f.lt(i)||f.gt(s))&&An.throwArgumentError(`value out-of-bounds for ${t}`,"value",o),Jn(f.toTwos(256).toHexString(),32)}}}{const e=t.match(/^bytes(\d+)$/);if(e){const r=parseInt(e[1]);return(r===0||r>32||e[1]!==String(r))&&An.throwArgumentError("invalid bytes width","type",t),function(n){return nr(n).length!==r&&An.throwArgumentError(`invalid length for ${t}`,"value",n),PD(n)}}}switch(t){case"address":return function(e){return Jn(qa(e),32)};case"bool":return function(e){return e?OD:LD};case"bytes":return function(e){return Ai(e)};case"string":return function(e){return rM(e)}}return null}function f5(t,e){return`${t}(${e.map(({name:r,type:n})=>n+" "+r).join(",")})`}let l5=class Ra{constructor(e){Nr(this,"types",Object.freeze(hp(e))),Nr(this,"_encoderCache",{}),Nr(this,"_types",{});const r={},n={},s={};Object.keys(e).forEach(f=>{r[f]={},n[f]=[],s[f]={}});for(const f in e){const u={};e[f].forEach(h=>{u[h.name]&&An.throwArgumentError(`duplicate variable name ${JSON.stringify(h.name)} in ${JSON.stringify(f)}`,"types",e),u[h.name]=!0;const p=h.type.match(/^([^\x5b]*)(\x5b|$)/)[1];p===f&&An.throwArgumentError(`circular type reference to ${JSON.stringify(p)}`,"types",e),!Mb(p)&&(n[p]||An.throwArgumentError(`unknown type ${JSON.stringify(p)}`,"types",e),n[p].push(f),r[f][p]=!0)})}const i=Object.keys(n).filter(f=>n[f].length===0);i.length===0?An.throwArgumentError("missing primary type","types",e):i.length>1&&An.throwArgumentError(`ambiguous primary types or unused types: ${i.map(f=>JSON.stringify(f)).join(", ")}`,"types",e),Nr(this,"primaryType",i[0]);function o(f,u){u[f]&&An.throwArgumentError(`circular type reference to ${JSON.stringify(f)}`,"types",e),u[f]=!0,Object.keys(r[f]).forEach(h=>{n[h]&&(o(h,u),Object.keys(u).forEach(p=>{s[p][h]=!0}))}),delete u[f]}o(this.primaryType,{});for(const f in s){const u=Object.keys(s[f]);u.sort(),this._types[f]=f5(f,e[f])+u.map(h=>f5(h,e[h])).join("")}}getEncoder(e){let r=this._encoderCache[e];return r||(r=this._encoderCache[e]=this._getEncoder(e)),r}_getEncoder(e){{const s=Mb(e);if(s)return s}const r=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(r){const s=r[1],i=this.getEncoder(s),o=parseInt(r[3]);return f=>{o>=0&&f.length!==o&&An.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",f);let u=f.map(i);return this._types[s]&&(u=u.map(Ai)),Ai(So(u))}}const n=this.types[e];if(n){const s=rM(this._types[e]);return i=>{const o=n.map(({name:f,type:u})=>{const h=this.getEncoder(u)(i[f]);return this._types[u]?Ai(h):h});return o.unshift(s),So(o)}}return An.throwArgumentError(`unknown type: ${e}`,"type",e)}encodeType(e){const r=this._types[e];return r||An.throwArgumentError(`unknown type: ${JSON.stringify(e)}`,"name",e),r}encodeData(e,r){return this.getEncoder(e)(r)}hashStruct(e,r){return Ai(this.encodeData(e,r))}encode(e){return this.encodeData(this.primaryType,e)}hash(e){return this.hashStruct(this.primaryType,e)}_visit(e,r,n){if(Mb(e))return n(e,r);const s=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(s){const o=s[1],f=parseInt(s[3]);return f>=0&&r.length!==f&&An.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",r),r.map(u=>this._visit(o,u,n))}const i=this.types[e];return i?i.reduce((o,{name:f,type:u})=>(o[f]=this._visit(u,r[f],n),o),{}):An.throwArgumentError(`unknown type: ${e}`,"type",e)}visit(e,r){return this._visit(this.primaryType,e,r)}static from(e){return new Ra(e)}static getPrimaryType(e){return Ra.from(e).primaryType}static hashStruct(e,r,n){return Ra.from(r).hashStruct(e,n)}static hashDomain(e){const r=[];for(const n in e){const s=a5[n];s||An.throwArgumentError(`invalid typed-data domain key: ${JSON.stringify(n)}`,"domain",e),r.push({name:n,type:s})}return r.sort((n,s)=>Eb.indexOf(n.name)-Eb.indexOf(s.name)),Ra.hashStruct("EIP712Domain",{EIP712Domain:r},e)}static encode(e,r,n){return So(["0x1901",Ra.hashDomain(e),Ra.from(r).hash(n)])}static hash(e,r,n){return Ai(Ra.encode(e,r,n))}static resolveNames(e,r,n,s){return kD(this,void 0,void 0,function*(){e=ds(e);const i={};e.verifyingContract&&!sn(e.verifyingContract,20)&&(i[e.verifyingContract]="0x");const o=Ra.from(r);o.visit(n,(f,u)=>(f==="address"&&!sn(u,20)&&(i[u]="0x"),u));for(const f in i)i[f]=yield s(f);return e.verifyingContract&&i[e.verifyingContract]&&(e.verifyingContract=i[e.verifyingContract]),n=o.visit(n,(f,u)=>f==="address"&&i[u]?i[u]:u),{domain:e,value:n}})}static getPayload(e,r,n){Ra.hashDomain(e);const s={},i=[];Eb.forEach(u=>{const h=e[u];h!=null&&(s[u]=DD[u](h),i.push({name:u,type:a5[u]}))});const o=Ra.from(r),f=ds(r);return f.EIP712Domain?An.throwArgumentError("types must not contain EIP712Domain type","types.EIP712Domain",r):f.EIP712Domain=i,o.encode(n),{types:f,domain:s,primaryType:o.primaryType,message:o.visit(n,(u,h)=>{if(u.match(/^bytes(\d*)/))return Qt(nr(h));if(u.match(/^u?int/))return Mt.from(h).toString();switch(u){case"address":return h.toLowerCase();case"bool":return!!h;case"string":return typeof h!="string"&&An.throwArgumentError("invalid string","value",h),h}return An.throwArgumentError("unsupported type","type",u)})}}};function c5(t){return"0x"+fs.sha256().update(nr(t)).digest("hex")}const FD="web/5.7.1";var UD=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};function HD(t,e){return UD(this,void 0,void 0,function*(){e==null&&(e={});const r={method:e.method||"GET",headers:e.headers||{},body:e.body||void 0};if(e.skipFetchSetup!==!0&&(r.mode="cors",r.cache="no-cache",r.credentials="same-origin",r.redirect="follow",r.referrer="client"),e.fetchOptions!=null){const o=e.fetchOptions;o.mode&&(r.mode=o.mode),o.cache&&(r.cache=o.cache),o.credentials&&(r.credentials=o.credentials),o.redirect&&(r.redirect=o.redirect),o.referrer&&(r.referrer=o.referrer)}const n=yield fetch(t,r),s=yield n.arrayBuffer(),i={};return n.headers.forEach?n.headers.forEach((o,f)=>{i[f.toLowerCase()]=o}):n.headers.keys().forEach(o=>{i[o.toLowerCase()]=n.headers.get(o)}),{headers:i,statusCode:n.status,statusMessage:n.statusText,body:nr(new Uint8Array(s))}})}var jD=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const Na=new at(FD);function u5(t){return new Promise(e=>{setTimeout(e,t)})}function qf(t,e){if(t==null)return null;if(typeof t=="string")return t;if(r3(t)){if(e&&(e.split("/")[0]==="text"||e.split(";")[0].trim()==="application/json"))try{return l1(t)}catch{}return Qt(t)}return t}function zD(t){return Nf(t.replace(/%([0-9a-f][0-9a-f])/gi,(e,r)=>String.fromCharCode(parseInt(r,16))))}function KD(t,e,r){const n=typeof t=="object"&&t.throttleLimit!=null?t.throttleLimit:12;Na.assertArgument(n>0&&n%1===0,"invalid connection throttle limit","connection.throttleLimit",n);const s=typeof t=="object"?t.throttleCallback:null,i=typeof t=="object"&&typeof t.throttleSlotInterval=="number"?t.throttleSlotInterval:100;Na.assertArgument(i>0&&i%1===0,"invalid connection throttle slot interval","connection.throttleSlotInterval",i);const o=typeof t=="object"?!!t.errorPassThrough:!1,f={};let u=null;const h={method:"GET"};let p=!1,d=2*60*1e3;if(typeof t=="string")u=t;else if(typeof t=="object"){if((t==null||t.url==null)&&Na.throwArgumentError("missing URL","connection.url",t),u=t.url,typeof t.timeout=="number"&&t.timeout>0&&(d=t.timeout),t.headers)for(const N in t.headers)f[N.toLowerCase()]={key:N,value:String(t.headers[N])},["if-none-match","if-modified-since"].indexOf(N.toLowerCase())>=0&&(p=!0);if(h.allowGzip=!!t.allowGzip,t.user!=null&&t.password!=null){u.substring(0,6)!=="https:"&&t.allowInsecureAuthentication!==!0&&Na.throwError("basic authentication requires a secure https url",at.errors.INVALID_ARGUMENT,{argument:"url",url:u,user:t.user,password:"[REDACTED]"});const N=t.user+":"+t.password;f.authorization={key:"Authorization",value:"Basic "+eD(Nf(N))}}t.skipFetchSetup!=null&&(h.skipFetchSetup=!!t.skipFetchSetup),t.fetchOptions!=null&&(h.fetchOptions=ds(t.fetchOptions))}const v=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i"),w=u?u.match(v):null;if(w)try{const N={statusCode:200,statusMessage:"OK",headers:{"content-type":w[1]||"text/plain"},body:w[2]?iM(w[3]):zD(w[3])};let C=N.body;return r&&(C=r(N.body,N)),Promise.resolve(C)}catch(N){Na.throwError("processing response error",at.errors.SERVER_ERROR,{body:qf(w[1],w[2]),error:N,requestBody:null,requestMethod:"GET",url:u})}e&&(h.method="POST",h.body=e,f["content-type"]==null&&(f["content-type"]={key:"Content-Type",value:"application/octet-stream"}),f["content-length"]==null&&(f["content-length"]={key:"Content-Length",value:String(e.length)}));const A={};Object.keys(f).forEach(N=>{const C=f[N];A[C.key]=C.value}),h.headers=A;const M=function(){let N=null;return{promise:new Promise(function(O,D){d&&(N=setTimeout(()=>{N!=null&&(N=null,D(Na.makeError("timeout",at.errors.TIMEOUT,{requestBody:qf(h.body,A["content-type"]),requestMethod:h.method,timeout:d,url:u})))},d))}),cancel:function(){N!=null&&(clearTimeout(N),N=null)}}}(),R=function(){return jD(this,void 0,void 0,function*(){for(let N=0;N=300)&&(M.cancel(),Na.throwError("bad response",at.errors.SERVER_ERROR,{status:C.statusCode,headers:C.headers,body:qf(B,C.headers?C.headers["content-type"]:null),requestBody:qf(h.body,A["content-type"]),requestMethod:h.method,url:u})),r)try{const O=yield r(B,C);return M.cancel(),O}catch(O){if(O.throttleRetry&&N{let f=null;if(i!=null)try{f=JSON.parse(l1(i))}catch(u){Na.throwError("invalid JSON",at.errors.SERVER_ERROR,{body:i,error:u})}return r&&(f=r(f,o)),f},s=null;if(e!=null){s=Nf(e);const i=typeof t=="string"?{url:t}:ds(t);i.headers?Object.keys(i.headers).filter(f=>f.toLowerCase()==="content-type").length!==0||(i.headers=ds(i.headers),i.headers["content-type"]="application/json"):i.headers={"content-type":"application/json"},t=i}return KD(t,s,n)}function T0(t,e){return e||(e={}),e=ds(e),e.floor==null&&(e.floor=0),e.ceiling==null&&(e.ceiling=1e4),e.interval==null&&(e.interval=250),new Promise(function(r,n){let s=null,i=!1;const o=()=>i?!1:(i=!0,s&&clearTimeout(s),!0);e.timeout&&(s=setTimeout(()=>{o()&&n(new Error("timeout"))},e.timeout));const f=e.retryLimit;let u=0;function h(){return t().then(function(p){if(p!==void 0)o()&&r(p);else if(e.oncePoll)e.oncePoll.once("poll",h);else if(e.onceBlock)e.onceBlock.once("block",h);else if(!i){if(u++,u>f){o()&&n(new Error("retry limit reached"));return}let d=e.interval*parseInt(String(Math.random()*Math.pow(2,u)));de.ceiling&&(d=e.ceiling),setTimeout(h,d)}return null},function(p){o()&&n(p)})}h()})}var Tg="qpzry9x8gf2tvdw0s3jn54khce6mua7l",_w={};for(var X1=0;X1>25;return(t&33554431)<<5^-(e>>0&1)&996825010^-(e>>1&1)&642813549^-(e>>2&1)&513874426^-(e>>3&1)&1027748829^-(e>>4&1)&705979059}function gM(t){for(var e=1,r=0;r126)return"Invalid prefix ("+t+")";e=fh(e)^n>>5}for(e=fh(e),r=0;rr)throw new TypeError("Exceeds length limit");t=t.toLowerCase();var n=gM(t);if(typeof n=="string")throw new Error(n);for(var s=t+"1",i=0;i>5)throw new Error("Non 5-bit word");n=fh(n)^o,s+=Tg.charAt(o)}for(i=0;i<6;++i)n=fh(n);for(n^=1,i=0;i<6;++i){var f=n>>(5-i)*5&31;s+=Tg.charAt(f)}return s}function vM(t,e){if(e=e||90,t.length<8)return t+" too short";if(t.length>e)return"Exceeds length limit";var r=t.toLowerCase(),n=t.toUpperCase();if(t!==r&&t!==n)return"Mixed-case string "+t;t=r;var s=t.lastIndexOf("1");if(s===-1)return"No separator character for "+t;if(s===0)return"Missing prefix for "+t;var i=t.slice(0,s),o=t.slice(s+1);if(o.length<6)return"Data too short";var f=gM(i);if(typeof f=="string")return f;for(var u=[],h=0;h=o.length)&&u.push(d)}return f!==1?"Invalid checksum for "+t:{prefix:i,words:u}}function GD(){var t=vM.apply(null,arguments);if(typeof t=="object")return t}function VD(t){var e=vM.apply(null,arguments);if(typeof e=="object")return e;throw new Error(e)}function qv(t,e,r,n){for(var s=0,i=0,o=(1<=r;)i-=r,f.push(s>>i&o);if(n)i>0&&f.push(s<=e)return"Excess padding";if(s<>8,v=p&255;d?u.push(d,v):u.push(v)}return u}r.toArray=n;function s(o){return o.length===1?"0"+o:o}r.zero2=s;function i(o){for(var f="",u=0;u(v>>1)-1?M=(v>>1)-R:M=R,w.isubn(M)):M=0,d[A]=M,w.iushrn(1)}return d}r.getNAF=n;function s(u,h){var p=[[],[]];u=u.clone(),h=h.clone();for(var d=0,v=0,w;u.cmpn(-d)>0||h.cmpn(-v)>0;){var A=u.andln(3)+d&3,M=h.andln(3)+v&3;A===3&&(A=-1),M===3&&(M=-1);var R;A&1?(w=u.andln(7)+d&7,(w===3||w===5)&&M===2?R=-A:R=A):R=0,p[0].push(R);var N;M&1?(w=h.andln(7)+v&7,(w===3||w===5)&&A===2?N=-M:N=M):N=0,p[1].push(N),2*d===R+1&&(d=1-d),2*v===N+1&&(v=1-v),u.iushrn(1),h.iushrn(1)}return p}r.getJSF=s;function i(u,h,p){var d="_"+h;u.prototype[h]=function(){return this[d]!==void 0?this[d]:this[d]=p.call(this)}}r.cachedProperty=i;function o(u){return typeof u=="string"?r.toArray(u,"hex"):u}r.parseBytes=o;function f(u){return new qt(u,"hex","le")}r.intFromLE=f}),kg=Ts.getNAF,$D=Ts.getJSF,Bg=Ts.assert;function Ll(t,e){this.type=t,this.p=new qt(e.p,16),this.red=e.prime?qt.red(e.prime):qt.mont(this.p),this.zero=new qt(0).toRed(this.red),this.one=new qt(1).toRed(this.red),this.two=new qt(2).toRed(this.red),this.n=e.n&&new qt(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var ru=Ll;Ll.prototype.point=function(){throw new Error("Not implemented")};Ll.prototype.validate=function(){throw new Error("Not implemented")};Ll.prototype._fixedNafMul=function(e,r){Bg(e.precomputed);var n=e._getDoubles(),s=kg(r,1,this._bitLength),i=(1<=f;h--)u=(u<<1)+s[h];o.push(u)}for(var p=this.jpoint(null,null,null),d=this.jpoint(null,null,null),v=i;v>0;v--){for(f=0;f=0;u--){for(var h=0;u>=0&&o[u]===0;u--)h++;if(u>=0&&h++,f=f.dblp(h),u<0)break;var p=o[u];Bg(p!==0),e.type==="affine"?p>0?f=f.mixedAdd(i[p-1>>1]):f=f.mixedAdd(i[-p-1>>1].neg()):p>0?f=f.add(i[p-1>>1]):f=f.add(i[-p-1>>1].neg())}return e.type==="affine"?f.toP():f};Ll.prototype._wnafMulAdd=function(e,r,n,s,i){var o=this._wnafT1,f=this._wnafT2,u=this._wnafT3,h=0,p,d,v;for(p=0;p=1;p-=2){var A=p-1,M=p;if(o[A]!==1||o[M]!==1){u[A]=kg(n[A],o[A],this._bitLength),u[M]=kg(n[M],o[M],this._bitLength),h=Math.max(u[A].length,h),h=Math.max(u[M].length,h);continue}var R=[r[A],null,null,r[M]];r[A].y.cmp(r[M].y)===0?(R[1]=r[A].add(r[M]),R[2]=r[A].toJ().mixedAdd(r[M].neg())):r[A].y.cmp(r[M].y.redNeg())===0?(R[1]=r[A].toJ().mixedAdd(r[M]),R[2]=r[A].add(r[M].neg())):(R[1]=r[A].toJ().mixedAdd(r[M]),R[2]=r[A].toJ().mixedAdd(r[M].neg()));var N=[-3,-1,-5,-7,0,7,5,1,3],C=$D(n[A],n[M]);for(h=Math.max(C[0].length,h),u[A]=new Array(h),u[M]=new Array(h),d=0;d=0;p--){for(var W=0;p>=0;){var k=!0;for(d=0;d=0&&W++,D=D.dblp(W),p<0)break;for(d=0;d0?v=f[d][I-1>>1]:I<0&&(v=f[d][-I-1>>1].neg()),v.type==="affine"?D=D.mixedAdd(v):D=D.add(v))}}for(p=0;p=Math.ceil((e.bitLength()+1)/r.step):!1};la.prototype._getDoubles=function(e,r){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],s=this,i=0;i=0&&(w=h,A=p),d.negative&&(d=d.neg(),v=v.neg()),w.negative&&(w=w.neg(),A=A.neg()),[{a:d,b:v},{a:w,b:A}]};ca.prototype._endoSplit=function(e){var r=this.endo.basis,n=r[0],s=r[1],i=s.b.mul(e).divRound(this.n),o=n.b.neg().mul(e).divRound(this.n),f=i.mul(n.a),u=o.mul(s.a),h=i.mul(n.b),p=o.mul(s.b),d=e.sub(f).sub(u),v=h.add(p).neg();return{k1:d,k2:v}};ca.prototype.pointFromX=function(e,r){e=new qt(e,16),e.red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),s=n.redSqrt();if(s.redSqr().redSub(n).cmp(this.zero)!==0)throw new Error("invalid point");var i=s.fromRed().isOdd();return(r&&!i||!r&&i)&&(s=s.redNeg()),this.point(e,s)};ca.prototype.validate=function(e){if(e.inf)return!0;var r=e.x,n=e.y,s=this.a.redMul(r),i=r.redSqr().redMul(r).redIAdd(s).redIAdd(this.b);return n.redSqr().redISub(i).cmpn(0)===0};ca.prototype._endoWnafMulAdd=function(e,r,n){for(var s=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""};ci.prototype.isInfinity=function(){return this.inf};ci.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(this.x.cmp(e.x)===0)return this.curve.point(null,null);var r=this.y.redSub(e.y);r.cmpn(0)!==0&&(r=r.redMul(this.x.redSub(e.x).redInvm()));var n=r.redSqr().redISub(this.x).redISub(e.x),s=r.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,s)};ci.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(e.cmpn(0)===0)return this.curve.point(null,null);var r=this.curve.a,n=this.x.redSqr(),s=e.redInvm(),i=n.redAdd(n).redIAdd(n).redIAdd(r).redMul(s),o=i.redSqr().redISub(this.x.redAdd(this.x)),f=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,f)};ci.prototype.getX=function(){return this.x.fromRed()};ci.prototype.getY=function(){return this.y.fromRed()};ci.prototype.mul=function(e){return e=new qt(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)};ci.prototype.mulAdd=function(e,r,n){var s=[this,r],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(s,i):this.curve._wnafMulAdd(1,s,i,2)};ci.prototype.jmulAdd=function(e,r,n){var s=[this,r],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(s,i,!0):this.curve._wnafMulAdd(1,s,i,2,!0)};ci.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||this.x.cmp(e.x)===0&&this.y.cmp(e.y)===0)};ci.prototype.neg=function(e){if(this.inf)return this;var r=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,s=function(i){return i.neg()};r.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(s)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(s)}}}return r};ci.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var e=this.curve.jpoint(this.x,this.y,this.curve.one);return e};function Mi(t,e,r,n){ru.BasePoint.call(this,t,"jacobian"),e===null&&r===null&&n===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new qt(0)):(this.x=new qt(e,16),this.y=new qt(r,16),this.z=new qt(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o3(Mi,ru.BasePoint);ca.prototype.jpoint=function(e,r,n){return new Mi(this,e,r,n)};Mi.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),r=e.redSqr(),n=this.x.redMul(r),s=this.y.redMul(r).redMul(e);return this.curve.point(n,s)};Mi.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)};Mi.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var r=e.z.redSqr(),n=this.z.redSqr(),s=this.x.redMul(r),i=e.x.redMul(n),o=this.y.redMul(r.redMul(e.z)),f=e.y.redMul(n.redMul(this.z)),u=s.redSub(i),h=o.redSub(f);if(u.cmpn(0)===0)return h.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var p=u.redSqr(),d=p.redMul(u),v=s.redMul(p),w=h.redSqr().redIAdd(d).redISub(v).redISub(v),A=h.redMul(v.redISub(w)).redISub(o.redMul(d)),M=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(w,A,M)};Mi.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var r=this.z.redSqr(),n=this.x,s=e.x.redMul(r),i=this.y,o=e.y.redMul(r).redMul(this.z),f=n.redSub(s),u=i.redSub(o);if(f.cmpn(0)===0)return u.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var h=f.redSqr(),p=h.redMul(f),d=n.redMul(h),v=u.redSqr().redIAdd(p).redISub(d).redISub(d),w=u.redMul(d.redISub(v)).redISub(i.redMul(p)),A=this.z.redMul(f);return this.curve.jpoint(v,w,A)};Mi.prototype.dblp=function(e){if(e===0)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var r;if(this.curve.zeroA||this.curve.threeA){var n=this;for(r=0;r=0)return!1;if(n.redIAdd(i),this.x.cmp(n)===0)return!0}};Mi.prototype.inspect=function(){return this.isInfinity()?"":""};Mi.prototype.isInfinity=function(){return this.z.cmpn(0)===0};var Fm=Pd(function(t,e){var r=e;r.base=ru,r.short=tF,r.mont=null,r.edwards=null}),Um=Pd(function(t,e){var r=e,n=Ts.assert;function s(f){f.type==="short"?this.curve=new Fm.short(f):f.type==="edwards"?this.curve=new Fm.edwards(f):this.curve=new Fm.mont(f),this.g=this.curve.g,this.n=this.curve.n,this.hash=f.hash,n(this.g.validate(),"Invalid curve"),n(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}r.PresetCurve=s;function i(f,u){Object.defineProperty(r,f,{configurable:!0,enumerable:!0,get:function(){var h=new s(u);return Object.defineProperty(r,f,{configurable:!0,enumerable:!0,value:h}),h}})}i("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:fs.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),i("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:fs.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),i("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:fs.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),i("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:fs.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),i("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:fs.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),i("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:fs.sha256,gRed:!1,g:["9"]}),i("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:fs.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var o;try{o=null.crash()}catch{o=void 0}i("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:fs.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",o]})});function Nl(t){if(!(this instanceof Nl))return new Nl(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=Ha.toArray(t.entropy,t.entropyEnc||"hex"),r=Ha.toArray(t.nonce,t.nonceEnc||"hex"),n=Ha.toArray(t.pers,t.persEnc||"hex");a3(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,r,n)}var bM=Nl;Nl.prototype._init=function(e,r,n){var s=e.concat(r).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1};Nl.prototype.generate=function(e,r,n,s){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof r!="string"&&(s=n,n=r,r=null),n&&(n=Ha.toArray(n,s||"hex"),this._update(n));for(var i=[];i.length"};var rF=Ts.assert;function Vv(t,e){if(t instanceof Vv)return t;this._importDER(t,e)||(rF(t.r&&t.s,"Signature without r or s"),this.r=new qt(t.r,16),this.s=new qt(t.s,16),t.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=t.recoveryParam)}var Wv=Vv;function nF(){this.place=0}function _b(t,e){var r=t[e.place++];if(!(r&128))return r;var n=r&15;if(n===0||n>4)return!1;for(var s=0,i=0,o=e.place;i>>=0;return s<=127?!1:(e.place=o,s)}function d5(t){for(var e=0,r=t.length-1;!t[e]&&!(t[e+1]&128)&&e>>3);for(t.push(r|128);--r;)t.push(e>>>(r<<3)&255);t.push(e)}Vv.prototype.toDER=function(e){var r=this.r.toArray(),n=this.s.toArray();for(r[0]&128&&(r=[0].concat(r)),n[0]&128&&(n=[0].concat(n)),r=d5(r),n=d5(n);!n[0]&&!(n[1]&128);)n=n.slice(1);var s=[2];Rb(s,r.length),s=s.concat(r),s.push(2),Rb(s,n.length);var i=s.concat(n),o=[48];return Rb(o,i.length),o=o.concat(i),Ts.encode(o,e)};var iF=function(){throw new Error("unsupported")},wM=Ts.assert;function ra(t){if(!(this instanceof ra))return new ra(t);typeof t=="string"&&(wM(Object.prototype.hasOwnProperty.call(Um,t),"Unknown curve "+t),t=Um[t]),t instanceof Um.PresetCurve&&(t={curve:t}),this.curve=t.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=t.curve.g,this.g.precompute(t.curve.n.bitLength()+1),this.hash=t.hash||t.curve.hash}var sF=ra;ra.prototype.keyPair=function(e){return new f3(this,e)};ra.prototype.keyFromPrivate=function(e,r){return f3.fromPrivate(this,e,r)};ra.prototype.keyFromPublic=function(e,r){return f3.fromPublic(this,e,r)};ra.prototype.genKeyPair=function(e){e||(e={});for(var r=new bM({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||iF(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),s=this.n.sub(new qt(2));;){var i=new qt(r.generate(n));if(!(i.cmp(s)>0))return i.iaddn(1),this.keyFromPrivate(i)}};ra.prototype._truncateToN=function(e,r){var n=e.byteLength()*8-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!r&&e.cmp(this.n)>=0?e.sub(this.n):e};ra.prototype.sign=function(e,r,n,s){typeof n=="object"&&(s=n,n=null),s||(s={}),r=this.keyFromPrivate(r,n),e=this._truncateToN(new qt(e,16));for(var i=this.n.byteLength(),o=r.getPrivate().toArray("be",i),f=e.toArray("be",i),u=new bM({hash:this.hash,entropy:o,nonce:f,pers:s.pers,persEnc:s.persEnc||"utf8"}),h=this.n.sub(new qt(1)),p=0;;p++){var d=s.k?s.k(p):new qt(u.generate(this.n.byteLength()));if(d=this._truncateToN(d,!0),!(d.cmpn(1)<=0||d.cmp(h)>=0)){var v=this.g.mul(d);if(!v.isInfinity()){var w=v.getX(),A=w.umod(this.n);if(A.cmpn(0)!==0){var M=d.invm(this.n).mul(A.mul(r.getPrivate()).iadd(e));if(M=M.umod(this.n),M.cmpn(0)!==0){var R=(v.getY().isOdd()?1:0)|(w.cmp(A)!==0?2:0);return s.canonical&&M.cmp(this.nh)>0&&(M=this.n.sub(M),R^=1),new Wv({r:A,s:M,recoveryParam:R})}}}}}};ra.prototype.verify=function(e,r,n,s){e=this._truncateToN(new qt(e,16)),n=this.keyFromPublic(n,s),r=new Wv(r,"hex");var i=r.r,o=r.s;if(i.cmpn(1)<0||i.cmp(this.n)>=0||o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var f=o.invm(this.n),u=f.mul(e).umod(this.n),h=f.mul(i).umod(this.n),p;return this.curve._maxwellTrick?(p=this.g.jmulAdd(u,n.getPublic(),h),p.isInfinity()?!1:p.eqXToP(i)):(p=this.g.mulAdd(u,n.getPublic(),h),p.isInfinity()?!1:p.getX().umod(this.n).cmp(i)===0)};ra.prototype.recoverPubKey=function(t,e,r,n){wM((3&r)===r,"The recovery param is more than two bits"),e=new Wv(e,n);var s=this.n,i=new qt(t),o=e.r,f=e.s,u=r&1,h=r>>1;if(o.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");h?o=this.curve.pointFromX(o.add(this.curve.n),u):o=this.curve.pointFromX(o,u);var p=e.r.invm(s),d=s.sub(i).mul(p).umod(s),v=f.mul(p).umod(s);return this.g.mulAdd(d,o,v)};ra.prototype.getKeyRecoveryParam=function(t,e,r,n){if(e=new Wv(e,n),e.recoveryParam!==null)return e.recoveryParam;for(var s=0;s<4;s++){var i;try{i=this.recoverPubKey(t,e,s)}catch{continue}if(i.eq(r))return s}throw new Error("Unable to find valid recovery factor")};var aF=Pd(function(t,e){var r=e;r.version="6.5.4",r.utils=Ts,r.rand=function(){throw new Error("unsupported")},r.curve=Fm,r.curves=Um,r.ec=sF,r.eddsa=null}),oF=aF.ec;const fF="signing-key/5.7.0",Nw=new at(fF);let Nb=null;function yo(){return Nb||(Nb=new oF("secp256k1")),Nb}let lF=class{constructor(e){Nr(this,"curve","secp256k1"),Nr(this,"privateKey",Qt(e)),Id(this.privateKey)!==32&&Nw.throwArgumentError("invalid private key","privateKey","[[ REDACTED ]]");const r=yo().keyFromPrivate(nr(this.privateKey));Nr(this,"publicKey","0x"+r.getPublic(!1,"hex")),Nr(this,"compressedPublicKey","0x"+r.getPublic(!0,"hex")),Nr(this,"_isSigningKey",!0)}_addPoint(e){const r=yo().keyFromPublic(nr(this.publicKey)),n=yo().keyFromPublic(nr(e));return"0x"+r.pub.add(n.pub).encodeCompressed("hex")}signDigest(e){const r=yo().keyFromPrivate(nr(this.privateKey)),n=nr(e);n.length!==32&&Nw.throwArgumentError("bad digest length","digest",e);const s=r.sign(n,{canonical:!0});return jv({recoveryParam:s.recoveryParam,r:Jn("0x"+s.r.toString(16),32),s:Jn("0x"+s.s.toString(16),32)})}computeSharedSecret(e){const r=yo().keyFromPrivate(nr(this.privateKey)),n=yo().keyFromPublic(nr(AM(e)));return Jn("0x"+r.derive(n.getPublic()).toString(16),32)}static isSigningKey(e){return!!(e&&e._isSigningKey)}};function cF(t,e){const r=jv(e),n={r:nr(r.r),s:nr(r.s)};return"0x"+yo().recoverPubKey(nr(t),n,r.recoveryParam).encode("hex",!1)}function AM(t,e){const r=nr(t);if(r.length===32){const n=new lF(r);return e?"0x"+yo().keyFromPrivate(r).getPublic(!0,"hex"):n.publicKey}else{if(r.length===33)return e?Qt(r):"0x"+yo().keyFromPublic(r).getPublic(!1,"hex");if(r.length===65)return e?"0x"+yo().keyFromPublic(r).getPublic(!0,"hex"):Qt(r)}return Nw.throwArgumentError("invalid public or private key","key","[REDACTED]")}const uF="transactions/5.7.0",Of=new at(uF);var p5;(function(t){t[t.legacy=0]="legacy",t[t.eip2930=1]="eip2930",t[t.eip1559=2]="eip1559"})(p5||(p5={}));function l3(t){return t==="0x"?null:qa(t)}function Ii(t){return t==="0x"?VL:Mt.from(t)}function hF(t){const e=AM(t);return qa(El(Ai(El(e,1)),12))}function xM(t,e){return hF(cF(nr(t),e))}function Ms(t,e){const r=dd(Mt.from(t).toHexString());return r.length>32&&Of.throwArgumentError("invalid length for "+e,"transaction:"+e,t),r}function Cb(t,e){return{address:qa(t),storageKeys:(e||[]).map((r,n)=>(Id(r)!==32&&Of.throwArgumentError("invalid access list storageKey",`accessList[${t}:${n}]`,r),r.toLowerCase()))}}function c1(t){if(Array.isArray(t))return t.map((r,n)=>Array.isArray(r)?(r.length>2&&Of.throwArgumentError("access list expected to be [ address, storageKeys[] ]",`value[${n}]`,r),Cb(r[0],r[1])):Cb(r.address,r.storageKeys));const e=Object.keys(t).map(r=>{const n=t[r].reduce((s,i)=>(s[i]=!0,s),{});return Cb(r,Object.keys(n).sort())});return e.sort((r,n)=>r.address.localeCompare(n.address)),e}function EM(t){return c1(t).map(e=>[e.address,e.storageKeys])}function dF(t,e){if(t.gasPrice!=null){const n=Mt.from(t.gasPrice),s=Mt.from(t.maxFeePerGas||0);n.eq(s)||Of.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:n,maxFeePerGas:s})}const r=[Ms(t.chainId||0,"chainId"),Ms(t.nonce||0,"nonce"),Ms(t.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),Ms(t.maxFeePerGas||0,"maxFeePerGas"),Ms(t.gasLimit||0,"gasLimit"),t.to!=null?qa(t.to):"0x",Ms(t.value||0,"value"),t.data||"0x",EM(t.accessList||[])];if(e){const n=jv(e);r.push(Ms(n.recoveryParam,"recoveryParam")),r.push(dd(n.r)),r.push(dd(n.s))}return So(["0x02",Kv(r)])}function pF(t,e){const r=[Ms(t.chainId||0,"chainId"),Ms(t.nonce||0,"nonce"),Ms(t.gasPrice||0,"gasPrice"),Ms(t.gasLimit||0,"gasLimit"),t.to!=null?qa(t.to):"0x",Ms(t.value||0,"value"),t.data||"0x",EM(t.accessList||[])];if(e){const n=jv(e);r.push(Ms(n.recoveryParam,"recoveryParam")),r.push(dd(n.r)),r.push(dd(n.s))}return So(["0x01",Kv(r)])}function MM(t,e,r){try{const n=Ii(e[0]).toNumber();if(n!==0&&n!==1)throw new Error("bad recid");t.v=n}catch{Of.throwArgumentError("invalid v for transaction type: 1","v",e[0])}t.r=Jn(e[1],32),t.s=Jn(e[2],32);try{const n=Ai(r(t));t.from=xM(n,{r:t.r,s:t.s,recoveryParam:t.v})}catch{}}function mF(t){const e=i3(t.slice(1));e.length!==9&&e.length!==12&&Of.throwArgumentError("invalid component count for transaction type: 2","payload",Qt(t));const r=Ii(e[2]),n=Ii(e[3]),s={type:2,chainId:Ii(e[0]).toNumber(),nonce:Ii(e[1]).toNumber(),maxPriorityFeePerGas:r,maxFeePerGas:n,gasPrice:null,gasLimit:Ii(e[4]),to:l3(e[5]),value:Ii(e[6]),data:e[7],accessList:c1(e[8])};return e.length===9||(s.hash=Ai(t),MM(s,e.slice(9),dF)),s}function gF(t){const e=i3(t.slice(1));e.length!==8&&e.length!==11&&Of.throwArgumentError("invalid component count for transaction type: 1","payload",Qt(t));const r={type:1,chainId:Ii(e[0]).toNumber(),nonce:Ii(e[1]).toNumber(),gasPrice:Ii(e[2]),gasLimit:Ii(e[3]),to:l3(e[4]),value:Ii(e[5]),data:e[6],accessList:c1(e[7])};return e.length===8||(r.hash=Ai(t),MM(r,e.slice(8),pF)),r}function vF(t){const e=i3(t);e.length!==9&&e.length!==6&&Of.throwArgumentError("invalid raw transaction","rawTransaction",t);const r={nonce:Ii(e[0]).toNumber(),gasPrice:Ii(e[1]),gasLimit:Ii(e[2]),to:l3(e[3]),value:Ii(e[4]),data:e[5],chainId:0};if(e.length===6)return r;try{r.v=Mt.from(e[6]).toNumber()}catch{return r}if(r.r=Jn(e[7],32),r.s=Jn(e[8],32),Mt.from(r.r).isZero()&&Mt.from(r.s).isZero())r.chainId=r.v,r.v=0;else{r.chainId=Math.floor((r.v-35)/2),r.chainId<0&&(r.chainId=0);let n=r.v-27;const s=e.slice(0,6);r.chainId!==0&&(s.push(Qt(r.chainId)),s.push("0x"),s.push("0x"),n-=r.chainId*2+8);const i=Ai(Kv(s));try{r.from=xM(i,{r:Qt(r.r),s:Qt(r.s),recoveryParam:n})}catch{}r.hash=Ai(t)}return r.type=null,r}function yF(t){const e=nr(t);if(e[0]>127)return vF(e);switch(e[0]){case 1:return gF(e);case 2:return mF(e)}return Of.throwError(`unsupported transaction type: ${e[0]}`,at.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:e[0]})}const Au=new at(Gv);class pt{constructor(){Au.checkNew(new.target,pt),this.formats=this.getDefaultFormats()}getDefaultFormats(){const e={},r=this.address.bind(this),n=this.bigNumber.bind(this),s=this.blockTag.bind(this),i=this.data.bind(this),o=this.hash.bind(this),f=this.hex.bind(this),u=this.number.bind(this),h=this.type.bind(this),p=d=>this.data(d,!0);return e.transaction={hash:o,type:h,accessList:pt.allowNull(this.accessList.bind(this),null),blockHash:pt.allowNull(o,null),blockNumber:pt.allowNull(u,null),transactionIndex:pt.allowNull(u,null),confirmations:pt.allowNull(u,null),from:r,gasPrice:pt.allowNull(n),maxPriorityFeePerGas:pt.allowNull(n),maxFeePerGas:pt.allowNull(n),gasLimit:n,to:pt.allowNull(r,null),value:n,nonce:u,data:i,r:pt.allowNull(this.uint256),s:pt.allowNull(this.uint256),v:pt.allowNull(u),creates:pt.allowNull(r,null),raw:pt.allowNull(i)},e.transactionRequest={from:pt.allowNull(r),nonce:pt.allowNull(u),gasLimit:pt.allowNull(n),gasPrice:pt.allowNull(n),maxPriorityFeePerGas:pt.allowNull(n),maxFeePerGas:pt.allowNull(n),to:pt.allowNull(r),value:pt.allowNull(n),data:pt.allowNull(p),type:pt.allowNull(u),accessList:pt.allowNull(this.accessList.bind(this),null)},e.receiptLog={transactionIndex:u,blockNumber:u,transactionHash:o,address:r,topics:pt.arrayOf(o),data:i,logIndex:u,blockHash:o},e.receipt={to:pt.allowNull(this.address,null),from:pt.allowNull(this.address,null),contractAddress:pt.allowNull(r,null),transactionIndex:u,root:pt.allowNull(f),gasUsed:n,logsBloom:pt.allowNull(i),blockHash:o,transactionHash:o,logs:pt.arrayOf(this.receiptLog.bind(this)),blockNumber:u,confirmations:pt.allowNull(u,null),cumulativeGasUsed:n,effectiveGasPrice:pt.allowNull(n),status:pt.allowNull(u),type:h},e.block={hash:o,parentHash:o,number:u,timestamp:u,nonce:pt.allowNull(f),difficulty:this.difficulty.bind(this),gasLimit:n,gasUsed:n,miner:r,extraData:i,transactions:pt.allowNull(pt.arrayOf(o)),baseFeePerGas:pt.allowNull(n)},e.blockWithTransactions=ds(e.block),e.blockWithTransactions.transactions=pt.allowNull(pt.arrayOf(this.transactionResponse.bind(this))),e.filter={fromBlock:pt.allowNull(s,void 0),toBlock:pt.allowNull(s,void 0),blockHash:pt.allowNull(o,void 0),address:pt.allowNull(r,void 0),topics:pt.allowNull(this.topics.bind(this),void 0)},e.filterLog={blockNumber:pt.allowNull(u),blockHash:pt.allowNull(o),transactionIndex:u,removed:pt.allowNull(this.boolean.bind(this)),address:r,data:pt.allowFalsish(i,"0x"),topics:pt.arrayOf(o),transactionHash:o,logIndex:u},e}accessList(e){return c1(e||[])}number(e){return e==="0x"?0:Mt.from(e).toNumber()}type(e){return e==="0x"||e==null?0:Mt.from(e).toNumber()}bigNumber(e){return Mt.from(e)}boolean(e){if(typeof e=="boolean")return e;if(typeof e=="string"){if(e=e.toLowerCase(),e==="true")return!0;if(e==="false")return!1}throw new Error("invalid boolean - "+e)}hex(e,r){return typeof e=="string"&&(!r&&e.substring(0,2)!=="0x"&&(e="0x"+e),sn(e))?e.toLowerCase():Au.throwArgumentError("invalid hash","value",e)}data(e,r){const n=this.hex(e,r);if(n.length%2!==0)throw new Error("invalid data; odd-length - "+e);return n}address(e){return qa(e)}callAddress(e){if(!sn(e,32))return null;const r=qa(El(e,12));return r===GL?null:r}contractAddress(e){return TD(e)}blockTag(e){if(e==null)return"latest";if(e==="earliest")return"0x0";if(e==="latest"||e==="pending")return e;if(typeof e=="number"||sn(e))return n3(e);throw new Error("invalid blockTag")}hash(e,r){const n=this.hex(e,r);return Id(n)!==32?Au.throwArgumentError("invalid hash","value",e):n}difficulty(e){if(e==null)return null;const r=Mt.from(e);try{return r.toNumber()}catch{}return null}uint256(e){if(!sn(e))throw new Error("invalid uint256");return Jn(e,32)}_block(e,r){e.author!=null&&e.miner==null&&(e.miner=e.author);const n=e._difficulty!=null?e._difficulty:e.difficulty,s=pt.check(r,e);return s._difficulty=n==null?null:Mt.from(n),s}block(e){return this._block(e,this.formats.block)}blockWithTransactions(e){return this._block(e,this.formats.blockWithTransactions)}transactionRequest(e){return pt.check(this.formats.transactionRequest,e)}transactionResponse(e){e.gas!=null&&e.gasLimit==null&&(e.gasLimit=e.gas),e.to&&Mt.from(e.to).isZero()&&(e.to="0x0000000000000000000000000000000000000000"),e.input!=null&&e.data==null&&(e.data=e.input),e.to==null&&e.creates==null&&(e.creates=this.contractAddress(e)),(e.type===1||e.type===2)&&e.accessList==null&&(e.accessList=[]);const r=pt.check(this.formats.transaction,e);if(e.chainId!=null){let n=e.chainId;sn(n)&&(n=Mt.from(n).toNumber()),r.chainId=n}else{let n=e.networkId;n==null&&r.v==null&&(n=e.chainId),sn(n)&&(n=Mt.from(n).toNumber()),typeof n!="number"&&r.v!=null&&(n=(r.v-35)/2,n<0&&(n=0),n=parseInt(n)),typeof n!="number"&&(n=0),r.chainId=n}return r.blockHash&&r.blockHash.replace(/0/g,"")==="x"&&(r.blockHash=null),r}transaction(e){return yF(e)}receiptLog(e){return pt.check(this.formats.receiptLog,e)}receipt(e){const r=pt.check(this.formats.receipt,e);if(r.root!=null)if(r.root.length<=4){const n=Mt.from(r.root).toNumber();n===0||n===1?(r.status!=null&&r.status!==n&&Au.throwArgumentError("alt-root-status/status mismatch","value",{root:r.root,status:r.status}),r.status=n,delete r.root):Au.throwArgumentError("invalid alt-root-status","value.root",r.root)}else r.root.length!==66&&Au.throwArgumentError("invalid root hash","value.root",r.root);return r.status!=null&&(r.byzantium=!0),r}topics(e){return Array.isArray(e)?e.map(r=>this.topics(r)):e!=null?this.hash(e,!0):null}filter(e){return pt.check(this.formats.filter,e)}filterLog(e){return pt.check(this.formats.filterLog,e)}static check(e,r){const n={};for(const s in e)try{const i=e[s](r[s]);i!==void 0&&(n[s]=i)}catch(i){throw i.checkKey=s,i.checkValue=r[s],i}return n}static allowNull(e,r){return function(n){return n==null?r:e(n)}}static allowFalsish(e,r){return function(n){return n?e(n):r}}static arrayOf(e){return function(r){if(!Array.isArray(r))throw new Error("not an array");const n=[];return r.forEach(function(s){n.push(e(s))}),n}}}var Yt=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const Vr=new at(Gv);function m5(t){return t==null?"null":(Id(t)!==32&&Vr.throwArgumentError("invalid topic","topic",t),t.toLowerCase())}function g5(t){for(t=t.slice();t.length>0&&t[t.length-1]==null;)t.pop();return t.map(e=>{if(Array.isArray(e)){const r={};e.forEach(s=>{r[m5(s)]=!0});const n=Object.keys(r);return n.sort(),n.join("|")}else return m5(e)}).join("&")}function bF(t){return t===""?[]:t.split(/&/g).map(e=>{if(e==="")return[];const r=e.split("|").map(n=>n==="null"?null:n);return r.length===1?r[0]:r})}function xu(t){if(typeof t=="string"){if(t=t.toLowerCase(),Id(t)===32)return"tx:"+t;if(t.indexOf(":")===-1)return t}else{if(Array.isArray(t))return"filter:*:"+g5(t);if(jL.isForkEvent(t))throw Vr.warn("not implemented"),new Error("not implemented");if(t&&typeof t=="object")return"filter:"+(t.address||"*")+":"+g5(t.topics||[])}throw new Error("invalid event - "+t)}function c0(){return new Date().getTime()}function v5(t){return new Promise(e=>{setTimeout(e,t)})}const wF=["block","network","pending","poll"];class AF{constructor(e,r,n){Nr(this,"tag",e),Nr(this,"listener",r),Nr(this,"once",n)}get event(){switch(this.type){case"tx":return this.hash;case"filter":return this.filter}return this.tag}get type(){return this.tag.split(":")[0]}get hash(){const e=this.tag.split(":");return e[0]!=="tx"?null:e[1]}get filter(){const e=this.tag.split(":");if(e[0]!=="filter")return null;const r=e[1],n=bF(e[2]),s={};return n.length>0&&(s.topics=n),r&&r!=="*"&&(s.address=r),s}pollable(){return this.tag.indexOf(":")>=0||wF.indexOf(this.tag)>=0}}const xF={0:{symbol:"btc",p2pkh:0,p2sh:5,prefix:"bc"},2:{symbol:"ltc",p2pkh:48,p2sh:50,prefix:"ltc"},3:{symbol:"doge",p2pkh:30,p2sh:22},60:{symbol:"eth",ilk:"eth"},61:{symbol:"etc",ilk:"eth"},700:{symbol:"xdai",ilk:"eth"}};function Tb(t){return Jn(Mt.from(t).toHexString(),32)}function y5(t){return J7.encode(Ku([t,El(c5(c5(t)),0,4)]))}const SM=new RegExp("^(ipfs)://(.*)$","i"),b5=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),SM,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];function EF(t){try{return l1(_M(t))}catch{}return null}function _M(t){if(t==="0x")return null;const e=Mt.from(El(t,0,32)).toNumber(),r=Mt.from(El(t,e,e+32)).toNumber();return El(t,e+32,e+32+r)}function w5(t){return`https://gateway.ipfs.io/ipfs/${t.substring(7)}`}class A5{constructor(e,r,n,s){Nr(this,"provider",e),Nr(this,"name",n),Nr(this,"address",e.formatter.address(r)),Nr(this,"_resolvedAddress",s)}_fetchBytes(e,r){return Yt(this,void 0,void 0,function*(){const n={to:this.address,data:So([e,Cg(this.name),r||"0x"])};try{return _M(yield this.provider.call(n))}catch(s){return s.code===at.errors.CALL_EXCEPTION,null}})}_getAddress(e,r){const n=xF[String(e)];if(n==null&&Vr.throwError(`unsupported coin type: ${e}`,at.errors.UNSUPPORTED_OPERATION,{operation:`getAddress(${e})`}),n.ilk==="eth")return this.provider.formatter.address(r);const s=nr(r);if(n.p2pkh!=null){const i=r.match(/^0x76a9([0-9a-f][0-9a-f])([0-9a-f]*)88ac$/);if(i){const o=parseInt(i[1],16);if(i[2].length===o*2&&o>=1&&o<=75)return y5(Ku([[n.p2pkh],"0x"+i[2]]))}}if(n.p2sh!=null){const i=r.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/);if(i){const o=parseInt(i[1],16);if(i[2].length===o*2&&o>=1&&o<=75)return y5(Ku([[n.p2sh],"0x"+i[2]]))}}if(n.prefix!=null){const i=s[1];let o=s[0];if(o===0?i!==20&&i!==32&&(o=-1):o=-1,o>=0&&s.length===2+i&&i>=1&&i<=75){const f=h5.toWords(s.slice(2));return f.unshift(o),h5.encode(n.prefix,f)}}return null}getAddress(e){return Yt(this,void 0,void 0,function*(){if(e==null&&(e=60),e===60)try{const s={to:this.address,data:"0x3b3b57de"+Cg(this.name).substring(2)},i=yield this.provider.call(s);return i==="0x"||i===WL?null:this.provider.formatter.callAddress(i)}catch(s){if(s.code===at.errors.CALL_EXCEPTION)return null;throw s}const r=yield this._fetchBytes("0xf1cb7e06",Tb(e));if(r==null||r==="0x")return null;const n=this._getAddress(e,r);return n==null&&Vr.throwError("invalid or unsupported coin data",at.errors.UNSUPPORTED_OPERATION,{operation:`getAddress(${e})`,coinType:e,data:r}),n})}getAvatar(){return Yt(this,void 0,void 0,function*(){const e=[{type:"name",content:this.name}];try{const r=yield this.getText("avatar");if(r==null)return null;for(let n=0;n{}),this._ready().catch(r=>{});else{const r=C0(new.target,"getNetwork")(e);r?(Nr(this,"_network",r),this.emit("network",r,null)):Vr.throwArgumentError("invalid network","network",e)}this._maxInternalBlockNumber=-1024,this._lastBlockNumber=-2,this._pollingInterval=4e3,this._fastQueryDate=0}_ready(){return Yt(this,void 0,void 0,function*(){if(this._network==null){let e=null;if(this._networkPromise)try{e=yield this._networkPromise}catch{}e==null&&(e=yield this.detectNetwork()),e||Vr.throwError("no network detected",at.errors.UNKNOWN_ERROR,{}),this._network==null&&(this.anyNetwork?this._network=e:Nr(this,"_network",e),this.emit("network",e,null))}return this._network})}get ready(){return T0(()=>this._ready().then(e=>e,e=>{if(!(e.code===at.errors.NETWORK_ERROR&&e.event==="noNetwork"))throw e}))}static getFormatter(){return kb==null&&(kb=new pt),kb}static getNetwork(e){return qL(e??"homestead")}_getInternalBlockNumber(e){return Yt(this,void 0,void 0,function*(){if(yield this._ready(),e>0)for(;this._internalBlockNumber;){const s=this._internalBlockNumber;try{const i=yield s;if(c0()-i.respTime<=e)return i.blockNumber;break}catch{if(this._internalBlockNumber===s)break}}const r=c0(),n=vi({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then(s=>null,s=>s)}).then(({blockNumber:s,networkError:i})=>{if(i)throw this._internalBlockNumber===n&&(this._internalBlockNumber=null),i;const o=c0();return s=Mt.from(s).toNumber(),s{this._internalBlockNumber===n&&(this._internalBlockNumber=null)}),(yield n).blockNumber})}poll(){return Yt(this,void 0,void 0,function*(){const e=MF++,r=[];let n=null;try{n=yield this._getInternalBlockNumber(100+this.pollingInterval/2)}catch(s){this.emit("error",s);return}if(this._setFastBlockNumber(n),this.emit("poll",e,n),n===this._lastBlockNumber){this.emit("didPoll",e);return}if(this._emitted.block===-2&&(this._emitted.block=n-1),Math.abs(this._emitted.block-n)>1e3)Vr.warn(`network block skew detected; skipping block events (emitted=${this._emitted.block} blockNumber${n})`),this.emit("error",Vr.makeError("network block skew detected",at.errors.NETWORK_ERROR,{blockNumber:n,event:"blockSkew",previousBlockNumber:this._emitted.block})),this.emit("block",n);else for(let s=this._emitted.block+1;s<=n;s++)this.emit("block",s);this._emitted.block!==n&&(this._emitted.block=n,Object.keys(this._emitted).forEach(s=>{if(s==="block")return;const i=this._emitted[s];i!=="pending"&&n-i>12&&delete this._emitted[s]})),this._lastBlockNumber===-2&&(this._lastBlockNumber=n-1),this._events.forEach(s=>{switch(s.type){case"tx":{const i=s.hash;let o=this.getTransactionReceipt(i).then(f=>(!f||f.blockNumber==null||(this._emitted["t:"+i]=f.blockNumber,this.emit(i,f)),null)).catch(f=>{this.emit("error",f)});r.push(o);break}case"filter":{const i=s.filter;i.fromBlock=this._lastBlockNumber+1,i.toBlock=n;const o=this.getLogs(i).then(f=>{f.length!==0&&f.forEach(u=>{this._emitted["b:"+u.blockHash]=u.blockNumber,this._emitted["t:"+u.transactionHash]=u.blockNumber,this.emit(i,u)})}).catch(f=>{this.emit("error",f)});r.push(o);break}}}),this._lastBlockNumber=n,Promise.all(r).then(()=>{this.emit("didPoll",e)}).catch(s=>{this.emit("error",s)})})}resetEventsBlock(e){this._lastBlockNumber=e-1,this.polling&&this.poll()}get network(){return this._network}detectNetwork(){return Yt(this,void 0,void 0,function*(){return Vr.throwError("provider does not support network detection",at.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})})}getNetwork(){return Yt(this,void 0,void 0,function*(){const e=yield this._ready(),r=yield this.detectNetwork();if(e.chainId!==r.chainId){if(this.anyNetwork)return this._network=r,this._lastBlockNumber=-2,this._fastBlockNumber=null,this._fastBlockNumberPromise=null,this._fastQueryDate=0,this._emitted.block=-2,this._maxInternalBlockNumber=-1024,this._internalBlockNumber=null,this.emit("network",r,e),yield v5(0),this._network;const n=Vr.makeError("underlying network changed",at.errors.NETWORK_ERROR,{event:"changed",network:e,detectedNetwork:r});throw this.emit("error",n),n}return e})}get blockNumber(){return this._getInternalBlockNumber(100+this.pollingInterval/2).then(e=>{this._setFastBlockNumber(e)},e=>{}),this._fastBlockNumber!=null?this._fastBlockNumber:-1}get polling(){return this._poller!=null}set polling(e){e&&!this._poller?(this._poller=setInterval(()=>{this.poll()},this.pollingInterval),this._bootstrapPoll||(this._bootstrapPoll=setTimeout(()=>{this.poll(),this._bootstrapPoll=setTimeout(()=>{this._poller||this.poll(),this._bootstrapPoll=null},this.pollingInterval)},0))):!e&&this._poller&&(clearInterval(this._poller),this._poller=null)}get pollingInterval(){return this._pollingInterval}set pollingInterval(e){if(typeof e!="number"||e<=0||parseInt(String(e))!=e)throw new Error("invalid polling interval");this._pollingInterval=e,this._poller&&(clearInterval(this._poller),this._poller=setInterval(()=>{this.poll()},this._pollingInterval))}_getFastBlockNumber(){const e=c0();return e-this._fastQueryDate>2*this._pollingInterval&&(this._fastQueryDate=e,this._fastBlockNumberPromise=this.getBlockNumber().then(r=>((this._fastBlockNumber==null||r>this._fastBlockNumber)&&(this._fastBlockNumber=r),this._fastBlockNumber))),this._fastBlockNumberPromise}_setFastBlockNumber(e){this._fastBlockNumber!=null&&ethis._fastBlockNumber)&&(this._fastBlockNumber=e,this._fastBlockNumberPromise=Promise.resolve(e)))}waitForTransaction(e,r,n){return Yt(this,void 0,void 0,function*(){return this._waitForTransaction(e,r??1,n||0,null)})}_waitForTransaction(e,r,n,s){return Yt(this,void 0,void 0,function*(){const i=yield this.getTransactionReceipt(e);return(i?i.confirmations:0)>=r?i:new Promise((o,f)=>{const u=[];let h=!1;const p=function(){return h?!0:(h=!0,u.forEach(v=>{v()}),!1)},d=v=>{v.confirmations{this.removeListener(e,d)}),s){let v=s.startBlock,w=null;const A=M=>Yt(this,void 0,void 0,function*(){h||(yield v5(1e3),this.getTransactionCount(s.from).then(R=>Yt(this,void 0,void 0,function*(){if(!h){if(R<=s.nonce)v=M;else{{const N=yield this.getTransaction(e);if(N&&N.blockNumber!=null)return}for(w==null&&(w=v-3,w{h||this.once("block",A)}))});if(h)return;this.once("block",A),u.push(()=>{this.removeListener("block",A)})}if(typeof n=="number"&&n>0){const v=setTimeout(()=>{p()||f(Vr.makeError("timeout exceeded",at.errors.TIMEOUT,{timeout:n}))},n);v.unref&&v.unref(),u.push(()=>{clearTimeout(v)})}})})}getBlockNumber(){return Yt(this,void 0,void 0,function*(){return this._getInternalBlockNumber(0)})}getGasPrice(){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const e=yield this.perform("getGasPrice",{});try{return Mt.from(e)}catch(r){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"getGasPrice",result:e,error:r})}})}getBalance(e,r){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const n=yield vi({address:this._getAddress(e),blockTag:this._getBlockTag(r)}),s=yield this.perform("getBalance",n);try{return Mt.from(s)}catch(i){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"getBalance",params:n,result:s,error:i})}})}getTransactionCount(e,r){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const n=yield vi({address:this._getAddress(e),blockTag:this._getBlockTag(r)}),s=yield this.perform("getTransactionCount",n);try{return Mt.from(s).toNumber()}catch(i){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"getTransactionCount",params:n,result:s,error:i})}})}getCode(e,r){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const n=yield vi({address:this._getAddress(e),blockTag:this._getBlockTag(r)}),s=yield this.perform("getCode",n);try{return Qt(s)}catch(i){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"getCode",params:n,result:s,error:i})}})}getStorageAt(e,r,n){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const s=yield vi({address:this._getAddress(e),blockTag:this._getBlockTag(n),position:Promise.resolve(r).then(o=>n3(o))}),i=yield this.perform("getStorageAt",s);try{return Qt(i)}catch(o){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"getStorageAt",params:s,result:i,error:o})}})}_wrapTransaction(e,r,n){if(r!=null&&Id(r)!==32)throw new Error("invalid response - sendTransaction");const s=e;return r!=null&&e.hash!==r&&Vr.throwError("Transaction hash mismatch from Provider.sendTransaction.",at.errors.UNKNOWN_ERROR,{expectedHash:e.hash,returnedHash:r}),s.wait=(i,o)=>Yt(this,void 0,void 0,function*(){i==null&&(i=1),o==null&&(o=0);let f;i!==0&&n!=null&&(f={data:e.data,from:e.from,nonce:e.nonce,to:e.to,value:e.value,startBlock:n});const u=yield this._waitForTransaction(e.hash,i,o,f);return u==null&&i===0?null:(this._emitted["t:"+e.hash]=u.blockNumber,u.status===0&&Vr.throwError("transaction failed",at.errors.CALL_EXCEPTION,{transactionHash:e.hash,transaction:e,receipt:u}),u)}),s}sendTransaction(e){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const r=yield Promise.resolve(e).then(i=>Qt(i)),n=this.formatter.transaction(e);n.confirmations==null&&(n.confirmations=0);const s=yield this._getInternalBlockNumber(100+2*this.pollingInterval);try{const i=yield this.perform("sendTransaction",{signedTransaction:r});return this._wrapTransaction(n,i,s)}catch(i){throw i.transaction=n,i.transactionHash=n.hash,i}})}_getTransactionRequest(e){return Yt(this,void 0,void 0,function*(){const r=yield e,n={};return["from","to"].forEach(s=>{r[s]!=null&&(n[s]=Promise.resolve(r[s]).then(i=>i?this._getAddress(i):null))}),["gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","value"].forEach(s=>{r[s]!=null&&(n[s]=Promise.resolve(r[s]).then(i=>i?Mt.from(i):null))}),["type"].forEach(s=>{r[s]!=null&&(n[s]=Promise.resolve(r[s]).then(i=>i??null))}),r.accessList&&(n.accessList=this.formatter.accessList(r.accessList)),["data"].forEach(s=>{r[s]!=null&&(n[s]=Promise.resolve(r[s]).then(i=>i?Qt(i):null))}),this.formatter.transactionRequest(yield vi(n))})}_getFilter(e){return Yt(this,void 0,void 0,function*(){e=yield e;const r={};return e.address!=null&&(r.address=this._getAddress(e.address)),["blockHash","topics"].forEach(n=>{e[n]!=null&&(r[n]=e[n])}),["fromBlock","toBlock"].forEach(n=>{e[n]!=null&&(r[n]=this._getBlockTag(e[n]))}),this.formatter.filter(yield vi(r))})}call(e,r){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const n=yield vi({transaction:this._getTransactionRequest(e),blockTag:this._getBlockTag(r)}),s=yield this.perform("call",n);try{return Qt(s)}catch(i){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"call",params:n,result:s,error:i})}})}estimateGas(e){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const r=yield vi({transaction:this._getTransactionRequest(e)}),n=yield this.perform("estimateGas",r);try{return Mt.from(n)}catch(s){return Vr.throwError("bad result from backend",at.errors.SERVER_ERROR,{method:"estimateGas",params:r,result:n,error:s})}})}_getAddress(e){return Yt(this,void 0,void 0,function*(){e=yield e,typeof e!="string"&&Vr.throwArgumentError("invalid address or ENS name","name",e);const r=yield this.resolveName(e);return r==null&&Vr.throwError("ENS name not configured",at.errors.UNSUPPORTED_OPERATION,{operation:`resolveName(${JSON.stringify(e)})`}),r})}_getBlock(e,r){return Yt(this,void 0,void 0,function*(){yield this.getNetwork(),e=yield e;let n=-128;const s={includeTransactions:!!r};if(sn(e,32))s.blockHash=e;else try{s.blockTag=yield this._getBlockTag(e),sn(s.blockTag)&&(n=parseInt(s.blockTag.substring(2),16))}catch{Vr.throwArgumentError("invalid block hash or block tag","blockHashOrBlockTag",e)}return T0(()=>Yt(this,void 0,void 0,function*(){const i=yield this.perform("getBlock",s);if(i==null)return s.blockHash!=null&&this._emitted["b:"+s.blockHash]==null||s.blockTag!=null&&n>this._emitted.block?null:void 0;if(r){let o=null;for(let u=0;uthis._wrapTransaction(u)),f}return this.formatter.block(i)}),{oncePoll:this})})}getBlock(e){return this._getBlock(e,!1)}getBlockWithTransactions(e){return this._getBlock(e,!0)}getTransaction(e){return Yt(this,void 0,void 0,function*(){yield this.getNetwork(),e=yield e;const r={transactionHash:this.formatter.hash(e,!0)};return T0(()=>Yt(this,void 0,void 0,function*(){const n=yield this.perform("getTransaction",r);if(n==null)return this._emitted["t:"+e]==null?null:void 0;const s=this.formatter.transactionResponse(n);if(s.blockNumber==null)s.confirmations=0;else if(s.confirmations==null){let o=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-s.blockNumber+1;o<=0&&(o=1),s.confirmations=o}return this._wrapTransaction(s)}),{oncePoll:this})})}getTransactionReceipt(e){return Yt(this,void 0,void 0,function*(){yield this.getNetwork(),e=yield e;const r={transactionHash:this.formatter.hash(e,!0)};return T0(()=>Yt(this,void 0,void 0,function*(){const n=yield this.perform("getTransactionReceipt",r);if(n==null)return this._emitted["t:"+e]==null?null:void 0;if(n.blockHash==null)return;const s=this.formatter.receipt(n);if(s.blockNumber==null)s.confirmations=0;else if(s.confirmations==null){let o=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-s.blockNumber+1;o<=0&&(o=1),s.confirmations=o}return s}),{oncePoll:this})})}getLogs(e){return Yt(this,void 0,void 0,function*(){yield this.getNetwork();const r=yield vi({filter:this._getFilter(e)}),n=yield this.perform("getLogs",r);return n.forEach(s=>{s.removed==null&&(s.removed=!1)}),pt.arrayOf(this.formatter.filterLog.bind(this.formatter))(n)})}getEtherPrice(){return Yt(this,void 0,void 0,function*(){return yield this.getNetwork(),this.perform("getEtherPrice",{})})}_getBlockTag(e){return Yt(this,void 0,void 0,function*(){if(e=yield e,typeof e=="number"&&e<0){e%1&&Vr.throwArgumentError("invalid BlockTag","blockTag",e);let r=yield this._getInternalBlockNumber(100+2*this.pollingInterval);return r+=e,r<0&&(r=0),this.formatter.blockTag(r)}return this.formatter.blockTag(e)})}getResolver(e){return Yt(this,void 0,void 0,function*(){try{const r=yield this._getResolver(e);return r==null?null:new A5(this,r,e)}catch(r){if(r.code===at.errors.CALL_EXCEPTION)return null;throw r}})}_getResolver(e){return Yt(this,void 0,void 0,function*(){const r=yield this.getNetwork();r.ensAddress||Vr.throwError("network does not support ENS",at.errors.UNSUPPORTED_OPERATION,{operation:"ENS",network:r.name});const n={to:r.ensAddress,data:"0x0178b8bf"+Cg(e).substring(2)};try{return this.formatter.callAddress(yield this.call(n))}catch(s){if(s.code===at.errors.CALL_EXCEPTION)return null;throw s}})}resolveName(e){return Yt(this,void 0,void 0,function*(){e=yield e;try{return Promise.resolve(this.formatter.address(e))}catch(n){if(sn(e))throw n}typeof e!="string"&&Vr.throwArgumentError("invalid ENS name","name",e);const r=yield this.getResolver(e);return r?yield r.getAddress():null})}lookupAddress(e){return Yt(this,void 0,void 0,function*(){e=yield e,e=this.formatter.address(e);const r=e.substring(2).toLowerCase()+".addr.reverse",n=yield this._getResolver(r);if(!n)return null;let s=nr(yield this.call({to:n,data:"0x691f3431"+Cg(r).substring(2)}));if(s.length<32||!Mt.from(s.slice(0,32)).eq(32)||(s=s.slice(32),s.length<32))return null;const i=Mt.from(s.slice(0,32)).toNumber();if(s=s.slice(32),i>s.length)return null;const o=l1(s.slice(0,i));return(yield this.resolveName(o))!=e?null:o})}getAvatar(e){return Yt(this,void 0,void 0,function*(){let r=null;if(sn(e)){const s=this.formatter.address(e),i=s.substring(2).toLowerCase()+".addr.reverse",o=yield this._getResolver(i);if(!o)return null;r=new A5(this,o,"_",s)}else if(r=yield this.getResolver(e),!r)return null;const n=yield r.getAvatar();return n==null?null:n.url})}perform(e,r){return Vr.throwError(e+" not implemented",at.errors.NOT_IMPLEMENTED,{operation:e})}_startEvent(e){this.polling=this._events.filter(r=>r.pollable()).length>0}_stopEvent(e){this.polling=this._events.filter(r=>r.pollable()).length>0}_addEventListener(e,r,n){const s=new AF(xu(e),r,n);return this._events.push(s),this._startEvent(s),this}on(e,r){return this._addEventListener(e,r,!1)}once(e,r){return this._addEventListener(e,r,!0)}emit(e,...r){let n=!1,s=[],i=xu(e);return this._events=this._events.filter(o=>o.tag!==i?!0:(setTimeout(()=>{o.listener.apply(this,r)},0),n=!0,o.once?(s.push(o),!1):!0)),s.forEach(o=>{this._stopEvent(o)}),n}listenerCount(e){if(!e)return this._events.length;let r=xu(e);return this._events.filter(n=>n.tag===r).length}listeners(e){if(e==null)return this._events.map(n=>n.listener);let r=xu(e);return this._events.filter(n=>n.tag===r).map(n=>n.listener)}off(e,r){if(r==null)return this.removeAllListeners(e);const n=[];let s=!1,i=xu(e);return this._events=this._events.filter(o=>o.tag!==i||o.listener!=r||s?!0:(s=!0,n.push(o),!1)),n.forEach(o=>{this._stopEvent(o)}),this}removeAllListeners(e){let r=[];if(e==null)r=this._events,this._events=[];else{const n=xu(e);this._events=this._events.filter(s=>s.tag!==n?!0:(r.push(s),!1))}return r.forEach(n=>{this._stopEvent(n)}),this}}const _F="abstract-signer/5.7.0";var Ma=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const Sa=new at(_F),RF=["accessList","ccipReadEnabled","chainId","customData","data","from","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","nonce","to","type","value"],NF=[at.errors.INSUFFICIENT_FUNDS,at.errors.NONCE_EXPIRED,at.errors.REPLACEMENT_UNDERPRICED];class c3{constructor(){Sa.checkAbstract(new.target,c3),Nr(this,"_isSigner",!0)}getBalance(e){return Ma(this,void 0,void 0,function*(){return this._checkProvider("getBalance"),yield this.provider.getBalance(this.getAddress(),e)})}getTransactionCount(e){return Ma(this,void 0,void 0,function*(){return this._checkProvider("getTransactionCount"),yield this.provider.getTransactionCount(this.getAddress(),e)})}estimateGas(e){return Ma(this,void 0,void 0,function*(){this._checkProvider("estimateGas");const r=yield vi(this.checkTransaction(e));return yield this.provider.estimateGas(r)})}call(e,r){return Ma(this,void 0,void 0,function*(){this._checkProvider("call");const n=yield vi(this.checkTransaction(e));return yield this.provider.call(n,r)})}sendTransaction(e){return Ma(this,void 0,void 0,function*(){this._checkProvider("sendTransaction");const r=yield this.populateTransaction(e),n=yield this.signTransaction(r);return yield this.provider.sendTransaction(n)})}getChainId(){return Ma(this,void 0,void 0,function*(){return this._checkProvider("getChainId"),(yield this.provider.getNetwork()).chainId})}getGasPrice(){return Ma(this,void 0,void 0,function*(){return this._checkProvider("getGasPrice"),yield this.provider.getGasPrice()})}getFeeData(){return Ma(this,void 0,void 0,function*(){return this._checkProvider("getFeeData"),yield this.provider.getFeeData()})}resolveName(e){return Ma(this,void 0,void 0,function*(){return this._checkProvider("resolveName"),yield this.provider.resolveName(e)})}checkTransaction(e){for(const n in e)RF.indexOf(n)===-1&&Sa.throwArgumentError("invalid transaction key: "+n,"transaction",e);const r=ds(e);return r.from==null?r.from=this.getAddress():r.from=Promise.all([Promise.resolve(r.from),this.getAddress()]).then(n=>(n[0].toLowerCase()!==n[1].toLowerCase()&&Sa.throwArgumentError("from address mismatch","transaction",e),n[0])),r}populateTransaction(e){return Ma(this,void 0,void 0,function*(){const r=yield vi(this.checkTransaction(e));r.to!=null&&(r.to=Promise.resolve(r.to).then(s=>Ma(this,void 0,void 0,function*(){if(s==null)return null;const i=yield this.resolveName(s);return i==null&&Sa.throwArgumentError("provided ENS name resolves to null","tx.to",s),i})),r.to.catch(s=>{}));const n=r.maxFeePerGas!=null||r.maxPriorityFeePerGas!=null;if(r.gasPrice!=null&&(r.type===2||n)?Sa.throwArgumentError("eip-1559 transaction do not support gasPrice","transaction",e):(r.type===0||r.type===1)&&n&&Sa.throwArgumentError("pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas","transaction",e),(r.type===2||r.type==null)&&r.maxFeePerGas!=null&&r.maxPriorityFeePerGas!=null)r.type=2;else if(r.type===0||r.type===1)r.gasPrice==null&&(r.gasPrice=this.getGasPrice());else{const s=yield this.getFeeData();if(r.type==null)if(s.maxFeePerGas!=null&&s.maxPriorityFeePerGas!=null)if(r.type=2,r.gasPrice!=null){const i=r.gasPrice;delete r.gasPrice,r.maxFeePerGas=i,r.maxPriorityFeePerGas=i}else r.maxFeePerGas==null&&(r.maxFeePerGas=s.maxFeePerGas),r.maxPriorityFeePerGas==null&&(r.maxPriorityFeePerGas=s.maxPriorityFeePerGas);else s.gasPrice!=null?(n&&Sa.throwError("network does not support EIP-1559",at.errors.UNSUPPORTED_OPERATION,{operation:"populateTransaction"}),r.gasPrice==null&&(r.gasPrice=s.gasPrice),r.type=0):Sa.throwError("failed to get consistent fee data",at.errors.UNSUPPORTED_OPERATION,{operation:"signer.getFeeData"});else r.type===2&&(r.maxFeePerGas==null&&(r.maxFeePerGas=s.maxFeePerGas),r.maxPriorityFeePerGas==null&&(r.maxPriorityFeePerGas=s.maxPriorityFeePerGas))}return r.nonce==null&&(r.nonce=this.getTransactionCount("pending")),r.gasLimit==null&&(r.gasLimit=this.estimateGas(r).catch(s=>{if(NF.indexOf(s.code)>=0)throw s;return Sa.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",at.errors.UNPREDICTABLE_GAS_LIMIT,{error:s,tx:r})})),r.chainId==null?r.chainId=this.getChainId():r.chainId=Promise.all([Promise.resolve(r.chainId),this.getChainId()]).then(s=>(s[1]!==0&&s[0]!==s[1]&&Sa.throwArgumentError("chainId address mismatch","transaction",e),s[0])),yield vi(r)})}_checkProvider(e){this.provider||Sa.throwError("missing provider",at.errors.UNSUPPORTED_OPERATION,{operation:e||"_checkProvider"})}static isSigner(e){return!!(e&&e._isSigner)}}var Yo=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const bi=new at(Gv),CF=["call","estimateGas"];function RM(t,e,r){if(t==="call"&&e.code===at.errors.SERVER_ERROR){const i=e.error;if(i&&i.message.match("reverted")&&sn(i.data))return i.data;bi.throwError("missing revert data in call exception",at.errors.CALL_EXCEPTION,{error:e,data:"0x"})}let n=e.message;e.code===at.errors.SERVER_ERROR&&e.error&&typeof e.error.message=="string"?n=e.error.message:typeof e.body=="string"?n=e.body:typeof e.responseText=="string"&&(n=e.responseText),n=(n||"").toLowerCase();const s=r.transaction||r.signedTransaction;throw n.match(/insufficient funds|base fee exceeds gas limit/)&&bi.throwError("insufficient funds for intrinsic transaction cost",at.errors.INSUFFICIENT_FUNDS,{error:e,method:t,transaction:s}),n.match(/nonce too low/)&&bi.throwError("nonce has already been used",at.errors.NONCE_EXPIRED,{error:e,method:t,transaction:s}),n.match(/replacement transaction underpriced/)&&bi.throwError("replacement fee too low",at.errors.REPLACEMENT_UNDERPRICED,{error:e,method:t,transaction:s}),n.match(/only replay-protected/)&&bi.throwError("legacy pre-eip-155 transactions not supported",at.errors.UNSUPPORTED_OPERATION,{error:e,method:t,transaction:s}),CF.indexOf(t)>=0&&n.match(/gas required exceeds allowance|always failing transaction|execution reverted/)&&bi.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",at.errors.UNPREDICTABLE_GAS_LIMIT,{error:e,method:t,transaction:s}),e}function x5(t){return new Promise(function(e){setTimeout(e,t)})}function TF(t){if(t.error){const e=new Error(t.error.message);throw e.code=t.error.code,e.data=t.error.data,e}return t.result}function u0(t){return t&&t.toLowerCase()}const Cw={};let NM=class CM extends c3{constructor(e,r,n){if(bi.checkNew(new.target,CM),super(),e!==Cw)throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner");Nr(this,"provider",r),n==null&&(n=0),typeof n=="string"?(Nr(this,"_address",this.provider.formatter.address(n)),Nr(this,"_index",null)):typeof n=="number"?(Nr(this,"_index",n),Nr(this,"_address",null)):bi.throwArgumentError("invalid address or index","addressOrIndex",n)}connect(e){return bi.throwError("cannot alter JSON-RPC Signer connection",at.errors.UNSUPPORTED_OPERATION,{operation:"connect"})}connectUnchecked(){return new kF(Cw,this.provider,this._address||this._index)}getAddress(){return this._address?Promise.resolve(this._address):this.provider.send("eth_accounts",[]).then(e=>(e.length<=this._index&&bi.throwError("unknown account #"+this._index,at.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"}),this.provider.formatter.address(e[this._index])))}sendUncheckedTransaction(e){e=ds(e);const r=this.getAddress().then(n=>(n&&(n=n.toLowerCase()),n));if(e.gasLimit==null){const n=ds(e);n.from=r,e.gasLimit=this.provider.estimateGas(n)}return e.to!=null&&(e.to=Promise.resolve(e.to).then(n=>Yo(this,void 0,void 0,function*(){if(n==null)return null;const s=yield this.provider.resolveName(n);return s==null&&bi.throwArgumentError("provided ENS name resolves to null","tx.to",n),s}))),vi({tx:vi(e),sender:r}).then(({tx:n,sender:s})=>{n.from!=null?n.from.toLowerCase()!==s&&bi.throwArgumentError("from address mismatch","transaction",e):n.from=s;const i=this.provider.constructor.hexlifyTransaction(n,{from:!0});return this.provider.send("eth_sendTransaction",[i]).then(o=>o,o=>RM("sendTransaction",o,i))})}signTransaction(e){return bi.throwError("signing transactions is unsupported",at.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})}sendTransaction(e){return Yo(this,void 0,void 0,function*(){const r=yield this.provider._getInternalBlockNumber(100+2*this.provider.pollingInterval),n=yield this.sendUncheckedTransaction(e);try{return yield T0(()=>Yo(this,void 0,void 0,function*(){const s=yield this.provider.getTransaction(n);if(s!==null)return this.provider._wrapTransaction(s,n,r)}),{oncePoll:this.provider})}catch(s){throw s.transactionHash=n,s}})}signMessage(e){return Yo(this,void 0,void 0,function*(){const r=typeof e=="string"?Nf(e):e,n=yield this.getAddress();return yield this.provider.send("personal_sign",[Qt(r),n.toLowerCase()])})}_legacySignMessage(e){return Yo(this,void 0,void 0,function*(){const r=typeof e=="string"?Nf(e):e,n=yield this.getAddress();return yield this.provider.send("eth_sign",[n.toLowerCase(),Qt(r)])})}_signTypedData(e,r,n){return Yo(this,void 0,void 0,function*(){const s=yield l5.resolveNames(e,r,n,o=>this.provider.resolveName(o)),i=yield this.getAddress();return yield this.provider.send("eth_signTypedData_v4",[i.toLowerCase(),JSON.stringify(l5.getPayload(s.domain,r,s.value))])})}unlock(e){return Yo(this,void 0,void 0,function*(){const r=this.provider,n=yield this.getAddress();return r.send("personal_unlockAccount",[n.toLowerCase(),e,null])})}};class kF extends NM{sendTransaction(e){return this.sendUncheckedTransaction(e).then(r=>({hash:r,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:n=>this.provider.waitForTransaction(r,n)}))}}const BF={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0,type:!0,accessList:!0,maxFeePerGas:!0,maxPriorityFeePerGas:!0};class u3 extends SF{constructor(e,r){bi.checkNew(new.target,u3);let n=r;n==null&&(n=new Promise((s,i)=>{setTimeout(()=>{this.detectNetwork().then(o=>{s(o)},o=>{i(o)})},0)})),super(n),e||(e=C0(this.constructor,"defaultUrl")()),typeof e=="string"?Nr(this,"connection",Object.freeze({url:e})):Nr(this,"connection",Object.freeze(ds(e))),this._nextId=42}get _cache(){return this._eventLoopCache==null&&(this._eventLoopCache={}),this._eventLoopCache}static defaultUrl(){return"http://localhost:8545"}detectNetwork(){return this._cache.detectNetwork||(this._cache.detectNetwork=this._uncachedDetectNetwork(),setTimeout(()=>{this._cache.detectNetwork=null},0)),this._cache.detectNetwork}_uncachedDetectNetwork(){return Yo(this,void 0,void 0,function*(){yield x5(0);let e=null;try{e=yield this.send("eth_chainId",[])}catch{try{e=yield this.send("net_version",[])}catch{}}if(e!=null){const r=C0(this.constructor,"getNetwork");try{return r(Mt.from(e).toNumber())}catch(n){return bi.throwError("could not detect network",at.errors.NETWORK_ERROR,{chainId:e,event:"invalidNetwork",serverError:n})}}return bi.throwError("could not detect network",at.errors.NETWORK_ERROR,{event:"noNetwork"})})}getSigner(e){return new NM(Cw,this,e)}getUncheckedSigner(e){return this.getSigner(e).connectUnchecked()}listAccounts(){return this.send("eth_accounts",[]).then(e=>e.map(r=>this.formatter.address(r)))}send(e,r){const n={method:e,params:r,id:this._nextId++,jsonrpc:"2.0"};this.emit("debug",{action:"request",request:hp(n),provider:this});const s=["eth_chainId","eth_blockNumber"].indexOf(e)>=0;if(s&&this._cache[e])return this._cache[e];const i=mM(this.connection,JSON.stringify(n),TF).then(o=>(this.emit("debug",{action:"response",request:n,response:o,provider:this}),o),o=>{throw this.emit("debug",{action:"response",error:o,request:n,provider:this}),o});return s&&(this._cache[e]=i,setTimeout(()=>{this._cache[e]=null},0)),i}prepareRequest(e,r){switch(e){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[u0(r.address),r.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[u0(r.address),r.blockTag]];case"getCode":return["eth_getCode",[u0(r.address),r.blockTag]];case"getStorageAt":return["eth_getStorageAt",[u0(r.address),r.position,r.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[r.signedTransaction]];case"getBlock":return r.blockTag?["eth_getBlockByNumber",[r.blockTag,!!r.includeTransactions]]:r.blockHash?["eth_getBlockByHash",[r.blockHash,!!r.includeTransactions]]:null;case"getTransaction":return["eth_getTransactionByHash",[r.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[r.transactionHash]];case"call":return["eth_call",[C0(this.constructor,"hexlifyTransaction")(r.transaction,{from:!0}),r.blockTag]];case"estimateGas":return["eth_estimateGas",[C0(this.constructor,"hexlifyTransaction")(r.transaction,{from:!0})]];case"getLogs":return r.filter&&r.filter.address!=null&&(r.filter.address=u0(r.filter.address)),["eth_getLogs",[r.filter]]}return null}perform(e,r){return Yo(this,void 0,void 0,function*(){if(e==="call"||e==="estimateGas"){const s=r.transaction;if(s&&s.type!=null&&Mt.from(s.type).isZero()&&s.maxFeePerGas==null&&s.maxPriorityFeePerGas==null){const i=yield this.getFeeData();i.maxFeePerGas==null&&i.maxPriorityFeePerGas==null&&(r=ds(r),r.transaction=ds(s),delete r.transaction.type)}}const n=this.prepareRequest(e,r);n==null&&bi.throwError(e+" not implemented",at.errors.NOT_IMPLEMENTED,{operation:e});try{return yield this.send(n[0],n[1])}catch(s){return RM(e,s,r)}})}_startEvent(e){e.tag==="pending"&&this._startPending(),super._startEvent(e)}_startPending(){if(this._pendingFilter!=null)return;const e=this,r=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=r,r.then(function(n){function s(){e.send("eth_getFilterChanges",[n]).then(function(i){if(e._pendingFilter!=r)return null;let o=Promise.resolve();return i.forEach(function(f){e._emitted["t:"+f.toLowerCase()]="pending",o=o.then(function(){return e.getTransaction(f).then(function(u){return e.emit("pending",u),null})})}),o.then(function(){return x5(1e3)})}).then(function(){if(e._pendingFilter!=r){e.send("eth_uninstallFilter",[n]);return}return setTimeout(function(){s()},0),null}).catch(i=>{})}return s(),n}).catch(n=>{})}_stopEvent(e){e.tag==="pending"&&this.listenerCount("pending")===0&&(this._pendingFilter=null),super._stopEvent(e)}static hexlifyTransaction(e,r){const n=ds(BF);if(r)for(const i in r)r[i]&&(n[i]=!0);PL(e,n);const s={};return["gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach(function(i){if(e[i]==null)return;const o=n3(e[i]);i==="gasLimit"&&(i="gas"),s[i]=o}),["from","to","data"].forEach(function(i){e[i]!=null&&(s[i]=Qt(e[i]))}),e.accessList&&(s.accessList=c1(e.accessList)),s}}var IF=globalThis&&globalThis.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})};const PF=new at(Gv);class OF extends u3{detectNetwork(){const e=Object.create(null,{detectNetwork:{get:()=>super.detectNetwork}});return IF(this,void 0,void 0,function*(){let r=this.network;return r==null&&(r=yield e.detectNetwork.call(this),r||PF.throwError("no network detected",at.errors.UNKNOWN_ERROR,{}),this._network==null&&(Nr(this,"_network",r),this.emit("network",r,null))),r})}}const LF="logger/5.7.0";let E5=!1,M5=!1;const Hm={debug:1,default:2,info:2,warning:3,error:4,off:5};let S5=Hm.default,Bb=null;function DF(){try{const t=[];if(["NFD","NFC","NFKD","NFKC"].forEach(e=>{try{if("test".normalize(e)!=="test")throw new Error("bad normalize")}catch{t.push(e)}}),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}const _5=DF();var Tw;(function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"})(Tw||(Tw={}));var Ia;(function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",t.TRANSACTION_REPLACED="TRANSACTION_REPLACED",t.ACTION_REJECTED="ACTION_REJECTED"})(Ia||(Ia={}));const R5="0123456789abcdef";class wn{constructor(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}_log(e,r){const n=e.toLowerCase();Hm[n]==null&&this.throwArgumentError("invalid log level name","logLevel",e),!(S5>Hm[n])&&console.log.apply(console,r)}debug(...e){this._log(wn.levels.DEBUG,e)}info(...e){this._log(wn.levels.INFO,e)}warn(...e){this._log(wn.levels.WARNING,e)}makeError(e,r,n){if(M5)return this.makeError("censored error",r,{});r||(r=wn.errors.UNKNOWN_ERROR),n||(n={});const s=[];Object.keys(n).forEach(u=>{const h=n[u];try{if(h instanceof Uint8Array){let p="";for(let d=0;d>4],p+=R5[h[d]&15];s.push(u+"=Uint8Array(0x"+p+")")}else s.push(u+"="+JSON.stringify(h))}catch{s.push(u+"="+JSON.stringify(n[u].toString()))}}),s.push(`code=${r}`),s.push(`version=${this.version}`);const i=e;let o="";switch(r){case Ia.NUMERIC_FAULT:{o="NUMERIC_FAULT";const u=e;switch(u){case"overflow":case"underflow":case"division-by-zero":o+="-"+u;break;case"negative-power":case"negative-width":o+="-unsupported";break;case"unbound-bitwise-result":o+="-unbound-result";break}break}case Ia.CALL_EXCEPTION:case Ia.INSUFFICIENT_FUNDS:case Ia.MISSING_NEW:case Ia.NONCE_EXPIRED:case Ia.REPLACEMENT_UNDERPRICED:case Ia.TRANSACTION_REPLACED:case Ia.UNPREDICTABLE_GAS_LIMIT:o=r;break}o&&(e+=" [ See: https://links.ethers.org/v5-errors-"+o+" ]"),s.length&&(e+=" ("+s.join(", ")+")");const f=new Error(e);return f.reason=i,f.code=r,Object.keys(n).forEach(function(u){f[u]=n[u]}),f}throwError(e,r,n){throw this.makeError(e,r,n)}throwArgumentError(e,r,n){return this.throwError(e,wn.errors.INVALID_ARGUMENT,{argument:r,value:n})}assert(e,r,n,s){e||this.throwError(r,n,s)}assertArgument(e,r,n,s){e||this.throwArgumentError(r,n,s)}checkNormalize(e){_5&&this.throwError("platform missing String.prototype.normalize",wn.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:_5})}checkSafeUint53(e,r){typeof e=="number"&&(r==null&&(r="value not safe"),(e<0||e>=9007199254740991)&&this.throwError(r,wn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(r,wn.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}checkArgumentCount(e,r,n){n?n=": "+n:n="",er&&this.throwError("too many arguments"+n,wn.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:r})}checkNew(e,r){(e===Object||e==null)&&this.throwError("missing new",wn.errors.MISSING_NEW,{name:r.name})}checkAbstract(e,r){e===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",wn.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):(e===Object||e==null)&&this.throwError("missing new",wn.errors.MISSING_NEW,{name:r.name})}static globalLogger(){return Bb||(Bb=new wn(LF)),Bb}static setCensorship(e,r){if(!e&&r&&this.globalLogger().throwError("cannot permanently disable censorship",wn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),E5){if(!e)return;this.globalLogger().throwError("error censorship permanent",wn.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}M5=!!e,E5=!!r}static setLogLevel(e){const r=Hm[e.toLowerCase()];if(r==null){wn.globalLogger().warn("invalid log level - "+e);return}S5=r}static from(e){return new wn(e)}}wn.errors=Ia;wn.levels=Tw;const FF="bytes/5.7.0",Ib=new wn(FF);function UF(t){return!!t.toHexString}function jm(t){return t.slice||(t.slice=function(){const e=Array.prototype.slice.call(arguments);return jm(new Uint8Array(Array.prototype.slice.apply(t,e)))}),t}function N5(t){return typeof t=="number"&&t==t&&t%1===0}function HF(t){if(t==null)return!1;if(t.constructor===Uint8Array)return!0;if(typeof t=="string"||!N5(t.length)||t.length<0)return!1;for(let e=0;e=256)return!1}return!0}function TM(t,e){if(e||(e={}),typeof t=="number"){Ib.checkSafeUint53(t,"invalid arrayify value");const r=[];for(;t;)r.unshift(t&255),t=parseInt(String(t/256));return r.length===0&&r.push(0),jm(new Uint8Array(r))}if(e.allowMissingPrefix&&typeof t=="string"&&t.substring(0,2)!=="0x"&&(t="0x"+t),UF(t)&&(t=t.toHexString()),kM(t)){let r=t.substring(2);r.length%2&&(e.hexPad==="left"?r="0"+r:e.hexPad==="right"?r+="0":Ib.throwArgumentError("hex data is odd-length","value",t));const n=[];for(let s=0;s0?a:c},i.min=function(a,c){return a.cmp(c)<0?a:c},i.prototype._init=function(a,c,m){if(typeof a=="number")return this._initNumber(a,c,m);if(typeof a=="object")return this._initArray(a,c,m);c==="hex"&&(c=16),n(c===(c|0)&&c>=2&&c<=36),a=a.toString().replace(/\s+/g,"");var b=0;a[0]==="-"&&(b++,this.negative=1),b=0;b-=3)_=a[b]|a[b-1]<<8|a[b-2]<<16,this.words[x]|=_<>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);else if(m==="le")for(b=0,x=0;b>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);return this._strip()};function f(g,a){var c=g.charCodeAt(a);if(c>=48&&c<=57)return c-48;if(c>=65&&c<=70)return c-55;if(c>=97&&c<=102)return c-87;n(!1,"Invalid character in "+g)}function u(g,a,c){var m=f(g,c);return c-1>=a&&(m|=f(g,c-1)<<4),m}i.prototype._parseHex=function(a,c,m){this.length=Math.ceil((a.length-c)/6),this.words=new Array(this.length);for(var b=0;b=c;b-=2)S=u(a,c,b)<=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8;else{var y=a.length-c;for(b=y%2===0?c+1:c;b=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8}this._strip()};function h(g,a,c,m){for(var b=0,x=0,_=Math.min(g.length,c),S=a;S<_;S++){var y=g.charCodeAt(S)-48;b*=m,y>=49?x=y-49+10:y>=17?x=y-17+10:x=y,n(y>=0&&x1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{i.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch{i.prototype.inspect=d}else i.prototype.inspect=d;function d(){return(this.red?""}var v=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],w=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(a,c){a=a||10,c=c|0||1;var m;if(a===16||a==="hex"){m="";for(var b=0,x=0,_=0;_>>24-b&16777215,b+=2,b>=26&&(b-=26,_--),x!==0||_!==this.length-1?m=v[6-y.length]+y+m:m=y+m}for(x!==0&&(m=x.toString(16)+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}if(a===(a|0)&&a>=2&&a<=36){var l=w[a],E=A[a];m="";var Y=this.clone();for(Y.negative=0;!Y.isZero();){var L=Y.modrn(E).toString(a);Y=Y.idivn(E),Y.isZero()?m=L+m:m=v[l-L.length]+L+m}for(this.isZero()&&(m="0"+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var a=this.words[0];return this.length===2?a+=this.words[1]*67108864:this.length===3&&this.words[2]===1?a+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-a:a},i.prototype.toJSON=function(){return this.toString(16,2)},o&&(i.prototype.toBuffer=function(a,c){return this.toArrayLike(o,a,c)}),i.prototype.toArray=function(a,c){return this.toArrayLike(Array,a,c)};var M=function(a,c){return a.allocUnsafe?a.allocUnsafe(c):new a(c)};i.prototype.toArrayLike=function(a,c,m){this._strip();var b=this.byteLength(),x=m||Math.max(1,b);n(b<=x,"byte array longer than desired length"),n(x>0,"Requested array length <= 0");var _=M(a,x),S=c==="le"?"LE":"BE";return this["_toArrayLike"+S](_,b),_},i.prototype._toArrayLikeLE=function(a,c){for(var m=0,b=0,x=0,_=0;x>8&255),m>16&255),_===6?(m>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m=0&&(a[m--]=S>>8&255),m>=0&&(a[m--]=S>>16&255),_===6?(m>=0&&(a[m--]=S>>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m>=0)for(a[m--]=b;m>=0;)a[m--]=0},Math.clz32?i.prototype._countBits=function(a){return 32-Math.clz32(a)}:i.prototype._countBits=function(a){var c=a,m=0;return c>=4096&&(m+=13,c>>>=13),c>=64&&(m+=7,c>>>=7),c>=8&&(m+=4,c>>>=4),c>=2&&(m+=2,c>>>=2),m+c},i.prototype._zeroBits=function(a){if(a===0)return 26;var c=a,m=0;return c&8191||(m+=13,c>>>=13),c&127||(m+=7,c>>>=7),c&15||(m+=4,c>>>=4),c&3||(m+=2,c>>>=2),c&1||m++,m},i.prototype.bitLength=function(){var a=this.words[this.length-1],c=this._countBits(a);return(this.length-1)*26+c};function R(g){for(var a=new Array(g.bitLength()),c=0;c>>b&1}return a}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var a=0,c=0;ca.length?this.clone().ior(a):a.clone().ior(this)},i.prototype.uor=function(a){return this.length>a.length?this.clone().iuor(a):a.clone().iuor(this)},i.prototype.iuand=function(a){var c;this.length>a.length?c=a:c=this;for(var m=0;ma.length?this.clone().iand(a):a.clone().iand(this)},i.prototype.uand=function(a){return this.length>a.length?this.clone().iuand(a):a.clone().iuand(this)},i.prototype.iuxor=function(a){var c,m;this.length>a.length?(c=this,m=a):(c=a,m=this);for(var b=0;ba.length?this.clone().ixor(a):a.clone().ixor(this)},i.prototype.uxor=function(a){return this.length>a.length?this.clone().iuxor(a):a.clone().iuxor(this)},i.prototype.inotn=function(a){n(typeof a=="number"&&a>=0);var c=Math.ceil(a/26)|0,m=a%26;this._expand(c),m>0&&c--;for(var b=0;b0&&(this.words[b]=~this.words[b]&67108863>>26-m),this._strip()},i.prototype.notn=function(a){return this.clone().inotn(a)},i.prototype.setn=function(a,c){n(typeof a=="number"&&a>=0);var m=a/26|0,b=a%26;return this._expand(m+1),c?this.words[m]=this.words[m]|1<a.length?(m=this,b=a):(m=a,b=this);for(var x=0,_=0;_>>26;for(;x!==0&&_>>26;if(this.length=m.length,x!==0)this.words[this.length]=x,this.length++;else if(m!==this)for(;_a.length?this.clone().iadd(a):a.clone().iadd(this)},i.prototype.isub=function(a){if(a.negative!==0){a.negative=0;var c=this.iadd(a);return a.negative=1,c._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(a),this.negative=1,this._normSign();var m=this.cmp(a);if(m===0)return this.negative=0,this.length=1,this.words[0]=0,this;var b,x;m>0?(b=this,x=a):(b=a,x=this);for(var _=0,S=0;S>26,this.words[S]=c&67108863;for(;_!==0&&S>26,this.words[S]=c&67108863;if(_===0&&S>>26,Y=y&67108863,L=Math.min(l,a.length-1),F=Math.max(0,l-g.length+1);F<=L;F++){var V=l-F|0;b=g.words[V]|0,x=a.words[F]|0,_=b*x+Y,E+=_/67108864|0,Y=_&67108863}c.words[l]=Y|0,y=E|0}return y!==0?c.words[l]=y|0:c.length--,c._strip()}var C=function(a,c,m){var b=a.words,x=c.words,_=m.words,S=0,y,l,E,Y=b[0]|0,L=Y&8191,F=Y>>>13,V=b[1]|0,Z=V&8191,ee=V>>>13,ce=b[2]|0,U=ce&8191,j=ce>>>13,se=b[3]|0,re=se&8191,oe=se>>>13,Q=b[4]|0,z=Q&8191,G=Q>>>13,X=b[5]|0,ne=X&8191,ae=X>>>13,Me=b[6]|0,ge=Me&8191,pe=Me>>>13,ot=b[7]|0,we=ot&8191,me=ot>>>13,ut=b[8]|0,ze=ut&8191,_e=ut>>>13,Bt=b[9]|0,qe=Bt&8191,Te=Bt>>>13,xt=x[0]|0,He=xt&8191,Se=xt>>>13,Rt=x[1]|0,Ve=Rt&8191,Ee=Rt>>>13,Nt=x[2]|0,Ze=Nt&8191,Re=Nt>>>13,Ct=x[3]|0,je=Ct&8191,ke=Ct>>>13,Pt=x[4]|0,Ke=Pt&8191,Ne=Pt>>>13,Ot=x[5]|0,De=Ot&8191,Be=Ot>>>13,kt=x[6]|0,Ge=kt&8191,Ie=kt>>>13,Ut=x[7]|0,Ue=Ut&8191,Oe=Ut>>>13,It=x[8]|0,We=It&8191,Pe=It>>>13,_t=x[9]|0,Le=_t&8191,Ye=_t>>>13;m.negative=a.negative^c.negative,m.length=19,y=Math.imul(L,He),l=Math.imul(L,Se),l=l+Math.imul(F,He)|0,E=Math.imul(F,Se);var Ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,y=Math.imul(Z,He),l=Math.imul(Z,Se),l=l+Math.imul(ee,He)|0,E=Math.imul(ee,Se),y=y+Math.imul(L,Ve)|0,l=l+Math.imul(L,Ee)|0,l=l+Math.imul(F,Ve)|0,E=E+Math.imul(F,Ee)|0;var xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(xr>>>26)|0,xr&=67108863,y=Math.imul(U,He),l=Math.imul(U,Se),l=l+Math.imul(j,He)|0,E=Math.imul(j,Se),y=y+Math.imul(Z,Ve)|0,l=l+Math.imul(Z,Ee)|0,l=l+Math.imul(ee,Ve)|0,E=E+Math.imul(ee,Ee)|0,y=y+Math.imul(L,Ze)|0,l=l+Math.imul(L,Re)|0,l=l+Math.imul(F,Ze)|0,E=E+Math.imul(F,Re)|0;var Er=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Er>>>26)|0,Er&=67108863,y=Math.imul(re,He),l=Math.imul(re,Se),l=l+Math.imul(oe,He)|0,E=Math.imul(oe,Se),y=y+Math.imul(U,Ve)|0,l=l+Math.imul(U,Ee)|0,l=l+Math.imul(j,Ve)|0,E=E+Math.imul(j,Ee)|0,y=y+Math.imul(Z,Ze)|0,l=l+Math.imul(Z,Re)|0,l=l+Math.imul(ee,Ze)|0,E=E+Math.imul(ee,Re)|0,y=y+Math.imul(L,je)|0,l=l+Math.imul(L,ke)|0,l=l+Math.imul(F,je)|0,E=E+Math.imul(F,ke)|0;var Gt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,y=Math.imul(z,He),l=Math.imul(z,Se),l=l+Math.imul(G,He)|0,E=Math.imul(G,Se),y=y+Math.imul(re,Ve)|0,l=l+Math.imul(re,Ee)|0,l=l+Math.imul(oe,Ve)|0,E=E+Math.imul(oe,Ee)|0,y=y+Math.imul(U,Ze)|0,l=l+Math.imul(U,Re)|0,l=l+Math.imul(j,Ze)|0,E=E+Math.imul(j,Re)|0,y=y+Math.imul(Z,je)|0,l=l+Math.imul(Z,ke)|0,l=l+Math.imul(ee,je)|0,E=E+Math.imul(ee,ke)|0,y=y+Math.imul(L,Ke)|0,l=l+Math.imul(L,Ne)|0,l=l+Math.imul(F,Ke)|0,E=E+Math.imul(F,Ne)|0;var Vt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,y=Math.imul(ne,He),l=Math.imul(ne,Se),l=l+Math.imul(ae,He)|0,E=Math.imul(ae,Se),y=y+Math.imul(z,Ve)|0,l=l+Math.imul(z,Ee)|0,l=l+Math.imul(G,Ve)|0,E=E+Math.imul(G,Ee)|0,y=y+Math.imul(re,Ze)|0,l=l+Math.imul(re,Re)|0,l=l+Math.imul(oe,Ze)|0,E=E+Math.imul(oe,Re)|0,y=y+Math.imul(U,je)|0,l=l+Math.imul(U,ke)|0,l=l+Math.imul(j,je)|0,E=E+Math.imul(j,ke)|0,y=y+Math.imul(Z,Ke)|0,l=l+Math.imul(Z,Ne)|0,l=l+Math.imul(ee,Ke)|0,E=E+Math.imul(ee,Ne)|0,y=y+Math.imul(L,De)|0,l=l+Math.imul(L,Be)|0,l=l+Math.imul(F,De)|0,E=E+Math.imul(F,Be)|0;var Lr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,y=Math.imul(ge,He),l=Math.imul(ge,Se),l=l+Math.imul(pe,He)|0,E=Math.imul(pe,Se),y=y+Math.imul(ne,Ve)|0,l=l+Math.imul(ne,Ee)|0,l=l+Math.imul(ae,Ve)|0,E=E+Math.imul(ae,Ee)|0,y=y+Math.imul(z,Ze)|0,l=l+Math.imul(z,Re)|0,l=l+Math.imul(G,Ze)|0,E=E+Math.imul(G,Re)|0,y=y+Math.imul(re,je)|0,l=l+Math.imul(re,ke)|0,l=l+Math.imul(oe,je)|0,E=E+Math.imul(oe,ke)|0,y=y+Math.imul(U,Ke)|0,l=l+Math.imul(U,Ne)|0,l=l+Math.imul(j,Ke)|0,E=E+Math.imul(j,Ne)|0,y=y+Math.imul(Z,De)|0,l=l+Math.imul(Z,Be)|0,l=l+Math.imul(ee,De)|0,E=E+Math.imul(ee,Be)|0,y=y+Math.imul(L,Ge)|0,l=l+Math.imul(L,Ie)|0,l=l+Math.imul(F,Ge)|0,E=E+Math.imul(F,Ie)|0;var Zr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,y=Math.imul(we,He),l=Math.imul(we,Se),l=l+Math.imul(me,He)|0,E=Math.imul(me,Se),y=y+Math.imul(ge,Ve)|0,l=l+Math.imul(ge,Ee)|0,l=l+Math.imul(pe,Ve)|0,E=E+Math.imul(pe,Ee)|0,y=y+Math.imul(ne,Ze)|0,l=l+Math.imul(ne,Re)|0,l=l+Math.imul(ae,Ze)|0,E=E+Math.imul(ae,Re)|0,y=y+Math.imul(z,je)|0,l=l+Math.imul(z,ke)|0,l=l+Math.imul(G,je)|0,E=E+Math.imul(G,ke)|0,y=y+Math.imul(re,Ke)|0,l=l+Math.imul(re,Ne)|0,l=l+Math.imul(oe,Ke)|0,E=E+Math.imul(oe,Ne)|0,y=y+Math.imul(U,De)|0,l=l+Math.imul(U,Be)|0,l=l+Math.imul(j,De)|0,E=E+Math.imul(j,Be)|0,y=y+Math.imul(Z,Ge)|0,l=l+Math.imul(Z,Ie)|0,l=l+Math.imul(ee,Ge)|0,E=E+Math.imul(ee,Ie)|0,y=y+Math.imul(L,Ue)|0,l=l+Math.imul(L,Oe)|0,l=l+Math.imul(F,Ue)|0,E=E+Math.imul(F,Oe)|0;var Ir=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,y=Math.imul(ze,He),l=Math.imul(ze,Se),l=l+Math.imul(_e,He)|0,E=Math.imul(_e,Se),y=y+Math.imul(we,Ve)|0,l=l+Math.imul(we,Ee)|0,l=l+Math.imul(me,Ve)|0,E=E+Math.imul(me,Ee)|0,y=y+Math.imul(ge,Ze)|0,l=l+Math.imul(ge,Re)|0,l=l+Math.imul(pe,Ze)|0,E=E+Math.imul(pe,Re)|0,y=y+Math.imul(ne,je)|0,l=l+Math.imul(ne,ke)|0,l=l+Math.imul(ae,je)|0,E=E+Math.imul(ae,ke)|0,y=y+Math.imul(z,Ke)|0,l=l+Math.imul(z,Ne)|0,l=l+Math.imul(G,Ke)|0,E=E+Math.imul(G,Ne)|0,y=y+Math.imul(re,De)|0,l=l+Math.imul(re,Be)|0,l=l+Math.imul(oe,De)|0,E=E+Math.imul(oe,Be)|0,y=y+Math.imul(U,Ge)|0,l=l+Math.imul(U,Ie)|0,l=l+Math.imul(j,Ge)|0,E=E+Math.imul(j,Ie)|0,y=y+Math.imul(Z,Ue)|0,l=l+Math.imul(Z,Oe)|0,l=l+Math.imul(ee,Ue)|0,E=E+Math.imul(ee,Oe)|0,y=y+Math.imul(L,We)|0,l=l+Math.imul(L,Pe)|0,l=l+Math.imul(F,We)|0,E=E+Math.imul(F,Pe)|0;var Dr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Dr>>>26)|0,Dr&=67108863,y=Math.imul(qe,He),l=Math.imul(qe,Se),l=l+Math.imul(Te,He)|0,E=Math.imul(Te,Se),y=y+Math.imul(ze,Ve)|0,l=l+Math.imul(ze,Ee)|0,l=l+Math.imul(_e,Ve)|0,E=E+Math.imul(_e,Ee)|0,y=y+Math.imul(we,Ze)|0,l=l+Math.imul(we,Re)|0,l=l+Math.imul(me,Ze)|0,E=E+Math.imul(me,Re)|0,y=y+Math.imul(ge,je)|0,l=l+Math.imul(ge,ke)|0,l=l+Math.imul(pe,je)|0,E=E+Math.imul(pe,ke)|0,y=y+Math.imul(ne,Ke)|0,l=l+Math.imul(ne,Ne)|0,l=l+Math.imul(ae,Ke)|0,E=E+Math.imul(ae,Ne)|0,y=y+Math.imul(z,De)|0,l=l+Math.imul(z,Be)|0,l=l+Math.imul(G,De)|0,E=E+Math.imul(G,Be)|0,y=y+Math.imul(re,Ge)|0,l=l+Math.imul(re,Ie)|0,l=l+Math.imul(oe,Ge)|0,E=E+Math.imul(oe,Ie)|0,y=y+Math.imul(U,Ue)|0,l=l+Math.imul(U,Oe)|0,l=l+Math.imul(j,Ue)|0,E=E+Math.imul(j,Oe)|0,y=y+Math.imul(Z,We)|0,l=l+Math.imul(Z,Pe)|0,l=l+Math.imul(ee,We)|0,E=E+Math.imul(ee,Pe)|0,y=y+Math.imul(L,Le)|0,l=l+Math.imul(L,Ye)|0,l=l+Math.imul(F,Le)|0,E=E+Math.imul(F,Ye)|0;var ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(ar>>>26)|0,ar&=67108863,y=Math.imul(qe,Ve),l=Math.imul(qe,Ee),l=l+Math.imul(Te,Ve)|0,E=Math.imul(Te,Ee),y=y+Math.imul(ze,Ze)|0,l=l+Math.imul(ze,Re)|0,l=l+Math.imul(_e,Ze)|0,E=E+Math.imul(_e,Re)|0,y=y+Math.imul(we,je)|0,l=l+Math.imul(we,ke)|0,l=l+Math.imul(me,je)|0,E=E+Math.imul(me,ke)|0,y=y+Math.imul(ge,Ke)|0,l=l+Math.imul(ge,Ne)|0,l=l+Math.imul(pe,Ke)|0,E=E+Math.imul(pe,Ne)|0,y=y+Math.imul(ne,De)|0,l=l+Math.imul(ne,Be)|0,l=l+Math.imul(ae,De)|0,E=E+Math.imul(ae,Be)|0,y=y+Math.imul(z,Ge)|0,l=l+Math.imul(z,Ie)|0,l=l+Math.imul(G,Ge)|0,E=E+Math.imul(G,Ie)|0,y=y+Math.imul(re,Ue)|0,l=l+Math.imul(re,Oe)|0,l=l+Math.imul(oe,Ue)|0,E=E+Math.imul(oe,Oe)|0,y=y+Math.imul(U,We)|0,l=l+Math.imul(U,Pe)|0,l=l+Math.imul(j,We)|0,E=E+Math.imul(j,Pe)|0,y=y+Math.imul(Z,Le)|0,l=l+Math.imul(Z,Ye)|0,l=l+Math.imul(ee,Le)|0,E=E+Math.imul(ee,Ye)|0;var mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(mr>>>26)|0,mr&=67108863,y=Math.imul(qe,Ze),l=Math.imul(qe,Re),l=l+Math.imul(Te,Ze)|0,E=Math.imul(Te,Re),y=y+Math.imul(ze,je)|0,l=l+Math.imul(ze,ke)|0,l=l+Math.imul(_e,je)|0,E=E+Math.imul(_e,ke)|0,y=y+Math.imul(we,Ke)|0,l=l+Math.imul(we,Ne)|0,l=l+Math.imul(me,Ke)|0,E=E+Math.imul(me,Ne)|0,y=y+Math.imul(ge,De)|0,l=l+Math.imul(ge,Be)|0,l=l+Math.imul(pe,De)|0,E=E+Math.imul(pe,Be)|0,y=y+Math.imul(ne,Ge)|0,l=l+Math.imul(ne,Ie)|0,l=l+Math.imul(ae,Ge)|0,E=E+Math.imul(ae,Ie)|0,y=y+Math.imul(z,Ue)|0,l=l+Math.imul(z,Oe)|0,l=l+Math.imul(G,Ue)|0,E=E+Math.imul(G,Oe)|0,y=y+Math.imul(re,We)|0,l=l+Math.imul(re,Pe)|0,l=l+Math.imul(oe,We)|0,E=E+Math.imul(oe,Pe)|0,y=y+Math.imul(U,Le)|0,l=l+Math.imul(U,Ye)|0,l=l+Math.imul(j,Le)|0,E=E+Math.imul(j,Ye)|0;var jr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(jr>>>26)|0,jr&=67108863,y=Math.imul(qe,je),l=Math.imul(qe,ke),l=l+Math.imul(Te,je)|0,E=Math.imul(Te,ke),y=y+Math.imul(ze,Ke)|0,l=l+Math.imul(ze,Ne)|0,l=l+Math.imul(_e,Ke)|0,E=E+Math.imul(_e,Ne)|0,y=y+Math.imul(we,De)|0,l=l+Math.imul(we,Be)|0,l=l+Math.imul(me,De)|0,E=E+Math.imul(me,Be)|0,y=y+Math.imul(ge,Ge)|0,l=l+Math.imul(ge,Ie)|0,l=l+Math.imul(pe,Ge)|0,E=E+Math.imul(pe,Ie)|0,y=y+Math.imul(ne,Ue)|0,l=l+Math.imul(ne,Oe)|0,l=l+Math.imul(ae,Ue)|0,E=E+Math.imul(ae,Oe)|0,y=y+Math.imul(z,We)|0,l=l+Math.imul(z,Pe)|0,l=l+Math.imul(G,We)|0,E=E+Math.imul(G,Pe)|0,y=y+Math.imul(re,Le)|0,l=l+Math.imul(re,Ye)|0,l=l+Math.imul(oe,Le)|0,E=E+Math.imul(oe,Ye)|0;var Yr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,y=Math.imul(qe,Ke),l=Math.imul(qe,Ne),l=l+Math.imul(Te,Ke)|0,E=Math.imul(Te,Ne),y=y+Math.imul(ze,De)|0,l=l+Math.imul(ze,Be)|0,l=l+Math.imul(_e,De)|0,E=E+Math.imul(_e,Be)|0,y=y+Math.imul(we,Ge)|0,l=l+Math.imul(we,Ie)|0,l=l+Math.imul(me,Ge)|0,E=E+Math.imul(me,Ie)|0,y=y+Math.imul(ge,Ue)|0,l=l+Math.imul(ge,Oe)|0,l=l+Math.imul(pe,Ue)|0,E=E+Math.imul(pe,Oe)|0,y=y+Math.imul(ne,We)|0,l=l+Math.imul(ne,Pe)|0,l=l+Math.imul(ae,We)|0,E=E+Math.imul(ae,Pe)|0,y=y+Math.imul(z,Le)|0,l=l+Math.imul(z,Ye)|0,l=l+Math.imul(G,Le)|0,E=E+Math.imul(G,Ye)|0;var or=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(or>>>26)|0,or&=67108863,y=Math.imul(qe,De),l=Math.imul(qe,Be),l=l+Math.imul(Te,De)|0,E=Math.imul(Te,Be),y=y+Math.imul(ze,Ge)|0,l=l+Math.imul(ze,Ie)|0,l=l+Math.imul(_e,Ge)|0,E=E+Math.imul(_e,Ie)|0,y=y+Math.imul(we,Ue)|0,l=l+Math.imul(we,Oe)|0,l=l+Math.imul(me,Ue)|0,E=E+Math.imul(me,Oe)|0,y=y+Math.imul(ge,We)|0,l=l+Math.imul(ge,Pe)|0,l=l+Math.imul(pe,We)|0,E=E+Math.imul(pe,Pe)|0,y=y+Math.imul(ne,Le)|0,l=l+Math.imul(ne,Ye)|0,l=l+Math.imul(ae,Le)|0,E=E+Math.imul(ae,Ye)|0;var Qr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,y=Math.imul(qe,Ge),l=Math.imul(qe,Ie),l=l+Math.imul(Te,Ge)|0,E=Math.imul(Te,Ie),y=y+Math.imul(ze,Ue)|0,l=l+Math.imul(ze,Oe)|0,l=l+Math.imul(_e,Ue)|0,E=E+Math.imul(_e,Oe)|0,y=y+Math.imul(we,We)|0,l=l+Math.imul(we,Pe)|0,l=l+Math.imul(me,We)|0,E=E+Math.imul(me,Pe)|0,y=y+Math.imul(ge,Le)|0,l=l+Math.imul(ge,Ye)|0,l=l+Math.imul(pe,Le)|0,E=E+Math.imul(pe,Ye)|0;var Mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,y=Math.imul(qe,Ue),l=Math.imul(qe,Oe),l=l+Math.imul(Te,Ue)|0,E=Math.imul(Te,Oe),y=y+Math.imul(ze,We)|0,l=l+Math.imul(ze,Pe)|0,l=l+Math.imul(_e,We)|0,E=E+Math.imul(_e,Pe)|0,y=y+Math.imul(we,Le)|0,l=l+Math.imul(we,Ye)|0,l=l+Math.imul(me,Le)|0,E=E+Math.imul(me,Ye)|0;var Xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,y=Math.imul(qe,We),l=Math.imul(qe,Pe),l=l+Math.imul(Te,We)|0,E=Math.imul(Te,Pe),y=y+Math.imul(ze,Le)|0,l=l+Math.imul(ze,Ye)|0,l=l+Math.imul(_e,Le)|0,E=E+Math.imul(_e,Ye)|0;var on=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(on>>>26)|0,on&=67108863,y=Math.imul(qe,Le),l=Math.imul(qe,Ye),l=l+Math.imul(Te,Le)|0,E=Math.imul(Te,Ye);var Cr=(S+y|0)+((l&8191)<<13)|0;return S=(E+(l>>>13)|0)+(Cr>>>26)|0,Cr&=67108863,_[0]=Ar,_[1]=xr,_[2]=Er,_[3]=Gt,_[4]=Vt,_[5]=Lr,_[6]=Zr,_[7]=Ir,_[8]=Dr,_[9]=ar,_[10]=mr,_[11]=jr,_[12]=Yr,_[13]=or,_[14]=Qr,_[15]=Mr,_[16]=Xr,_[17]=on,_[18]=Cr,S!==0&&(_[19]=S,m.length++),m};Math.imul||(C=N);function B(g,a,c){c.negative=a.negative^g.negative,c.length=g.length+a.length;for(var m=0,b=0,x=0;x>>26)|0,b+=_>>>26,_&=67108863}c.words[x]=S,m=_,_=b}return m!==0?c.words[x]=m:c.length--,c._strip()}function O(g,a,c){return B(g,a,c)}i.prototype.mulTo=function(a,c){var m,b=this.length+a.length;return this.length===10&&a.length===10?m=C(this,a,c):b<63?m=N(this,a,c):b<1024?m=B(this,a,c):m=O(this,a,c),m},i.prototype.mul=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),this.mulTo(a,c)},i.prototype.mulf=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),O(this,a,c)},i.prototype.imul=function(a){return this.clone().mulTo(a,this)},i.prototype.imuln=function(a){var c=a<0;c&&(a=-a),n(typeof a=="number"),n(a<67108864);for(var m=0,b=0;b>=26,m+=x/67108864|0,m+=_>>>26,this.words[b]=_&67108863}return m!==0&&(this.words[b]=m,this.length++),c?this.ineg():this},i.prototype.muln=function(a){return this.clone().imuln(a)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(a){var c=R(a);if(c.length===0)return new i(1);for(var m=this,b=0;b=0);var c=a%26,m=(a-c)/26,b=67108863>>>26-c<<26-c,x;if(c!==0){var _=0;for(x=0;x>>26-c}_&&(this.words[x]=_,this.length++)}if(m!==0){for(x=this.length-1;x>=0;x--)this.words[x+m]=this.words[x];for(x=0;x=0);var b;c?b=(c-c%26)/26:b=0;var x=a%26,_=Math.min((a-x)/26,this.length),S=67108863^67108863>>>x<_)for(this.length-=_,l=0;l=0&&(E!==0||l>=b);l--){var Y=this.words[l]|0;this.words[l]=E<<26-x|Y>>>x,E=Y&S}return y&&E!==0&&(y.words[y.length++]=E),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},i.prototype.ishrn=function(a,c,m){return n(this.negative===0),this.iushrn(a,c,m)},i.prototype.shln=function(a){return this.clone().ishln(a)},i.prototype.ushln=function(a){return this.clone().iushln(a)},i.prototype.shrn=function(a){return this.clone().ishrn(a)},i.prototype.ushrn=function(a){return this.clone().iushrn(a)},i.prototype.testn=function(a){n(typeof a=="number"&&a>=0);var c=a%26,m=(a-c)/26,b=1<=0);var c=a%26,m=(a-c)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=m)return this;if(c!==0&&m++,this.length=Math.min(m,this.length),c!==0){var b=67108863^67108863>>>c<=67108864;c++)this.words[c]-=67108864,c===this.length-1?this.words[c+1]=1:this.words[c+1]++;return this.length=Math.max(this.length,c+1),this},i.prototype.isubn=function(a){if(n(typeof a=="number"),n(a<67108864),a<0)return this.iaddn(-a);if(this.negative!==0)return this.negative=0,this.iaddn(a),this.negative=1,this;if(this.words[0]-=a,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var c=0;c>26)-(y/67108864|0),this.words[x+m]=_&67108863}for(;x>26,this.words[x+m]=_&67108863;if(S===0)return this._strip();for(n(S===-1),S=0,x=0;x>26,this.words[x]=_&67108863;return this.negative=1,this._strip()},i.prototype._wordDiv=function(a,c){var m=this.length-a.length,b=this.clone(),x=a,_=x.words[x.length-1]|0,S=this._countBits(_);m=26-S,m!==0&&(x=x.ushln(m),b.iushln(m),_=x.words[x.length-1]|0);var y=b.length-x.length,l;if(c!=="mod"){l=new i(null),l.length=y+1,l.words=new Array(l.length);for(var E=0;E=0;L--){var F=(b.words[x.length+L]|0)*67108864+(b.words[x.length+L-1]|0);for(F=Math.min(F/_|0,67108863),b._ishlnsubmul(x,F,L);b.negative!==0;)F--,b.negative=0,b._ishlnsubmul(x,1,L),b.isZero()||(b.negative^=1);l&&(l.words[L]=F)}return l&&l._strip(),b._strip(),c!=="div"&&m!==0&&b.iushrn(m),{div:l||null,mod:b}},i.prototype.divmod=function(a,c,m){if(n(!a.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var b,x,_;return this.negative!==0&&a.negative===0?(_=this.neg().divmod(a,c),c!=="mod"&&(b=_.div.neg()),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.iadd(a)),{div:b,mod:x}):this.negative===0&&a.negative!==0?(_=this.divmod(a.neg(),c),c!=="mod"&&(b=_.div.neg()),{div:b,mod:_.mod}):this.negative&a.negative?(_=this.neg().divmod(a.neg(),c),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.isub(a)),{div:_.div,mod:x}):a.length>this.length||this.cmp(a)<0?{div:new i(0),mod:this}:a.length===1?c==="div"?{div:this.divn(a.words[0]),mod:null}:c==="mod"?{div:null,mod:new i(this.modrn(a.words[0]))}:{div:this.divn(a.words[0]),mod:new i(this.modrn(a.words[0]))}:this._wordDiv(a,c)},i.prototype.div=function(a){return this.divmod(a,"div",!1).div},i.prototype.mod=function(a){return this.divmod(a,"mod",!1).mod},i.prototype.umod=function(a){return this.divmod(a,"mod",!0).mod},i.prototype.divRound=function(a){var c=this.divmod(a);if(c.mod.isZero())return c.div;var m=c.div.negative!==0?c.mod.isub(a):c.mod,b=a.ushrn(1),x=a.andln(1),_=m.cmp(b);return _<0||x===1&&_===0?c.div:c.div.negative!==0?c.div.isubn(1):c.div.iaddn(1)},i.prototype.modrn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=(1<<26)%a,b=0,x=this.length-1;x>=0;x--)b=(m*b+(this.words[x]|0))%a;return c?-b:b},i.prototype.modn=function(a){return this.modrn(a)},i.prototype.idivn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=0,b=this.length-1;b>=0;b--){var x=(this.words[b]|0)+m*67108864;this.words[b]=x/a|0,m=x%a}return this._strip(),c?this.ineg():this},i.prototype.divn=function(a){return this.clone().idivn(a)},i.prototype.egcd=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=new i(0),S=new i(1),y=0;c.isEven()&&m.isEven();)c.iushrn(1),m.iushrn(1),++y;for(var l=m.clone(),E=c.clone();!c.isZero();){for(var Y=0,L=1;!(c.words[0]&L)&&Y<26;++Y,L<<=1);if(Y>0)for(c.iushrn(Y);Y-- >0;)(b.isOdd()||x.isOdd())&&(b.iadd(l),x.isub(E)),b.iushrn(1),x.iushrn(1);for(var F=0,V=1;!(m.words[0]&V)&&F<26;++F,V<<=1);if(F>0)for(m.iushrn(F);F-- >0;)(_.isOdd()||S.isOdd())&&(_.iadd(l),S.isub(E)),_.iushrn(1),S.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(_),x.isub(S)):(m.isub(c),_.isub(b),S.isub(x))}return{a:_,b:S,gcd:m.iushln(y)}},i.prototype._invmp=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=m.clone();c.cmpn(1)>0&&m.cmpn(1)>0;){for(var S=0,y=1;!(c.words[0]&y)&&S<26;++S,y<<=1);if(S>0)for(c.iushrn(S);S-- >0;)b.isOdd()&&b.iadd(_),b.iushrn(1);for(var l=0,E=1;!(m.words[0]&E)&&l<26;++l,E<<=1);if(l>0)for(m.iushrn(l);l-- >0;)x.isOdd()&&x.iadd(_),x.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(x)):(m.isub(c),x.isub(b))}var Y;return c.cmpn(1)===0?Y=b:Y=x,Y.cmpn(0)<0&&Y.iadd(a),Y},i.prototype.gcd=function(a){if(this.isZero())return a.abs();if(a.isZero())return this.abs();var c=this.clone(),m=a.clone();c.negative=0,m.negative=0;for(var b=0;c.isEven()&&m.isEven();b++)c.iushrn(1),m.iushrn(1);do{for(;c.isEven();)c.iushrn(1);for(;m.isEven();)m.iushrn(1);var x=c.cmp(m);if(x<0){var _=c;c=m,m=_}else if(x===0||m.cmpn(1)===0)break;c.isub(m)}while(!0);return m.iushln(b)},i.prototype.invm=function(a){return this.egcd(a).a.umod(a)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(a){return this.words[0]&a},i.prototype.bincn=function(a){n(typeof a=="number");var c=a%26,m=(a-c)/26,b=1<>>26,S&=67108863,this.words[_]=S}return x!==0&&(this.words[_]=x,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(a){var c=a<0;if(this.negative!==0&&!c)return-1;if(this.negative===0&&c)return 1;this._strip();var m;if(this.length>1)m=1;else{c&&(a=-a),n(a<=67108863,"Number is too big");var b=this.words[0]|0;m=b===a?0:ba.length)return 1;if(this.length=0;m--){var b=this.words[m]|0,x=a.words[m]|0;if(b!==x){bx&&(c=1);break}}return c},i.prototype.gtn=function(a){return this.cmpn(a)===1},i.prototype.gt=function(a){return this.cmp(a)===1},i.prototype.gten=function(a){return this.cmpn(a)>=0},i.prototype.gte=function(a){return this.cmp(a)>=0},i.prototype.ltn=function(a){return this.cmpn(a)===-1},i.prototype.lt=function(a){return this.cmp(a)===-1},i.prototype.lten=function(a){return this.cmpn(a)<=0},i.prototype.lte=function(a){return this.cmp(a)<=0},i.prototype.eqn=function(a){return this.cmpn(a)===0},i.prototype.eq=function(a){return this.cmp(a)===0},i.red=function(a){return new P(a)},i.prototype.toRed=function(a){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),a.convertTo(this)._forceRed(a)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(a){return this.red=a,this},i.prototype.forceRed=function(a){return n(!this.red,"Already a number in reduction context"),this._forceRed(a)},i.prototype.redAdd=function(a){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,a)},i.prototype.redIAdd=function(a){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,a)},i.prototype.redSub=function(a){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,a)},i.prototype.redISub=function(a){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,a)},i.prototype.redShl=function(a){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,a)},i.prototype.redMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.mul(this,a)},i.prototype.redIMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.imul(this,a)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(a){return n(this.red&&!a.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,a)};var D={k256:null,p224:null,p192:null,p25519:null};function q(g,a){this.name=g,this.p=new i(a,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}q.prototype._tmp=function(){var a=new i(null);return a.words=new Array(Math.ceil(this.n/13)),a},q.prototype.ireduce=function(a){var c=a,m;do this.split(c,this.tmp),c=this.imulK(c),c=c.iadd(this.tmp),m=c.bitLength();while(m>this.n);var b=m0?c.isub(this.p):c.strip!==void 0?c.strip():c._strip(),c},q.prototype.split=function(a,c){a.iushrn(this.n,0,c)},q.prototype.imulK=function(a){return a.imul(this.k)};function W(){q.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(W,q),W.prototype.split=function(a,c){for(var m=4194303,b=Math.min(a.length,9),x=0;x>>22,_=S}_>>>=22,a.words[x-10]=_,_===0&&a.length>10?a.length-=10:a.length-=9},W.prototype.imulK=function(a){a.words[a.length]=0,a.words[a.length+1]=0,a.length+=2;for(var c=0,m=0;m>>=26,a.words[m]=x,c=b}return c!==0&&(a.words[a.length++]=c),a},i._prime=function(a){if(D[a])return D[a];var c;if(a==="k256")c=new W;else if(a==="p224")c=new k;else if(a==="p192")c=new I;else if(a==="p25519")c=new H;else throw new Error("Unknown prime "+a);return D[a]=c,c};function P(g){if(typeof g=="string"){var a=i._prime(g);this.m=a.p,this.prime=a}else n(g.gtn(1),"modulus must be greater than 1"),this.m=g,this.prime=null}P.prototype._verify1=function(a){n(a.negative===0,"red works only with positives"),n(a.red,"red works only with red numbers")},P.prototype._verify2=function(a,c){n((a.negative|c.negative)===0,"red works only with positives"),n(a.red&&a.red===c.red,"red works only with red numbers")},P.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):(p(a,a.umod(this.m)._forceRed(this)),a)},P.prototype.neg=function(a){return a.isZero()?a.clone():this.m.sub(a)._forceRed(this)},P.prototype.add=function(a,c){this._verify2(a,c);var m=a.add(c);return m.cmp(this.m)>=0&&m.isub(this.m),m._forceRed(this)},P.prototype.iadd=function(a,c){this._verify2(a,c);var m=a.iadd(c);return m.cmp(this.m)>=0&&m.isub(this.m),m},P.prototype.sub=function(a,c){this._verify2(a,c);var m=a.sub(c);return m.cmpn(0)<0&&m.iadd(this.m),m._forceRed(this)},P.prototype.isub=function(a,c){this._verify2(a,c);var m=a.isub(c);return m.cmpn(0)<0&&m.iadd(this.m),m},P.prototype.shl=function(a,c){return this._verify1(a),this.imod(a.ushln(c))},P.prototype.imul=function(a,c){return this._verify2(a,c),this.imod(a.imul(c))},P.prototype.mul=function(a,c){return this._verify2(a,c),this.imod(a.mul(c))},P.prototype.isqr=function(a){return this.imul(a,a.clone())},P.prototype.sqr=function(a){return this.mul(a,a)},P.prototype.sqrt=function(a){if(a.isZero())return a.clone();var c=this.m.andln(3);if(n(c%2===1),c===3){var m=this.m.add(new i(1)).iushrn(2);return this.pow(a,m)}for(var b=this.m.subn(1),x=0;!b.isZero()&&b.andln(1)===0;)x++,b.iushrn(1);n(!b.isZero());var _=new i(1).toRed(this),S=_.redNeg(),y=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);this.pow(l,y).cmp(S)!==0;)l.redIAdd(S);for(var E=this.pow(l,b),Y=this.pow(a,b.addn(1).iushrn(1)),L=this.pow(a,b),F=x;L.cmp(_)!==0;){for(var V=L,Z=0;V.cmp(_)!==0;Z++)V=V.redSqr();n(Z=0;x--){for(var E=c.words[x],Y=l-1;Y>=0;Y--){var L=E>>Y&1;if(_!==b[0]&&(_=this.sqr(_)),L===0&&S===0){y=0;continue}S<<=1,S|=L,y++,!(y!==m&&(x!==0||Y!==0))&&(_=this.mul(_,b[S]),y=0,S=0)}l=26}return _},P.prototype.convertTo=function(a){var c=a.umod(this.m);return c===a?c.clone():c},P.prototype.convertFrom=function(a){var c=a.clone();return c.red=null,c},i.mont=function(a){return new T(a)};function T(g){P.call(this,g),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(T,P),T.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))},T.prototype.convertFrom=function(a){var c=this.imod(a.mul(this.rinv));return c.red=null,c},T.prototype.imul=function(a,c){if(a.isZero()||c.isZero())return a.words[0]=0,a.length=1,a;var m=a.imul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.mul=function(a,c){if(a.isZero()||c.isZero())return new i(0)._forceRed(this);var m=a.mul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.invm=function(a){var c=this.imod(a._invmp(this.m).mul(this.r2));return c._forceRed(this)}})(t,ue)})(jF);const zF=kw;var KF=zF.BN;function qF(t){return new KF(t,36).toString(16)}function GF(t){return"0x"+JA.keccak_256(TM(t))}const VF="address/5.5.0",k0=new wn(VF);function C5(t){kM(t,20)||k0.throwArgumentError("invalid address","address",t),t=t.toLowerCase();const e=t.substring(2).split(""),r=new Uint8Array(40);for(let s=0;s<40;s++)r[s]=e[s].charCodeAt(0);const n=TM(GF(r));for(let s=0;s<40;s+=2)n[s>>1]>>4>=8&&(e[s]=e[s].toUpperCase()),(n[s>>1]&15)>=8&&(e[s+1]=e[s+1].toUpperCase());return"0x"+e.join("")}const WF=9007199254740991;function ZF(t){return Math.log10?Math.log10(t):Math.log(t)/Math.LN10}const h3={};for(let t=0;t<10;t++)h3[String(t)]=String(t);for(let t=0;t<26;t++)h3[String.fromCharCode(65+t)]=String(10+t);const T5=Math.floor(ZF(WF));function YF(t){t=t.toUpperCase(),t=t.substring(4)+t.substring(0,2)+"00";let e=t.split("").map(n=>h3[n]).join("");for(;e.length>=T5;){let n=e.substring(0,T5);e=parseInt(n,10)%97+e.substring(n.length)}let r=String(98-parseInt(e,10)%97);for(;r.length<2;)r="0"+r;return r}function QF(t){let e=null;if(typeof t!="string"&&k0.throwArgumentError("invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/))t.substring(0,2)!=="0x"&&(t="0x"+t),e=C5(t),t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&e!==t&&k0.throwArgumentError("bad address checksum","address",t);else if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(t.substring(2,4)!==YF(t)&&k0.throwArgumentError("bad icap checksum","address",t),e=qF(t.substring(4));e.length<40;)e="0"+e;e=C5("0x"+e)}else k0.throwArgumentError("invalid address","address",t);return e}function XF(t){try{return QF(t),!0}catch{}return!1}var BM={},u1={},d3={},p3={},Ig={},JF={get exports(){return Ig},set exports(t){Ig=t}};function $F(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Pg={},eU={get exports(){return Pg},set exports(t){Pg=t}},Zt={},Cl={},k5={get exports(){return Cl},set exports(t){Cl=t}},Wt={},tU={get exports(){return Wt},set exports(t){Wt=t}};/*! safe-buffer. MIT License. Feross Aboukhadijeh */(function(t,e){var r=mt,n=r.Buffer;function s(o,f){for(var u in o)f[u]=o[u]}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?t.exports=r:(s(r,e),e.Buffer=i);function i(o,f,u){return n(o,f,u)}i.prototype=Object.create(n.prototype),s(n,i),i.from=function(o,f,u){if(typeof o=="number")throw new TypeError("Argument must not be a number");return n(o,f,u)},i.alloc=function(o,f,u){if(typeof o!="number")throw new TypeError("Argument must be a number");var h=n(o);return f!==void 0?typeof u=="string"?h.fill(f,u):h.fill(f):h.fill(0),h},i.allocUnsafe=function(o){if(typeof o!="number")throw new TypeError("Argument must be a number");return n(o)},i.allocUnsafeSlow=function(o){if(typeof o!="number")throw new TypeError("Argument must be a number");return r.SlowBuffer(o)}})(tU,Wt);var Pb=65536,rU=4294967295;function nU(){throw new Error(`Secure random number generation is not supported by this browser. -Use Chrome, Firefox or Internet Explorer 11`)}var iU=Wt.Buffer,Og=ue.crypto||ue.msCrypto;Og&&Og.getRandomValues?k5.exports=sU:k5.exports=nU;function sU(t,e){if(t>rU)throw new RangeError("requested too many random bytes");var r=iU.allocUnsafe(t);if(t>0)if(t>Pb)for(var n=0;n0&&(o=r[0]),o instanceof Error)throw o;var f=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw f.context=o,f}var u=i[e];if(u===void 0)return!1;if(typeof u=="function")B5(u,this,r);else for(var h=u.length,p=UM(u,h),n=0;n0&&o.length>s&&!o.warned){o.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=t,f.type=e,f.count=o.length,fU(f)}return t}en.prototype.addListener=function(e,r){return OM(this,e,r,!1)};en.prototype.on=en.prototype.addListener;en.prototype.prependListener=function(e,r){return OM(this,e,r,!0)};function lU(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function LM(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},s=lU.bind(n);return s.listener=r,n.wrapFn=s,s}en.prototype.once=function(e,r){return Zv(r),this.on(e,LM(this,e,r)),this};en.prototype.prependOnceListener=function(e,r){return Zv(r),this.prependListener(e,LM(this,e,r)),this};en.prototype.removeListener=function(e,r){var n,s,i,o,f;if(Zv(r),s=this._events,s===void 0)return this;if(n=s[e],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete s[e],s.removeListener&&this.emit("removeListener",e,n.listener||r));else if(typeof n!="function"){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){f=n[o].listener,i=o;break}if(i<0)return this;i===0?n.shift():cU(n,i),n.length===1&&(s[e]=n[0]),s.removeListener!==void 0&&this.emit("removeListener",e,f||r)}return this};en.prototype.off=en.prototype.removeListener;en.prototype.removeAllListeners=function(e){var r,n,s;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[e]),this;if(arguments.length===0){var i=Object.keys(n),o;for(s=0;s=0;s--)this.removeListener(e,r[s]);return this};function DM(t,e,r){var n=t._events;if(n===void 0)return[];var s=n[e];return s===void 0?[]:typeof s=="function"?r?[s.listener||s]:[s]:r?uU(s):UM(s,s.length)}en.prototype.listeners=function(e){return DM(this,e,!0)};en.prototype.rawListeners=function(e){return DM(this,e,!1)};en.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):FM.call(t,e)};en.prototype.listenerCount=FM;function FM(t){var e=this._events;if(e!==void 0){var r=e[t];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}en.prototype.eventNames=function(){return this._eventsCount>0?zm(this._events):[]};function UM(t,e){for(var r=new Array(e),n=0;n"u"?dr:bo(Uint8Array),Ic={"%AggregateError%":typeof AggregateError>"u"?dr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?dr:ArrayBuffer,"%ArrayIteratorPrototype%":Eu?bo([][Symbol.iterator]()):dr,"%AsyncFromSyncIteratorPrototype%":dr,"%AsyncFunction%":Bu,"%AsyncGenerator%":Bu,"%AsyncGeneratorFunction%":Bu,"%AsyncIteratorPrototype%":Bu,"%Atomics%":typeof Atomics>"u"?dr:Atomics,"%BigInt%":typeof BigInt>"u"?dr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?dr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?dr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?dr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?dr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?dr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?dr:FinalizationRegistry,"%Function%":qM,"%GeneratorFunction%":Bu,"%Int8Array%":typeof Int8Array>"u"?dr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?dr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?dr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Eu?bo(bo([][Symbol.iterator]())):dr,"%JSON%":typeof JSON=="object"?JSON:dr,"%Map%":typeof Map>"u"?dr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Eu?dr:bo(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?dr:Promise,"%Proxy%":typeof Proxy>"u"?dr:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?dr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?dr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Eu?dr:bo(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?dr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Eu?bo(""[Symbol.iterator]()):dr,"%Symbol%":Eu?Symbol:dr,"%SyntaxError%":pd,"%ThrowTypeError%":MU,"%TypedArray%":SU,"%TypeError%":ch,"%Uint8Array%":typeof Uint8Array>"u"?dr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?dr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?dr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?dr:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?dr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?dr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?dr:WeakSet};try{null.error}catch(t){var _U=bo(bo(t));Ic["%Error.prototype%"]=_U}var RU=function t(e){var r;if(e==="%AsyncFunction%")r=Lb("async function () {}");else if(e==="%GeneratorFunction%")r=Lb("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Lb("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&(r=bo(s.prototype))}return Ic[e]=r,r},O5={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},d1=m3,Lg=EU,NU=d1.call(Function.call,Array.prototype.concat),CU=d1.call(Function.apply,Array.prototype.splice),L5=d1.call(Function.call,String.prototype.replace),Dg=d1.call(Function.call,String.prototype.slice),TU=d1.call(Function.call,RegExp.prototype.exec),kU=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,BU=/\\(\\)?/g,IU=function(e){var r=Dg(e,0,1),n=Dg(e,-1);if(r==="%"&&n!=="%")throw new pd("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new pd("invalid intrinsic syntax, expected opening `%`");var s=[];return L5(e,kU,function(i,o,f,u){s[s.length]=f?L5(u,BU,"$1"):o||i}),s},PU=function(e,r){var n=e,s;if(Lg(O5,n)&&(s=O5[n],n="%"+s[0]+"%"),Lg(Ic,n)){var i=Ic[n];if(i===Bu&&(i=RU(n)),typeof i>"u"&&!r)throw new ch("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new pd("intrinsic "+e+" does not exist!")},g3=function(e,r){if(typeof e!="string"||e.length===0)throw new ch("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new ch('"allowMissing" argument must be a boolean');if(TU(/^%?[^%]*%?$/,e)===null)throw new pd("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=IU(e),s=n.length>0?n[0]:"",i=PU("%"+s+"%",r),o=i.name,f=i.value,u=!1,h=i.alias;h&&(s=h[0],CU(n,NU([0,1],h)));for(var p=1,d=!0;p=n.length){var M=Bc(f,v);d=!!M,d&&"get"in M&&!("originalValue"in M.get)?f=M.get:f=f[v]}else d=Lg(f,v),f=f[v];d&&!u&&(Ic[o]=f)}}return f},Bw={},OU={get exports(){return Bw},set exports(t){Bw=t}};(function(t){var e=m3,r=g3,n=r("%Function.prototype.apply%"),s=r("%Function.prototype.call%"),i=r("%Reflect.apply%",!0)||e.call(s,n),o=r("%Object.getOwnPropertyDescriptor%",!0),f=r("%Object.defineProperty%",!0),u=r("%Math.max%");if(f)try{f({},"a",{value:1})}catch{f=null}t.exports=function(d){var v=i(e,s,arguments);if(o&&f){var w=o(v,"length");w.configurable&&f(v,"length",{value:1+u(0,d.length-(arguments.length-1))})}return v};var h=function(){return i(e,n,arguments)};f?f(t.exports,"apply",{value:h}):t.exports.apply=h})(OU);var GM=g3,VM=Bw,LU=VM(GM("String.prototype.indexOf")),v3=function(e,r){var n=GM(e,!!r);return typeof n=="function"&&LU(e,".prototype.")>-1?VM(n):n},DU=Yv(),FU=v3,Iw=FU("Object.prototype.toString"),Qv=function(e){return DU&&e&&typeof e=="object"&&Symbol.toStringTag in e?!1:Iw(e)==="[object Arguments]"},WM=function(e){return Qv(e)?!0:e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&Iw(e)!=="[object Array]"&&Iw(e.callee)==="[object Function]"},UU=function(){return Qv(arguments)}();Qv.isLegacyArguments=WM;var HU=UU?Qv:WM,jU=Object.prototype.toString,zU=Function.prototype.toString,KU=/^\s*(?:function)?\*/,ZM=Yv(),Fb=Object.getPrototypeOf,qU=function(){if(!ZM)return!1;try{return Function("return function*() {}")()}catch{}},Ub,GU=function(e){if(typeof e!="function")return!1;if(KU.test(zU.call(e)))return!0;if(!ZM){var r=jU.call(e);return r==="[object GeneratorFunction]"}if(!Fb)return!1;if(typeof Ub>"u"){var n=qU();Ub=n?Fb(n):!1}return Fb(e)===Ub},YM=Function.prototype.toString,Gu=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,Pw,Km;if(typeof Gu=="function"&&typeof Object.defineProperty=="function")try{Pw=Object.defineProperty({},"length",{get:function(){throw Km}}),Km={},Gu(function(){throw 42},null,Pw)}catch(t){t!==Km&&(Gu=null)}else Gu=null;var VU=/^\s*class\b/,Ow=function(e){try{var r=YM.call(e);return VU.test(r)}catch{return!1}},Hb=function(e){try{return Ow(e)?!1:(YM.call(e),!0)}catch{return!1}},qm=Object.prototype.toString,WU="[object Object]",ZU="[object Function]",YU="[object GeneratorFunction]",QU="[object HTMLAllCollection]",XU="[object HTML document.all class]",JU="[object HTMLCollection]",$U=typeof Symbol=="function"&&!!Symbol.toStringTag,eH=!(0 in[,]),Lw=function(){return!1};if(typeof document=="object"){var tH=document.all;qm.call(tH)===qm.call(document.all)&&(Lw=function(e){if((eH||!e)&&(typeof e>"u"||typeof e=="object"))try{var r=qm.call(e);return(r===QU||r===XU||r===JU||r===WU)&&e("")==null}catch{}return!1})}var rH=Gu?function(e){if(Lw(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{Gu(e,null,Pw)}catch(r){if(r!==Km)return!1}return!Ow(e)&&Hb(e)}:function(e){if(Lw(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if($U)return Hb(e);if(Ow(e))return!1;var r=qm.call(e);return r!==ZU&&r!==YU&&!/^\[object HTML/.test(r)?!1:Hb(e)},nH=rH,iH=Object.prototype.toString,QM=Object.prototype.hasOwnProperty,sH=function(e,r,n){for(var s=0,i=e.length;s=3&&(s=n),iH.call(e)==="[object Array]"?sH(e,r,s):typeof e=="string"?aH(e,r,s):oH(e,r,s)},XM=fH,jb=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],lH=typeof globalThis>"u"?ue:globalThis,JM=function(){for(var e=[],r=0;r"u"?ue:globalThis,rS=uH(),pH=y3("Array.prototype.indexOf",!0)||function(e,r){for(var n=0;n-1}return Vm?gH(e):!1},sS=XM,vH=JM,aS=v3,Kb=$M,yH=aS("Object.prototype.toString"),oS=Yv(),D5=typeof globalThis>"u"?ue:globalThis,bH=vH(),wH=aS("String.prototype.slice"),fS={},qb=Object.getPrototypeOf;oS&&Kb&&qb&&sS(bH,function(t){if(typeof D5[t]=="function"){var e=new D5[t];if(Symbol.toStringTag in e){var r=qb(e),n=Kb(r,Symbol.toStringTag);if(!n){var s=qb(r);n=Kb(s,Symbol.toStringTag)}fS[t]=n.get}}});var AH=function(e){var r=!1;return sS(fS,function(n,s){if(!r)try{var i=n.call(e);i===s&&(r=i)}catch{}}),r},xH=iS,EH=function(e){return xH(e)?!oS||!(Symbol.toStringTag in e)?wH(yH(e),8,-1):AH(e):!1};(function(t){var e=HU,r=GU,n=EH,s=iS;function i(X){return X.call.bind(X)}var o=typeof BigInt<"u",f=typeof Symbol<"u",u=i(Object.prototype.toString),h=i(Number.prototype.valueOf),p=i(String.prototype.valueOf),d=i(Boolean.prototype.valueOf);if(o)var v=i(BigInt.prototype.valueOf);if(f)var w=i(Symbol.prototype.valueOf);function A(X,ne){if(typeof X!="object")return!1;try{return ne(X),!0}catch{return!1}}t.isArgumentsObject=e,t.isGeneratorFunction=r,t.isTypedArray=s;function M(X){return typeof Promise<"u"&&X instanceof Promise||X!==null&&typeof X=="object"&&typeof X.then=="function"&&typeof X.catch=="function"}t.isPromise=M;function R(X){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(X):s(X)||E(X)}t.isArrayBufferView=R;function N(X){return n(X)==="Uint8Array"}t.isUint8Array=N;function C(X){return n(X)==="Uint8ClampedArray"}t.isUint8ClampedArray=C;function B(X){return n(X)==="Uint16Array"}t.isUint16Array=B;function O(X){return n(X)==="Uint32Array"}t.isUint32Array=O;function D(X){return n(X)==="Int8Array"}t.isInt8Array=D;function q(X){return n(X)==="Int16Array"}t.isInt16Array=q;function W(X){return n(X)==="Int32Array"}t.isInt32Array=W;function k(X){return n(X)==="Float32Array"}t.isFloat32Array=k;function I(X){return n(X)==="Float64Array"}t.isFloat64Array=I;function H(X){return n(X)==="BigInt64Array"}t.isBigInt64Array=H;function P(X){return n(X)==="BigUint64Array"}t.isBigUint64Array=P;function T(X){return u(X)==="[object Map]"}T.working=typeof Map<"u"&&T(new Map);function g(X){return typeof Map>"u"?!1:T.working?T(X):X instanceof Map}t.isMap=g;function a(X){return u(X)==="[object Set]"}a.working=typeof Set<"u"&&a(new Set);function c(X){return typeof Set>"u"?!1:a.working?a(X):X instanceof Set}t.isSet=c;function m(X){return u(X)==="[object WeakMap]"}m.working=typeof WeakMap<"u"&&m(new WeakMap);function b(X){return typeof WeakMap>"u"?!1:m.working?m(X):X instanceof WeakMap}t.isWeakMap=b;function x(X){return u(X)==="[object WeakSet]"}x.working=typeof WeakSet<"u"&&x(new WeakSet);function _(X){return x(X)}t.isWeakSet=_;function S(X){return u(X)==="[object ArrayBuffer]"}S.working=typeof ArrayBuffer<"u"&&S(new ArrayBuffer);function y(X){return typeof ArrayBuffer>"u"?!1:S.working?S(X):X instanceof ArrayBuffer}t.isArrayBuffer=y;function l(X){return u(X)==="[object DataView]"}l.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&l(new DataView(new ArrayBuffer(1),0,1));function E(X){return typeof DataView>"u"?!1:l.working?l(X):X instanceof DataView}t.isDataView=E;var Y=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function L(X){return u(X)==="[object SharedArrayBuffer]"}function F(X){return typeof Y>"u"?!1:(typeof L.working>"u"&&(L.working=L(new Y)),L.working?L(X):X instanceof Y)}t.isSharedArrayBuffer=F;function V(X){return u(X)==="[object AsyncFunction]"}t.isAsyncFunction=V;function Z(X){return u(X)==="[object Map Iterator]"}t.isMapIterator=Z;function ee(X){return u(X)==="[object Set Iterator]"}t.isSetIterator=ee;function ce(X){return u(X)==="[object Generator]"}t.isGeneratorObject=ce;function U(X){return u(X)==="[object WebAssembly.Module]"}t.isWebAssemblyCompiledModule=U;function j(X){return A(X,h)}t.isNumberObject=j;function se(X){return A(X,p)}t.isStringObject=se;function re(X){return A(X,d)}t.isBooleanObject=re;function oe(X){return o&&A(X,v)}t.isBigIntObject=oe;function Q(X){return f&&A(X,w)}t.isSymbolObject=Q;function z(X){return j(X)||se(X)||re(X)||oe(X)||Q(X)}t.isBoxedPrimitive=z;function G(X){return typeof Uint8Array<"u"&&(y(X)||F(X))}t.isAnyArrayBuffer=G,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(X){Object.defineProperty(t,X,{enumerable:!1,value:function(){throw new Error(X+" is not supported in userland")}})})})(zM);var MH=function(e){return e&&typeof e=="object"&&typeof e.copy=="function"&&typeof e.fill=="function"&&typeof e.readUInt8=="function"};(function(t){var e=Object.getOwnPropertyDescriptors||function(E){for(var Y=Object.keys(E),L={},F=0;F=F)return ee;switch(ee){case"%s":return String(L[Y++]);case"%d":return Number(L[Y++]);case"%j":try{return JSON.stringify(L[Y++])}catch{return"[Circular]"}default:return ee}}),Z=L[Y];Y"u")return function(){return t.deprecate(l,E).apply(this,arguments)};var Y=!1;function L(){if(!Y){if(ft.throwDeprecation)throw new Error(E);ft.traceDeprecation?console.trace(E):console.error(E),Y=!0}return l.apply(this,arguments)}return L};var n={},s=/^$/;if({}.NODE_DEBUG){var i={}.NODE_DEBUG;i=i.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),s=new RegExp("^"+i+"$","i")}t.debuglog=function(l){if(l=l.toUpperCase(),!n[l])if(s.test(l)){var E=ft.pid;n[l]=function(){var Y=t.format.apply(t,arguments);console.error("%s %d: %s",l,E,Y)}}else n[l]=function(){};return n[l]};function o(l,E){var Y={seen:[],stylize:u};return arguments.length>=3&&(Y.depth=arguments[2]),arguments.length>=4&&(Y.colors=arguments[3]),N(E)?Y.showHidden=E:E&&t._extend(Y,E),W(Y.showHidden)&&(Y.showHidden=!1),W(Y.depth)&&(Y.depth=2),W(Y.colors)&&(Y.colors=!1),W(Y.customInspect)&&(Y.customInspect=!0),Y.colors&&(Y.stylize=f),p(Y,l,Y.depth)}t.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function f(l,E){var Y=o.styles[E];return Y?"\x1B["+o.colors[Y][0]+"m"+l+"\x1B["+o.colors[Y][1]+"m":l}function u(l,E){return l}function h(l){var E={};return l.forEach(function(Y,L){E[Y]=!0}),E}function p(l,E,Y){if(l.customInspect&&E&&T(E.inspect)&&E.inspect!==t.inspect&&!(E.constructor&&E.constructor.prototype===E)){var L=E.inspect(Y,l);return D(L)||(L=p(l,L,Y)),L}var F=d(l,E);if(F)return F;var V=Object.keys(E),Z=h(V);if(l.showHidden&&(V=Object.getOwnPropertyNames(E)),P(E)&&(V.indexOf("message")>=0||V.indexOf("description")>=0))return v(E);if(V.length===0){if(T(E)){var ee=E.name?": "+E.name:"";return l.stylize("[Function"+ee+"]","special")}if(k(E))return l.stylize(RegExp.prototype.toString.call(E),"regexp");if(H(E))return l.stylize(Date.prototype.toString.call(E),"date");if(P(E))return v(E)}var ce="",U=!1,j=["{","}"];if(R(E)&&(U=!0,j=["[","]"]),T(E)){var se=E.name?": "+E.name:"";ce=" [Function"+se+"]"}if(k(E)&&(ce=" "+RegExp.prototype.toString.call(E)),H(E)&&(ce=" "+Date.prototype.toUTCString.call(E)),P(E)&&(ce=" "+v(E)),V.length===0&&(!U||E.length==0))return j[0]+ce+j[1];if(Y<0)return k(E)?l.stylize(RegExp.prototype.toString.call(E),"regexp"):l.stylize("[Object]","special");l.seen.push(E);var re;return U?re=w(l,E,Y,Z,V):re=V.map(function(oe){return A(l,E,Y,Z,oe,U)}),l.seen.pop(),M(re,ce,j)}function d(l,E){if(W(E))return l.stylize("undefined","undefined");if(D(E)){var Y="'"+JSON.stringify(E).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return l.stylize(Y,"string")}if(O(E))return l.stylize(""+E,"number");if(N(E))return l.stylize(""+E,"boolean");if(C(E))return l.stylize("null","null")}function v(l){return"["+Error.prototype.toString.call(l)+"]"}function w(l,E,Y,L,F){for(var V=[],Z=0,ee=E.length;Z-1&&(V?ee=ee.split(` -`).map(function(U){return" "+U}).join(` -`).slice(2):ee=` -`+ee.split(` -`).map(function(U){return" "+U}).join(` -`))):ee=l.stylize("[Circular]","special")),W(Z)){if(V&&F.match(/^\d+$/))return ee;Z=JSON.stringify(""+F),Z.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(Z=Z.slice(1,-1),Z=l.stylize(Z,"name")):(Z=Z.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),Z=l.stylize(Z,"string"))}return Z+": "+ee}function M(l,E,Y){var L=l.reduce(function(F,V){return V.indexOf(` -`)>=0,F+V.replace(/\u001b\[\d\d?m/g,"").length+1},0);return L>60?Y[0]+(E===""?"":E+` - `)+" "+l.join(`, - `)+" "+Y[1]:Y[0]+E+" "+l.join(", ")+" "+Y[1]}t.types=zM;function R(l){return Array.isArray(l)}t.isArray=R;function N(l){return typeof l=="boolean"}t.isBoolean=N;function C(l){return l===null}t.isNull=C;function B(l){return l==null}t.isNullOrUndefined=B;function O(l){return typeof l=="number"}t.isNumber=O;function D(l){return typeof l=="string"}t.isString=D;function q(l){return typeof l=="symbol"}t.isSymbol=q;function W(l){return l===void 0}t.isUndefined=W;function k(l){return I(l)&&a(l)==="[object RegExp]"}t.isRegExp=k,t.types.isRegExp=k;function I(l){return typeof l=="object"&&l!==null}t.isObject=I;function H(l){return I(l)&&a(l)==="[object Date]"}t.isDate=H,t.types.isDate=H;function P(l){return I(l)&&(a(l)==="[object Error]"||l instanceof Error)}t.isError=P,t.types.isNativeError=P;function T(l){return typeof l=="function"}t.isFunction=T;function g(l){return l===null||typeof l=="boolean"||typeof l=="number"||typeof l=="string"||typeof l=="symbol"||typeof l>"u"}t.isPrimitive=g,t.isBuffer=MH;function a(l){return Object.prototype.toString.call(l)}function c(l){return l<10?"0"+l.toString(10):l.toString(10)}var m=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function b(){var l=new Date,E=[c(l.getHours()),c(l.getMinutes()),c(l.getSeconds())].join(":");return[l.getDate(),m[l.getMonth()],E].join(" ")}t.log=function(){console.log("%s - %s",b(),t.format.apply(t,arguments))},t.inherits=Ht,t._extend=function(l,E){if(!E||!I(E))return l;for(var Y=Object.keys(E),L=Y.length;L--;)l[Y[L]]=E[Y[L]];return l};function x(l,E){return Object.prototype.hasOwnProperty.call(l,E)}var _=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;t.promisify=function(E){if(typeof E!="function")throw new TypeError('The "original" argument must be of type Function');if(_&&E[_]){var Y=E[_];if(typeof Y!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Y,_,{value:Y,enumerable:!1,writable:!1,configurable:!0}),Y}function Y(){for(var L,F,V=new Promise(function(ce,U){L=ce,F=U}),Z=[],ee=0;ee0?this.tail.next=M:this.head=M,this.tail=M,++this.length}},{key:"unshift",value:function(A){var M={data:A,next:this.head};this.length===0&&(this.tail=M),this.head=M,++this.length}},{key:"shift",value:function(){if(this.length!==0){var A=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,A}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(A){if(this.length===0)return"";for(var M=this.head,R=""+M.data;M=M.next;)R+=A+M.data;return R}},{key:"concat",value:function(A){if(this.length===0)return f.alloc(0);for(var M=f.allocUnsafe(A>>>0),R=this.head,N=0;R;)d(R.data,M,N),N+=R.data.length,R=R.next;return M}},{key:"consume",value:function(A,M){var R;return AC.length?C.length:A;if(B===C.length?N+=C:N+=C.slice(0,A),A-=B,A===0){B===C.length?(++R,M.next?this.head=M.next:this.head=this.tail=null):(this.head=M,M.data=C.slice(B));break}++R}return this.length-=R,N}},{key:"_getBuffer",value:function(A){var M=f.allocUnsafe(A),R=this.head,N=1;for(R.data.copy(M),A-=R.data.length;R=R.next;){var C=R.data,B=A>C.length?C.length:A;if(C.copy(M,M.length-A,0,B),A-=B,A===0){B===C.length?(++N,R.next?this.head=R.next:this.head=this.tail=null):(this.head=R,R.data=C.slice(B));break}++N}return this.length-=N,M}},{key:p,value:function(A,M){return h(this,e({},M,{depth:0,customInspect:!1}))}}]),v}(),Gb}function _H(t,e){var r=this,n=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return n||s?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,ft.nextTick(Dw,this,t)):ft.nextTick(Dw,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,function(i){!e&&i?r._writableState?r._writableState.errorEmitted?ft.nextTick(Wm,r):(r._writableState.errorEmitted=!0,ft.nextTick(U5,r,i)):ft.nextTick(U5,r,i):e?(ft.nextTick(Wm,r),e(i)):ft.nextTick(Wm,r)}),this)}function U5(t,e){Dw(t,e),Wm(t)}function Wm(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit("close")}function RH(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function Dw(t,e){t.emit("error",e)}function NH(t,e){var r=t._readableState,n=t._writableState;r&&r.autoDestroy||n&&n.autoDestroy?t.destroy(e):t.emit("error",e)}var lS={destroy:_H,undestroy:RH,errorOrDestroy:NH},nu={};function CH(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}var cS={};function ua(t,e,r){r||(r=Error);function n(i,o,f){return typeof e=="string"?e:e(i,o,f)}var s=function(i){CH(o,i);function o(f,u,h){return i.call(this,n(f,u,h))||this}return o}(r);s.prototype.name=r.name,s.prototype.code=t,cS[t]=s}function H5(t,e){if(Array.isArray(t)){var r=t.length;return t=t.map(function(n){return String(n)}),r>2?"one of ".concat(e," ").concat(t.slice(0,r-1).join(", "),", or ")+t[r-1]:r===2?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}else return"of ".concat(e," ").concat(String(t))}function TH(t,e,r){return t.substr(!r||r<0?0:+r,e.length)===e}function kH(t,e,r){return(r===void 0||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}function BH(t,e,r){return typeof r!="number"&&(r=0),r+e.length>t.length?!1:t.indexOf(e,r)!==-1}ua("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError);ua("ERR_INVALID_ARG_TYPE",function(t,e,r){var n;typeof e=="string"&&TH(e,"not ")?(n="must not be",e=e.replace(/^not /,"")):n="must be";var s;if(kH(t," argument"))s="The ".concat(t," ").concat(n," ").concat(H5(e,"type"));else{var i=BH(t,".")?"property":"argument";s='The "'.concat(t,'" ').concat(i," ").concat(n," ").concat(H5(e,"type"))}return s+=". Received type ".concat(typeof r),s},TypeError);ua("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");ua("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"});ua("ERR_STREAM_PREMATURE_CLOSE","Premature close");ua("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"});ua("ERR_MULTIPLE_CALLBACK","Callback called multiple times");ua("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");ua("ERR_STREAM_WRITE_AFTER_END","write after end");ua("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);ua("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError);ua("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");nu.codes=cS;var IH=nu.codes.ERR_INVALID_OPT_VALUE;function PH(t,e,r){return t.highWaterMark!=null?t.highWaterMark:e?t[r]:null}function OH(t,e,r,n){var s=PH(e,n,r);if(s!=null){if(!(isFinite(s)&&Math.floor(s)===s)||s<0){var i=n?r:"highWaterMark";throw new IH(i,s)}return Math.floor(s)}return t.objectMode?16:16*1024}var uS={getHighWaterMark:OH},hS=LH;function LH(t,e){if(Vb("noDeprecation"))return t;var r=!1;function n(){if(!r){if(Vb("throwDeprecation"))throw new Error(e);Vb("traceDeprecation")?console.trace(e):console.warn(e),r=!0}return t.apply(this,arguments)}return n}function Vb(t){try{if(!ue.localStorage)return!1}catch{return!1}var e=ue.localStorage[t];return e==null?!1:String(e).toLowerCase()==="true"}var Wb,j5;function dS(){if(j5)return Wb;j5=1,Wb=k;function t(F){var V=this;this.next=null,this.entry=null,this.finish=function(){L(V,F)}}var e;k.WritableState=q;var r={deprecate:hS},n=jM,s=mt.Buffer,i=ue.Uint8Array||function(){};function o(F){return s.from(F)}function f(F){return s.isBuffer(F)||F instanceof i}var u=lS,h=uS,p=h.getHighWaterMark,d=nu.codes,v=d.ERR_INVALID_ARG_TYPE,w=d.ERR_METHOD_NOT_IMPLEMENTED,A=d.ERR_MULTIPLE_CALLBACK,M=d.ERR_STREAM_CANNOT_PIPE,R=d.ERR_STREAM_DESTROYED,N=d.ERR_STREAM_NULL_VALUES,C=d.ERR_STREAM_WRITE_AFTER_END,B=d.ERR_UNKNOWN_ENCODING,O=u.errorOrDestroy;Ht(k,n);function D(){}function q(F,V,Z){e=e||md(),F=F||{},typeof Z!="boolean"&&(Z=V instanceof e),this.objectMode=!!F.objectMode,Z&&(this.objectMode=this.objectMode||!!F.writableObjectMode),this.highWaterMark=p(this,F,"writableHighWaterMark",Z),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var ee=F.decodeStrings===!1;this.decodeStrings=!ee,this.defaultEncoding=F.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(ce){m(V,ce)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=F.emitClose!==!1,this.autoDestroy=!!F.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new t(this)}q.prototype.getBuffer=function(){for(var V=this.bufferedRequest,Z=[];V;)Z.push(V),V=V.next;return Z},function(){try{Object.defineProperty(q.prototype,"buffer",{get:r.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var W;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(W=Function.prototype[Symbol.hasInstance],Object.defineProperty(k,Symbol.hasInstance,{value:function(V){return W.call(this,V)?!0:this!==k?!1:V&&V._writableState instanceof q}})):W=function(V){return V instanceof this};function k(F){e=e||md();var V=this instanceof e;if(!V&&!W.call(k,this))return new k(F);this._writableState=new q(F,this,V),this.writable=!0,F&&(typeof F.write=="function"&&(this._write=F.write),typeof F.writev=="function"&&(this._writev=F.writev),typeof F.destroy=="function"&&(this._destroy=F.destroy),typeof F.final=="function"&&(this._final=F.final)),n.call(this)}k.prototype.pipe=function(){O(this,new M)};function I(F,V){var Z=new C;O(F,Z),ft.nextTick(V,Z)}function H(F,V,Z,ee){var ce;return Z===null?ce=new N:typeof Z!="string"&&!V.objectMode&&(ce=new v("chunk",["string","Buffer"],Z)),ce?(O(F,ce),ft.nextTick(ee,ce),!1):!0}k.prototype.write=function(F,V,Z){var ee=this._writableState,ce=!1,U=!ee.objectMode&&f(F);return U&&!s.isBuffer(F)&&(F=o(F)),typeof V=="function"&&(Z=V,V=null),U?V="buffer":V||(V=ee.defaultEncoding),typeof Z!="function"&&(Z=D),ee.ending?I(this,Z):(U||H(this,ee,F,Z))&&(ee.pendingcb++,ce=T(this,ee,U,F,V,Z)),ce},k.prototype.cork=function(){this._writableState.corked++},k.prototype.uncork=function(){var F=this._writableState;F.corked&&(F.corked--,!F.writing&&!F.corked&&!F.bufferProcessing&&F.bufferedRequest&&_(this,F))},k.prototype.setDefaultEncoding=function(V){if(typeof V=="string"&&(V=V.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((V+"").toLowerCase())>-1))throw new B(V);return this._writableState.defaultEncoding=V,this},Object.defineProperty(k.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function P(F,V,Z){return!F.objectMode&&F.decodeStrings!==!1&&typeof V=="string"&&(V=s.from(V,Z)),V}Object.defineProperty(k.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function T(F,V,Z,ee,ce,U){if(!Z){var j=P(V,ee,ce);ee!==j&&(Z=!0,ce="buffer",ee=j)}var se=V.objectMode?1:ee.length;V.length+=se;var re=V.length>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function UH(t,e,r){var n=e.length-1;if(n=0?(s>0&&(t.lastNeed=s-1),s):--n=0?(s>0&&(t.lastNeed=s-2),s):--n=0?(s>0&&(s===2?s=0:t.lastNeed=s-3),s):0))}function HH(t,e,r){if((e[0]&192)!==128)return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if((e[1]&192)!==128)return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&(e[2]&192)!==128)return t.lastNeed=2,"�"}}function jH(t){var e=this.lastTotal-this.lastNeed,r=HH(this,t);if(r!==void 0)return r;if(this.lastNeed<=t.length)return t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,e,0,t.length),this.lastNeed-=t.length}function zH(t,e){var r=UH(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)}function KH(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"�":e}function qH(t,e){if((t.length-e)%2===0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function GH(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function VH(t,e){var r=(t.length-e)%3;return r===0?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function WH(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function ZH(t){return t.toString(this.encoding)}function YH(t){return t&&t.length?this.write(t):""}var q5=nu.codes.ERR_STREAM_PREMATURE_CLOSE;function QH(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,n=new Array(r),s=0;s0)if(typeof j!="string"&&!Q.objectMode&&Object.getPrototypeOf(j)!==n.prototype&&(j=i(j)),re)Q.endEmitted?D(U,new N):P(U,Q,j,!0);else if(Q.ended)D(U,new M);else{if(Q.destroyed)return!1;Q.reading=!1,Q.decoder&&!se?(j=Q.decoder.write(j),Q.objectMode||j.length!==0?P(U,Q,j,!1):_(U,Q)):P(U,Q,j,!1)}else re||(Q.reading=!1,_(U,Q))}return!Q.ended&&(Q.length=g?U=g:(U--,U|=U>>>1,U|=U>>>2,U|=U>>>4,U|=U>>>8,U|=U>>>16,U++),U}function c(U,j){return U<=0||j.length===0&&j.ended?0:j.objectMode?1:U!==U?j.flowing&&j.length?j.buffer.head.data.length:j.length:(U>j.highWaterMark&&(j.highWaterMark=a(U)),U<=j.length?U:j.ended?j.length:(j.needReadable=!0,0))}I.prototype.read=function(U){u("read",U),U=parseInt(U,10);var j=this._readableState,se=U;if(U!==0&&(j.emittedReadable=!1),U===0&&j.needReadable&&((j.highWaterMark!==0?j.length>=j.highWaterMark:j.length>0)||j.ended))return u("read: emitReadable",j.length,j.ended),j.length===0&&j.ended?Z(this):b(this),null;if(U=c(U,j),U===0&&j.ended)return j.length===0&&Z(this),null;var re=j.needReadable;u("need readable",re),(j.length===0||j.length-U0?oe=V(U,j):oe=null,oe===null?(j.needReadable=j.length<=j.highWaterMark,U=0):(j.length-=U,j.awaitDrain=0),j.length===0&&(j.ended||(j.needReadable=!0),se!==U&&j.ended&&Z(this)),oe!==null&&this.emit("data",oe),oe};function m(U,j){if(u("onEofChunk"),!j.ended){if(j.decoder){var se=j.decoder.end();se&&se.length&&(j.buffer.push(se),j.length+=j.objectMode?1:se.length)}j.ended=!0,j.sync?b(U):(j.needReadable=!1,j.emittedReadable||(j.emittedReadable=!0,x(U)))}}function b(U){var j=U._readableState;u("emitReadable",j.needReadable,j.emittedReadable),j.needReadable=!1,j.emittedReadable||(u("emitReadable",j.flowing),j.emittedReadable=!0,ft.nextTick(x,U))}function x(U){var j=U._readableState;u("emitReadable_",j.destroyed,j.length,j.ended),!j.destroyed&&(j.length||j.ended)&&(U.emit("readable"),j.emittedReadable=!1),j.needReadable=!j.flowing&&!j.ended&&j.length<=j.highWaterMark,F(U)}function _(U,j){j.readingMore||(j.readingMore=!0,ft.nextTick(S,U,j))}function S(U,j){for(;!j.reading&&!j.ended&&(j.length1&&ce(re.pipes,U)!==-1)&&!ne&&(u("false write response, pause",re.awaitDrain),re.awaitDrain++),se.pause())}function ge(me){u("onerror",me),we(),U.removeListener("error",ge),e(U,"error")===0&&D(U,me)}W(U,"error",ge);function pe(){U.removeListener("finish",ot),we()}U.once("close",pe);function ot(){u("onfinish"),U.removeListener("close",pe),we()}U.once("finish",ot);function we(){u("unpipe"),se.unpipe(U)}return U.emit("pipe",se),re.flowing||(u("pipe resume"),se.resume()),U};function y(U){return function(){var se=U._readableState;u("pipeOnDrain",se.awaitDrain),se.awaitDrain&&se.awaitDrain--,se.awaitDrain===0&&e(U,"data")&&(se.flowing=!0,F(U))}}I.prototype.unpipe=function(U){var j=this._readableState,se={hasUnpiped:!1};if(j.pipesCount===0)return this;if(j.pipesCount===1)return U&&U!==j.pipes?this:(U||(U=j.pipes),j.pipes=null,j.pipesCount=0,j.flowing=!1,U&&U.emit("unpipe",this,se),this);if(!U){var re=j.pipes,oe=j.pipesCount;j.pipes=null,j.pipesCount=0,j.flowing=!1;for(var Q=0;Q0,re.flowing!==!1&&this.resume()):U==="readable"&&!re.endEmitted&&!re.readableListening&&(re.readableListening=re.needReadable=!0,re.flowing=!1,re.emittedReadable=!1,u("on readable",re.length,re.reading),re.length?b(this):re.reading||ft.nextTick(E,this)),se},I.prototype.addListener=I.prototype.on,I.prototype.removeListener=function(U,j){var se=r.prototype.removeListener.call(this,U,j);return U==="readable"&&ft.nextTick(l,this),se},I.prototype.removeAllListeners=function(U){var j=r.prototype.removeAllListeners.apply(this,arguments);return(U==="readable"||U===void 0)&&ft.nextTick(l,this),j};function l(U){var j=U._readableState;j.readableListening=U.listenerCount("readable")>0,j.resumeScheduled&&!j.paused?j.flowing=!0:U.listenerCount("data")>0&&U.resume()}function E(U){u("readable nexttick read 0"),U.read(0)}I.prototype.resume=function(){var U=this._readableState;return U.flowing||(u("resume"),U.flowing=!U.readableListening,Y(this,U)),U.paused=!1,this};function Y(U,j){j.resumeScheduled||(j.resumeScheduled=!0,ft.nextTick(L,U,j))}function L(U,j){u("resume",j.reading),j.reading||U.read(0),j.resumeScheduled=!1,U.emit("resume"),F(U),j.flowing&&!j.reading&&U.read(0)}I.prototype.pause=function(){return u("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(u("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function F(U){var j=U._readableState;for(u("flow",j.flowing);j.flowing&&U.read()!==null;);}I.prototype.wrap=function(U){var j=this,se=this._readableState,re=!1;U.on("end",function(){if(u("wrapped end"),se.decoder&&!se.ended){var z=se.decoder.end();z&&z.length&&j.push(z)}j.push(null)}),U.on("data",function(z){if(u("wrapped data"),se.decoder&&(z=se.decoder.write(z)),!(se.objectMode&&z==null)&&!(!se.objectMode&&(!z||!z.length))){var G=j.push(z);G||(re=!0,U.pause())}});for(var oe in U)this[oe]===void 0&&typeof U[oe]=="function"&&(this[oe]=function(G){return function(){return U[G].apply(U,arguments)}}(oe));for(var Q=0;Q=j.length?(j.decoder?se=j.buffer.join(""):j.buffer.length===1?se=j.buffer.first():se=j.buffer.concat(j.length),j.buffer.clear()):se=j.buffer.consume(U,j.decoder),se}function Z(U){var j=U._readableState;u("endReadable",j.endEmitted),j.endEmitted||(j.ended=!0,ft.nextTick(ee,j,U))}function ee(U,j){if(u("endReadableNT",U.endEmitted,U.length),!U.endEmitted&&U.length===0&&(U.endEmitted=!0,j.readable=!1,j.emit("end"),U.autoDestroy)){var se=j._writableState;(!se||se.autoDestroy&&se.finished)&&j.destroy()}}typeof Symbol=="function"&&(I.from=function(U,j){return O===void 0&&(O=ej()),O(I,U,j)});function ce(U,j){for(var se=0,re=U.length;se0;return hj(o,u,h,function(p){s||(s=p),p&&i.forEach(Q5),!u&&(i.forEach(Q5),n(s))})});return e.reduce(dj)}var gj=mj;(function(t,e){e=t.exports=mS(),e.Stream=e,e.Readable=e,e.Writable=dS(),e.Duplex=md(),e.Transform=gS,e.PassThrough=oj,e.finished=w3,e.pipeline=gj})(aU,pp);var Fg=Wt.Buffer,bS=pp.Transform,vj=Ht;function yj(t,e){if(!Fg.isBuffer(t)&&typeof t!="string")throw new TypeError(e+" must be a string or a buffer")}function Dl(t){bS.call(this),this._block=Fg.allocUnsafe(t),this._blockSize=t,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}vj(Dl,bS);Dl.prototype._transform=function(t,e,r){var n=null;try{this.update(t,e)}catch(s){n=s}r(n)};Dl.prototype._flush=function(t){var e=null;try{this.push(this.digest())}catch(r){e=r}t(e)};Dl.prototype.update=function(t,e){if(yj(t,"Data"),this._finalized)throw new Error("Digest already called");Fg.isBuffer(t)||(t=Fg.from(t,e));for(var r=this._block,n=0;this._blockOffset+t.length-n>=this._blockSize;){for(var s=this._blockOffset;s0;++i)this._length[i]+=o,o=this._length[i]/4294967296|0,o>0&&(this._length[i]-=4294967296*o);return this};Dl.prototype._update=function(){throw new Error("_update is not implemented")};Dl.prototype.digest=function(t){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var e=this._digest();t!==void 0&&(e=e.toString(t)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return e};Dl.prototype._digest=function(){throw new Error("_digest is not implemented")};var wS=Dl,bj=Ht,AS=wS,wj=Wt.Buffer,Aj=new Array(16);function $v(){AS.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}bj($v,AS);$v.prototype._update=function(){for(var t=Aj,e=0;e<16;++e)t[e]=this._block.readInt32LE(e*4);var r=this._a,n=this._b,s=this._c,i=this._d;r=_i(r,n,s,i,t[0],3614090360,7),i=_i(i,r,n,s,t[1],3905402710,12),s=_i(s,i,r,n,t[2],606105819,17),n=_i(n,s,i,r,t[3],3250441966,22),r=_i(r,n,s,i,t[4],4118548399,7),i=_i(i,r,n,s,t[5],1200080426,12),s=_i(s,i,r,n,t[6],2821735955,17),n=_i(n,s,i,r,t[7],4249261313,22),r=_i(r,n,s,i,t[8],1770035416,7),i=_i(i,r,n,s,t[9],2336552879,12),s=_i(s,i,r,n,t[10],4294925233,17),n=_i(n,s,i,r,t[11],2304563134,22),r=_i(r,n,s,i,t[12],1804603682,7),i=_i(i,r,n,s,t[13],4254626195,12),s=_i(s,i,r,n,t[14],2792965006,17),n=_i(n,s,i,r,t[15],1236535329,22),r=Ri(r,n,s,i,t[1],4129170786,5),i=Ri(i,r,n,s,t[6],3225465664,9),s=Ri(s,i,r,n,t[11],643717713,14),n=Ri(n,s,i,r,t[0],3921069994,20),r=Ri(r,n,s,i,t[5],3593408605,5),i=Ri(i,r,n,s,t[10],38016083,9),s=Ri(s,i,r,n,t[15],3634488961,14),n=Ri(n,s,i,r,t[4],3889429448,20),r=Ri(r,n,s,i,t[9],568446438,5),i=Ri(i,r,n,s,t[14],3275163606,9),s=Ri(s,i,r,n,t[3],4107603335,14),n=Ri(n,s,i,r,t[8],1163531501,20),r=Ri(r,n,s,i,t[13],2850285829,5),i=Ri(i,r,n,s,t[2],4243563512,9),s=Ri(s,i,r,n,t[7],1735328473,14),n=Ri(n,s,i,r,t[12],2368359562,20),r=Ni(r,n,s,i,t[5],4294588738,4),i=Ni(i,r,n,s,t[8],2272392833,11),s=Ni(s,i,r,n,t[11],1839030562,16),n=Ni(n,s,i,r,t[14],4259657740,23),r=Ni(r,n,s,i,t[1],2763975236,4),i=Ni(i,r,n,s,t[4],1272893353,11),s=Ni(s,i,r,n,t[7],4139469664,16),n=Ni(n,s,i,r,t[10],3200236656,23),r=Ni(r,n,s,i,t[13],681279174,4),i=Ni(i,r,n,s,t[0],3936430074,11),s=Ni(s,i,r,n,t[3],3572445317,16),n=Ni(n,s,i,r,t[6],76029189,23),r=Ni(r,n,s,i,t[9],3654602809,4),i=Ni(i,r,n,s,t[12],3873151461,11),s=Ni(s,i,r,n,t[15],530742520,16),n=Ni(n,s,i,r,t[2],3299628645,23),r=Ci(r,n,s,i,t[0],4096336452,6),i=Ci(i,r,n,s,t[7],1126891415,10),s=Ci(s,i,r,n,t[14],2878612391,15),n=Ci(n,s,i,r,t[5],4237533241,21),r=Ci(r,n,s,i,t[12],1700485571,6),i=Ci(i,r,n,s,t[3],2399980690,10),s=Ci(s,i,r,n,t[10],4293915773,15),n=Ci(n,s,i,r,t[1],2240044497,21),r=Ci(r,n,s,i,t[8],1873313359,6),i=Ci(i,r,n,s,t[15],4264355552,10),s=Ci(s,i,r,n,t[6],2734768916,15),n=Ci(n,s,i,r,t[13],1309151649,21),r=Ci(r,n,s,i,t[4],4149444226,6),i=Ci(i,r,n,s,t[11],3174756917,10),s=Ci(s,i,r,n,t[2],718787259,15),n=Ci(n,s,i,r,t[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+s|0,this._d=this._d+i|0};$v.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=wj.allocUnsafe(16);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t};function ey(t,e){return t<>>32-e}function _i(t,e,r,n,s,i,o){return ey(t+(e&r|~e&n)+s+i|0,o)+e|0}function Ri(t,e,r,n,s,i,o){return ey(t+(e&n|r&~n)+s+i|0,o)+e|0}function Ni(t,e,r,n,s,i,o){return ey(t+(e^r^n)+s+i|0,o)+e|0}function Ci(t,e,r,n,s,i,o){return ey(t+(r^(e|~n))+s+i|0,o)+e|0}var A3=$v,e2=mt.Buffer,xj=Ht,xS=wS,Ej=new Array(16),h0=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],d0=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],p0=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],m0=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],g0=[0,1518500249,1859775393,2400959708,2840853838],v0=[1352829926,1548603684,1836072691,2053994217,0];function ty(){xS.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}xj(ty,xS);ty.prototype._update=function(){for(var t=Ej,e=0;e<16;++e)t[e]=this._block.readInt32LE(e*4);for(var r=this._a|0,n=this._b|0,s=this._c|0,i=this._d|0,o=this._e|0,f=this._a|0,u=this._b|0,h=this._c|0,p=this._d|0,d=this._e|0,v=0;v<80;v+=1){var w,A;v<16?(w=X5(r,n,s,i,o,t[h0[v]],g0[0],p0[v]),A=tx(f,u,h,p,d,t[d0[v]],v0[0],m0[v])):v<32?(w=J5(r,n,s,i,o,t[h0[v]],g0[1],p0[v]),A=ex(f,u,h,p,d,t[d0[v]],v0[1],m0[v])):v<48?(w=$5(r,n,s,i,o,t[h0[v]],g0[2],p0[v]),A=$5(f,u,h,p,d,t[d0[v]],v0[2],m0[v])):v<64?(w=ex(r,n,s,i,o,t[h0[v]],g0[3],p0[v]),A=J5(f,u,h,p,d,t[d0[v]],v0[3],m0[v])):(w=tx(r,n,s,i,o,t[h0[v]],g0[4],p0[v]),A=X5(f,u,h,p,d,t[d0[v]],v0[4],m0[v])),r=o,o=i,i=zc(s,10),s=n,n=w,f=d,d=p,p=zc(h,10),h=u,u=A}var M=this._b+s+p|0;this._b=this._c+i+d|0,this._c=this._d+o+f|0,this._d=this._e+r+u|0,this._e=this._a+n+h|0,this._a=M};ty.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=e2.alloc?e2.alloc(20):new e2(20);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t.writeInt32LE(this._e,16),t};function zc(t,e){return t<>>32-e}function X5(t,e,r,n,s,i,o,f){return zc(t+(e^r^n)+i+o|0,f)+s|0}function J5(t,e,r,n,s,i,o,f){return zc(t+(e&r|~e&n)+i+o|0,f)+s|0}function $5(t,e,r,n,s,i,o,f){return zc(t+((e|~r)^n)+i+o|0,f)+s|0}function ex(t,e,r,n,s,i,o,f){return zc(t+(e&n|r&~n)+i+o|0,f)+s|0}function tx(t,e,r,n,s,i,o,f){return zc(t+(e^(r|~n))+i+o|0,f)+s|0}var x3=ty,gp={},Mj={get exports(){return gp},set exports(t){gp=t}},ES=Wt.Buffer;function ry(t,e){this._block=ES.alloc(t),this._finalSize=e,this._blockSize=t,this._len=0}ry.prototype.update=function(t,e){typeof t=="string"&&(e=e||"utf8",t=ES.from(t,e));for(var r=this._block,n=this._blockSize,s=t.length,i=this._len,o=0;o=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=this._len*8;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(r&4294967295)>>>0,s=(r-n)/4294967296;this._block.writeUInt32BE(s,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var i=this._hash();return t?i.toString(t):i};ry.prototype._update=function(){throw new Error("_update must be implemented by subclass")};var Od=ry,Sj=Ht,MS=Od,_j=Wt.Buffer,Rj=[1518500249,1859775393,-1894007588,-899497514],Nj=new Array(80);function m1(){this.init(),this._w=Nj,MS.call(this,64,56)}Sj(m1,MS);m1.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function Cj(t){return t<<5|t>>>27}function Tj(t){return t<<30|t>>>2}function kj(t,e,r,n){return t===0?e&r|~e&n:t===2?e&r|e&n|r&n:e^r^n}m1.prototype._update=function(t){for(var e=this._w,r=this._a|0,n=this._b|0,s=this._c|0,i=this._d|0,o=this._e|0,f=0;f<16;++f)e[f]=t.readInt32BE(f*4);for(;f<80;++f)e[f]=e[f-3]^e[f-8]^e[f-14]^e[f-16];for(var u=0;u<80;++u){var h=~~(u/20),p=Cj(r)+kj(h,n,s,i)+o+e[u]+Rj[h]|0;o=i,i=s,s=Tj(n),n=r,r=p}this._a=r+this._a|0,this._b=n+this._b|0,this._c=s+this._c|0,this._d=i+this._d|0,this._e=o+this._e|0};m1.prototype._hash=function(){var t=_j.allocUnsafe(20);return t.writeInt32BE(this._a|0,0),t.writeInt32BE(this._b|0,4),t.writeInt32BE(this._c|0,8),t.writeInt32BE(this._d|0,12),t.writeInt32BE(this._e|0,16),t};var Bj=m1,Ij=Ht,SS=Od,Pj=Wt.Buffer,Oj=[1518500249,1859775393,-1894007588,-899497514],Lj=new Array(80);function g1(){this.init(),this._w=Lj,SS.call(this,64,56)}Ij(g1,SS);g1.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function Dj(t){return t<<1|t>>>31}function Fj(t){return t<<5|t>>>27}function Uj(t){return t<<30|t>>>2}function Hj(t,e,r,n){return t===0?e&r|~e&n:t===2?e&r|e&n|r&n:e^r^n}g1.prototype._update=function(t){for(var e=this._w,r=this._a|0,n=this._b|0,s=this._c|0,i=this._d|0,o=this._e|0,f=0;f<16;++f)e[f]=t.readInt32BE(f*4);for(;f<80;++f)e[f]=Dj(e[f-3]^e[f-8]^e[f-14]^e[f-16]);for(var u=0;u<80;++u){var h=~~(u/20),p=Fj(r)+Hj(h,n,s,i)+o+e[u]+Oj[h]|0;o=i,i=s,s=Uj(n),n=r,r=p}this._a=r+this._a|0,this._b=n+this._b|0,this._c=s+this._c|0,this._d=i+this._d|0,this._e=o+this._e|0};g1.prototype._hash=function(){var t=Pj.allocUnsafe(20);return t.writeInt32BE(this._a|0,0),t.writeInt32BE(this._b|0,4),t.writeInt32BE(this._c|0,8),t.writeInt32BE(this._d|0,12),t.writeInt32BE(this._e|0,16),t};var jj=g1,zj=Ht,_S=Od,Kj=Wt.Buffer,qj=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],Gj=new Array(64);function v1(){this.init(),this._w=Gj,_S.call(this,64,56)}zj(v1,_S);v1.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this};function Vj(t,e,r){return r^t&(e^r)}function Wj(t,e,r){return t&e|r&(t|e)}function Zj(t){return(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10)}function Yj(t){return(t>>>6|t<<26)^(t>>>11|t<<21)^(t>>>25|t<<7)}function Qj(t){return(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3}function Xj(t){return(t>>>17|t<<15)^(t>>>19|t<<13)^t>>>10}v1.prototype._update=function(t){for(var e=this._w,r=this._a|0,n=this._b|0,s=this._c|0,i=this._d|0,o=this._e|0,f=this._f|0,u=this._g|0,h=this._h|0,p=0;p<16;++p)e[p]=t.readInt32BE(p*4);for(;p<64;++p)e[p]=Xj(e[p-2])+e[p-7]+Qj(e[p-15])+e[p-16]|0;for(var d=0;d<64;++d){var v=h+Yj(o)+Vj(o,f,u)+qj[d]+e[d]|0,w=Zj(r)+Wj(r,n,s)|0;h=u,u=f,f=o,o=i+v|0,i=s,s=n,n=r,r=v+w|0}this._a=r+this._a|0,this._b=n+this._b|0,this._c=s+this._c|0,this._d=i+this._d|0,this._e=o+this._e|0,this._f=f+this._f|0,this._g=u+this._g|0,this._h=h+this._h|0};v1.prototype._hash=function(){var t=Kj.allocUnsafe(32);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t.writeInt32BE(this._h,28),t};var RS=v1,Jj=Ht,$j=RS,ez=Od,tz=Wt.Buffer,rz=new Array(64);function ny(){this.init(),this._w=rz,ez.call(this,64,56)}Jj(ny,$j);ny.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this};ny.prototype._hash=function(){var t=tz.allocUnsafe(28);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t};var nz=ny,iz=Ht,NS=Od,sz=Wt.Buffer,rx=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],az=new Array(160);function y1(){this.init(),this._w=az,NS.call(this,128,112)}iz(y1,NS);y1.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this};function nx(t,e,r){return r^t&(e^r)}function ix(t,e,r){return t&e|r&(t|e)}function sx(t,e){return(t>>>28|e<<4)^(e>>>2|t<<30)^(e>>>7|t<<25)}function ax(t,e){return(t>>>14|e<<18)^(t>>>18|e<<14)^(e>>>9|t<<23)}function oz(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^t>>>7}function fz(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^(t>>>7|e<<25)}function lz(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^t>>>6}function cz(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^(t>>>6|e<<26)}function si(t,e){return t>>>0>>0?1:0}y1.prototype._update=function(t){for(var e=this._w,r=this._ah|0,n=this._bh|0,s=this._ch|0,i=this._dh|0,o=this._eh|0,f=this._fh|0,u=this._gh|0,h=this._hh|0,p=this._al|0,d=this._bl|0,v=this._cl|0,w=this._dl|0,A=this._el|0,M=this._fl|0,R=this._gl|0,N=this._hl|0,C=0;C<32;C+=2)e[C]=t.readInt32BE(C*4),e[C+1]=t.readInt32BE(C*4+4);for(;C<160;C+=2){var B=e[C-30],O=e[C-15*2+1],D=oz(B,O),q=fz(O,B);B=e[C-2*2],O=e[C-2*2+1];var W=lz(B,O),k=cz(O,B),I=e[C-7*2],H=e[C-7*2+1],P=e[C-16*2],T=e[C-16*2+1],g=q+H|0,a=D+I+si(g,q)|0;g=g+k|0,a=a+W+si(g,k)|0,g=g+T|0,a=a+P+si(g,T)|0,e[C]=a,e[C+1]=g}for(var c=0;c<160;c+=2){a=e[c],g=e[c+1];var m=ix(r,n,s),b=ix(p,d,v),x=sx(r,p),_=sx(p,r),S=ax(o,A),y=ax(A,o),l=rx[c],E=rx[c+1],Y=nx(o,f,u),L=nx(A,M,R),F=N+y|0,V=h+S+si(F,N)|0;F=F+L|0,V=V+Y+si(F,L)|0,F=F+E|0,V=V+l+si(F,E)|0,F=F+g|0,V=V+a+si(F,g)|0;var Z=_+b|0,ee=x+m+si(Z,_)|0;h=u,N=R,u=f,R=M,f=o,M=A,A=w+F|0,o=i+V+si(A,w)|0,i=s,w=v,s=n,v=d,n=r,d=p,p=F+Z|0,r=V+ee+si(p,F)|0}this._al=this._al+p|0,this._bl=this._bl+d|0,this._cl=this._cl+v|0,this._dl=this._dl+w|0,this._el=this._el+A|0,this._fl=this._fl+M|0,this._gl=this._gl+R|0,this._hl=this._hl+N|0,this._ah=this._ah+r+si(this._al,p)|0,this._bh=this._bh+n+si(this._bl,d)|0,this._ch=this._ch+s+si(this._cl,v)|0,this._dh=this._dh+i+si(this._dl,w)|0,this._eh=this._eh+o+si(this._el,A)|0,this._fh=this._fh+f+si(this._fl,M)|0,this._gh=this._gh+u+si(this._gl,R)|0,this._hh=this._hh+h+si(this._hl,N)|0};y1.prototype._hash=function(){var t=sz.allocUnsafe(64);function e(r,n,s){t.writeInt32BE(r,s),t.writeInt32BE(n,s+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),t};var CS=y1,uz=Ht,hz=CS,dz=Od,pz=Wt.Buffer,mz=new Array(160);function iy(){this.init(),this._w=mz,dz.call(this,128,112)}uz(iy,hz);iy.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this};iy.prototype._hash=function(){var t=pz.allocUnsafe(48);function e(r,n,s){t.writeInt32BE(r,s),t.writeInt32BE(n,s+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),t};var gz=iy,iu=Mj.exports=function(e){e=e.toLowerCase();var r=iu[e];if(!r)throw new Error(e+" is not supported (we accept pull requests)");return new r};iu.sha=Bj;iu.sha1=jj;iu.sha224=nz;iu.sha256=RS;iu.sha384=gz;iu.sha512=CS;var t2,ox;function TS(){return ox||(ox=1,t2=Tl.EventEmitter),t2}var r2,fx;function vz(){if(fx)return r2;fx=1;function t(d,v){var w=Object.keys(d);if(Object.getOwnPropertySymbols){var A=Object.getOwnPropertySymbols(d);v&&(A=A.filter(function(M){return Object.getOwnPropertyDescriptor(d,M).enumerable})),w.push.apply(w,A)}return w}function e(d){for(var v=1;v0?this.tail.next=w:this.head=w,this.tail=w,++this.length}unshift(v){const w={data:v,next:this.head};this.length===0&&(this.tail=w),this.head=w,++this.length}shift(){if(this.length===0)return;const v=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,v}clear(){this.head=this.tail=null,this.length=0}join(v){if(this.length===0)return"";for(var w=this.head,A=""+w.data;w=w.next;)A+=v+w.data;return A}concat(v){if(this.length===0)return o.alloc(0);const w=o.allocUnsafe(v>>>0);for(var A=this.head,M=0;A;)p(A.data,w,M),M+=A.data.length,A=A.next;return w}consume(v,w){var A;return vR.length?R.length:v;if(N===R.length?M+=R:M+=R.slice(0,v),v-=N,v===0){N===R.length?(++A,w.next?this.head=w.next:this.head=this.tail=null):(this.head=w,w.data=R.slice(N));break}++A}return this.length-=A,M}_getBuffer(v){const w=o.allocUnsafe(v);var A=this.head,M=1;for(A.data.copy(w),v-=A.data.length;A=A.next;){const R=A.data,N=v>R.length?R.length:v;if(R.copy(w,w.length-v,0,N),v-=N,v===0){N===R.length?(++M,A.next?this.head=A.next:this.head=this.tail=null):(this.head=A,A.data=R.slice(N));break}++M}return this.length-=M,w}[h](v,w){return u(this,e(e({},w),{},{depth:0,customInspect:!1}))}},r2}var n2,lx;function kS(){if(lx)return n2;lx=1;function t(o,f){const u=this._readableState&&this._readableState.destroyed,h=this._writableState&&this._writableState.destroyed;return u||h?(f?f(o):o&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,ft.nextTick(s,this,o)):ft.nextTick(s,this,o)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(o||null,p=>{!f&&p?this._writableState?this._writableState.errorEmitted?ft.nextTick(r,this):(this._writableState.errorEmitted=!0,ft.nextTick(e,this,p)):ft.nextTick(e,this,p):f?(ft.nextTick(r,this),f(p)):ft.nextTick(r,this)}),this)}function e(o,f){s(o,f),r(o)}function r(o){o._writableState&&!o._writableState.emitClose||o._readableState&&!o._readableState.emitClose||o.emit("close")}function n(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function s(o,f){o.emit("error",f)}function i(o,f){const u=o._readableState,h=o._writableState;u&&u.autoDestroy||h&&h.autoDestroy?o.destroy(f):o.emit("error",f)}return n2={destroy:t,undestroy:n,errorOrDestroy:i},n2}var i2={},cx;function Ld(){if(cx)return i2;cx=1;function t(f,u){f.prototype=Object.create(u.prototype),f.prototype.constructor=f,f.__proto__=u}var e={};function r(f,u,h){h||(h=Error);function p(v,w,A){return typeof u=="string"?u:u(v,w,A)}var d=function(v){t(w,v);function w(A,M,R){return v.call(this,p(A,M,R))||this}return w}(h);d.prototype.name=h.name,d.prototype.code=f,e[f]=d}function n(f,u){if(Array.isArray(f)){var h=f.length;return f=f.map(function(p){return String(p)}),h>2?"one of ".concat(u," ").concat(f.slice(0,h-1).join(", "),", or ")+f[h-1]:h===2?"one of ".concat(u," ").concat(f[0]," or ").concat(f[1]):"of ".concat(u," ").concat(f[0])}else return"of ".concat(u," ").concat(String(f))}function s(f,u,h){return f.substr(!h||h<0?0:+h,u.length)===u}function i(f,u,h){return(h===void 0||h>f.length)&&(h=f.length),f.substring(h-u.length,h)===u}function o(f,u,h){return typeof h!="number"&&(h=0),h+u.length>f.length?!1:f.indexOf(u,h)!==-1}return r("ERR_INVALID_OPT_VALUE",function(f,u){return'The value "'+u+'" is invalid for option "'+f+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(f,u,h){var p;typeof u=="string"&&s(u,"not ")?(p="must not be",u=u.replace(/^not /,"")):p="must be";var d;if(i(f," argument"))d="The ".concat(f," ").concat(p," ").concat(n(u,"type"));else{var v=o(f,".")?"property":"argument";d='The "'.concat(f,'" ').concat(v," ").concat(p," ").concat(n(u,"type"))}return d+=". Received type ".concat(typeof h),d},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(f){return"The "+f+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(f){return"Cannot call "+f+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(f){return"Unknown encoding: "+f},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),i2.codes=e,i2}var s2,ux;function BS(){if(ux)return s2;ux=1;const t=Ld().codes.ERR_INVALID_OPT_VALUE;function e(n,s,i){return n.highWaterMark!=null?n.highWaterMark:s?n[i]:null}function r(n,s,i,o){const f=e(s,o,i);if(f!=null){if(!(isFinite(f)&&Math.floor(f)===f)||f<0){const u=o?i:"highWaterMark";throw new t(u,f)}return Math.floor(f)}return n.objectMode?16:16*1024}return s2={getHighWaterMark:r},s2}var a2,hx;function IS(){if(hx)return a2;hx=1,a2=k;function t(F){this.next=null,this.entry=null,this.finish=()=>{L(this,F)}}var e;k.WritableState=q;const r={deprecate:hS};var n=TS();const s=mt.Buffer,i=(typeof ue<"u"?ue:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function o(F){return s.from(F)}function f(F){return s.isBuffer(F)||F instanceof i}const u=kS(),h=BS(),p=h.getHighWaterMark,d=Ld().codes,v=d.ERR_INVALID_ARG_TYPE,w=d.ERR_METHOD_NOT_IMPLEMENTED,A=d.ERR_MULTIPLE_CALLBACK,M=d.ERR_STREAM_CANNOT_PIPE,R=d.ERR_STREAM_DESTROYED,N=d.ERR_STREAM_NULL_VALUES,C=d.ERR_STREAM_WRITE_AFTER_END,B=d.ERR_UNKNOWN_ENCODING,O=u.errorOrDestroy;Ht(k,n);function D(){}function q(F,V,Z){e=e||vd(),F=F||{},typeof Z!="boolean"&&(Z=V instanceof e),this.objectMode=!!F.objectMode,Z&&(this.objectMode=this.objectMode||!!F.writableObjectMode),this.highWaterMark=p(this,F,"writableHighWaterMark",Z),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var ee=F.decodeStrings===!1;this.decodeStrings=!ee,this.defaultEncoding=F.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(ce){m(V,ce)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=F.emitClose!==!1,this.autoDestroy=!!F.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new t(this)}q.prototype.getBuffer=function(){for(var V=this.bufferedRequest,Z=[];V;)Z.push(V),V=V.next;return Z},function(){try{Object.defineProperty(q.prototype,"buffer",{get:r.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var W;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(W=Function.prototype[Symbol.hasInstance],Object.defineProperty(k,Symbol.hasInstance,{value:function(V){return W.call(this,V)?!0:this!==k?!1:V&&V._writableState instanceof q}})):W=function(V){return V instanceof this};function k(F){e=e||vd();const V=this instanceof e;if(!V&&!W.call(k,this))return new k(F);this._writableState=new q(F,this,V),this.writable=!0,F&&(typeof F.write=="function"&&(this._write=F.write),typeof F.writev=="function"&&(this._writev=F.writev),typeof F.destroy=="function"&&(this._destroy=F.destroy),typeof F.final=="function"&&(this._final=F.final)),n.call(this)}k.prototype.pipe=function(){O(this,new M)};function I(F,V){var Z=new C;O(F,Z),ft.nextTick(V,Z)}function H(F,V,Z,ee){var ce;return Z===null?ce=new N:typeof Z!="string"&&!V.objectMode&&(ce=new v("chunk",["string","Buffer"],Z)),ce?(O(F,ce),ft.nextTick(ee,ce),!1):!0}k.prototype.write=function(F,V,Z){var ee=this._writableState,ce=!1,U=!ee.objectMode&&f(F);return U&&!s.isBuffer(F)&&(F=o(F)),typeof V=="function"&&(Z=V,V=null),U?V="buffer":V||(V=ee.defaultEncoding),typeof Z!="function"&&(Z=D),ee.ending?I(this,Z):(U||H(this,ee,F,Z))&&(ee.pendingcb++,ce=T(this,ee,U,F,V,Z)),ce},k.prototype.cork=function(){this._writableState.corked++},k.prototype.uncork=function(){var F=this._writableState;F.corked&&(F.corked--,!F.writing&&!F.corked&&!F.bufferProcessing&&F.bufferedRequest&&_(this,F))},k.prototype.setDefaultEncoding=function(V){if(typeof V=="string"&&(V=V.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((V+"").toLowerCase())>-1))throw new B(V);return this._writableState.defaultEncoding=V,this},Object.defineProperty(k.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function P(F,V,Z){return!F.objectMode&&F.decodeStrings!==!1&&typeof V=="string"&&(V=s.from(V,Z)),V}Object.defineProperty(k.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function T(F,V,Z,ee,ce,U){if(!Z){var j=P(V,ee,ce);ee!==j&&(Z=!0,ce="buffer",ee=j)}var se=V.objectMode?1:ee.length;V.length+=se;var re=V.length{V.pendingcb--,Z&&O(F,Z),V.prefinished=!0,F.emit("prefinish"),E(F,V)})}function l(F,V){!V.prefinished&&!V.finalCalled&&(typeof F._final=="function"&&!V.destroyed?(V.pendingcb++,V.finalCalled=!0,ft.nextTick(y,F,V)):(V.prefinished=!0,F.emit("prefinish")))}function E(F,V){var Z=S(V);if(Z&&(l(F,V),V.pendingcb===0&&(V.finished=!0,F.emit("finish"),V.autoDestroy))){const ee=F._readableState;(!ee||ee.autoDestroy&&ee.endEmitted)&&F.destroy()}return Z}function Y(F,V,Z){V.ending=!0,E(F,V),Z&&(V.finished?ft.nextTick(Z):F.once("finish",Z)),V.ended=!0,F.writable=!1}function L(F,V,Z){var ee=F.entry;for(F.entry=null;ee;){var ce=ee.callback;V.pendingcb--,ce(Z),ee=ee.next}V.corkedRequestsFree.next=F}return Object.defineProperty(k.prototype,"destroyed",{enumerable:!1,get(){return this._writableState===void 0?!1:this._writableState.destroyed},set(F){this._writableState&&(this._writableState.destroyed=F)}}),k.prototype.destroy=u.destroy,k.prototype._undestroy=u.undestroy,k.prototype._destroy=function(F,V){V(F)},a2}var o2,dx;function vd(){if(dx)return o2;dx=1;var t=Object.keys||function(f){var u=[];for(var h in f)u.push(h);return u};o2=s;const e=PS(),r=IS();Ht(s,e);{const f=t(r.prototype);for(var n=0;n{i.writable||v()};var d=i._writableState&&i._writableState.finished;const v=()=>{h=!1,d=!0,u||f.call(i)};var w=i._readableState&&i._readableState.endEmitted;const A=()=>{u=!1,w=!0,h||f.call(i)},M=C=>{f.call(i,C)},R=()=>{let C;if(u&&!w)return(!i._readableState||!i._readableState.ended)&&(C=new t),f.call(i,C);if(h&&!d)return(!i._writableState||!i._writableState.ended)&&(C=new t),f.call(i,C)},N=()=>{i.req.on("finish",v)};return n(i)?(i.on("complete",v),i.on("abort",R),i.req?N():i.on("request",N)):h&&!i._writableState&&(i.on("end",p),i.on("close",p)),i.on("end",A),i.on("finish",v),o.error!==!1&&i.on("error",M),i.on("close",R),function(){i.removeListener("complete",v),i.removeListener("abort",R),i.removeListener("request",N),i.req&&i.req.removeListener("finish",v),i.removeListener("end",p),i.removeListener("close",p),i.removeListener("finish",v),i.removeListener("end",A),i.removeListener("error",M),i.removeListener("close",R)}}return f2=s,f2}var l2,mx;function yz(){if(mx)return l2;mx=1;const t=E3(),e=Symbol("lastResolve"),r=Symbol("lastReject"),n=Symbol("error"),s=Symbol("ended"),i=Symbol("lastPromise"),o=Symbol("handlePromise"),f=Symbol("stream");function u(M,R){return{value:M,done:R}}function h(M){const R=M[e];if(R!==null){const N=M[f].read();N!==null&&(M[i]=null,M[e]=null,M[r]=null,R(u(N,!1)))}}function p(M){ft.nextTick(h,M)}function d(M,R){return(N,C)=>{M.then(()=>{if(R[s]){N(u(void 0,!0));return}R[o](N,C)},C)}}const v=Object.getPrototypeOf(function(){}),w=Object.setPrototypeOf({get stream(){return this[f]},next(){const M=this[n];if(M!==null)return Promise.reject(M);if(this[s])return Promise.resolve(u(void 0,!0));if(this[f].destroyed)return new Promise((C,B)=>{ft.nextTick(()=>{this[n]?B(this[n]):C(u(void 0,!0))})});const R=this[i];let N;if(R)N=new Promise(d(R,this));else{const C=this[f].read();if(C!==null)return Promise.resolve(u(C,!1));N=new Promise(this[o])}return this[i]=N,N},[Symbol.asyncIterator](){return this},return(){return new Promise((M,R)=>{this[f].destroy(null,N=>{if(N){R(N);return}M(u(void 0,!0))})})}},v);return l2=M=>{const R=Object.create(w,{[f]:{value:M,writable:!0},[e]:{value:null,writable:!0},[r]:{value:null,writable:!0},[n]:{value:null,writable:!0},[s]:{value:M._readableState.endEmitted,writable:!0},[o]:{value:(N,C)=>{const B=R[f].read();B?(R[i]=null,R[e]=null,R[r]=null,N(u(B,!1))):(R[e]=N,R[r]=C)},writable:!0}});return R[i]=null,t(M,N=>{if(N&&N.code!=="ERR_STREAM_PREMATURE_CLOSE"){const B=R[r];B!==null&&(R[i]=null,R[e]=null,R[r]=null,B(N)),R[n]=N;return}const C=R[e];C!==null&&(R[i]=null,R[e]=null,R[r]=null,C(u(void 0,!0))),R[s]=!0}),M.on("readable",p.bind(null,R)),R},l2}var c2,gx;function bz(){return gx||(gx=1,c2=function(){throw new Error("Readable.from is not available in the browser")}),c2}var u2,vx;function PS(){if(vx)return u2;vx=1,u2=I;var t;I.ReadableState=k,Tl.EventEmitter;var e=function(j,se){return j.listeners(se).length},r=TS();const n=mt.Buffer,s=(typeof ue<"u"?ue:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function i(U){return n.from(U)}function o(U){return n.isBuffer(U)||U instanceof s}const f=h1;let u;f&&f.debuglog?u=f.debuglog("stream"):u=function(){};const h=vz(),p=kS(),d=BS(),v=d.getHighWaterMark,w=Ld().codes,A=w.ERR_INVALID_ARG_TYPE,M=w.ERR_STREAM_PUSH_AFTER_EOF,R=w.ERR_METHOD_NOT_IMPLEMENTED,N=w.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;let C,B,O;Ht(I,r);const D=p.errorOrDestroy,q=["error","close","destroy","pause","resume"];function W(U,j,se){if(typeof U.prependListener=="function")return U.prependListener(j,se);!U._events||!U._events[j]?U.on(j,se):Array.isArray(U._events[j])?U._events[j].unshift(se):U._events[j]=[se,U._events[j]]}function k(U,j,se){t=t||vd(),U=U||{},typeof se!="boolean"&&(se=j instanceof t),this.objectMode=!!U.objectMode,se&&(this.objectMode=this.objectMode||!!U.readableObjectMode),this.highWaterMark=v(this,U,"readableHighWaterMark",se),this.buffer=new h,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=U.emitClose!==!1,this.autoDestroy=!!U.autoDestroy,this.destroyed=!1,this.defaultEncoding=U.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,U.encoding&&(C||(C=gd.StringDecoder),this.decoder=new C(U.encoding),this.encoding=U.encoding)}function I(U){if(t=t||vd(),!(this instanceof I))return new I(U);const j=this instanceof t;this._readableState=new k(U,this,j),this.readable=!0,U&&(typeof U.read=="function"&&(this._read=U.read),typeof U.destroy=="function"&&(this._destroy=U.destroy)),r.call(this)}Object.defineProperty(I.prototype,"destroyed",{enumerable:!1,get(){return this._readableState===void 0?!1:this._readableState.destroyed},set(U){this._readableState&&(this._readableState.destroyed=U)}}),I.prototype.destroy=p.destroy,I.prototype._undestroy=p.undestroy,I.prototype._destroy=function(U,j){j(U)},I.prototype.push=function(U,j){var se=this._readableState,re;return se.objectMode?re=!0:typeof U=="string"&&(j=j||se.defaultEncoding,j!==se.encoding&&(U=n.from(U,j),j=""),re=!0),H(this,U,j,!1,re)},I.prototype.unshift=function(U){return H(this,U,null,!0,!1)};function H(U,j,se,re,oe){u("readableAddChunk",j);var Q=U._readableState;if(j===null)Q.reading=!1,m(U,Q);else{var z;if(oe||(z=T(Q,j)),z)D(U,z);else if(Q.objectMode||j&&j.length>0)if(typeof j!="string"&&!Q.objectMode&&Object.getPrototypeOf(j)!==n.prototype&&(j=i(j)),re)Q.endEmitted?D(U,new N):P(U,Q,j,!0);else if(Q.ended)D(U,new M);else{if(Q.destroyed)return!1;Q.reading=!1,Q.decoder&&!se?(j=Q.decoder.write(j),Q.objectMode||j.length!==0?P(U,Q,j,!1):_(U,Q)):P(U,Q,j,!1)}else re||(Q.reading=!1,_(U,Q))}return!Q.ended&&(Q.length=g?U=g:(U--,U|=U>>>1,U|=U>>>2,U|=U>>>4,U|=U>>>8,U|=U>>>16,U++),U}function c(U,j){return U<=0||j.length===0&&j.ended?0:j.objectMode?1:U!==U?j.flowing&&j.length?j.buffer.head.data.length:j.length:(U>j.highWaterMark&&(j.highWaterMark=a(U)),U<=j.length?U:j.ended?j.length:(j.needReadable=!0,0))}I.prototype.read=function(U){u("read",U),U=parseInt(U,10);var j=this._readableState,se=U;if(U!==0&&(j.emittedReadable=!1),U===0&&j.needReadable&&((j.highWaterMark!==0?j.length>=j.highWaterMark:j.length>0)||j.ended))return u("read: emitReadable",j.length,j.ended),j.length===0&&j.ended?Z(this):b(this),null;if(U=c(U,j),U===0&&j.ended)return j.length===0&&Z(this),null;var re=j.needReadable;u("need readable",re),(j.length===0||j.length-U0?oe=V(U,j):oe=null,oe===null?(j.needReadable=j.length<=j.highWaterMark,U=0):(j.length-=U,j.awaitDrain=0),j.length===0&&(j.ended||(j.needReadable=!0),se!==U&&j.ended&&Z(this)),oe!==null&&this.emit("data",oe),oe};function m(U,j){if(u("onEofChunk"),!j.ended){if(j.decoder){var se=j.decoder.end();se&&se.length&&(j.buffer.push(se),j.length+=j.objectMode?1:se.length)}j.ended=!0,j.sync?b(U):(j.needReadable=!1,j.emittedReadable||(j.emittedReadable=!0,x(U)))}}function b(U){var j=U._readableState;u("emitReadable",j.needReadable,j.emittedReadable),j.needReadable=!1,j.emittedReadable||(u("emitReadable",j.flowing),j.emittedReadable=!0,ft.nextTick(x,U))}function x(U){var j=U._readableState;u("emitReadable_",j.destroyed,j.length,j.ended),!j.destroyed&&(j.length||j.ended)&&(U.emit("readable"),j.emittedReadable=!1),j.needReadable=!j.flowing&&!j.ended&&j.length<=j.highWaterMark,F(U)}function _(U,j){j.readingMore||(j.readingMore=!0,ft.nextTick(S,U,j))}function S(U,j){for(;!j.reading&&!j.ended&&(j.length1&&ce(re.pipes,U)!==-1)&&!ne&&(u("false write response, pause",re.awaitDrain),re.awaitDrain++),se.pause())}function ge(me){u("onerror",me),we(),U.removeListener("error",ge),e(U,"error")===0&&D(U,me)}W(U,"error",ge);function pe(){U.removeListener("finish",ot),we()}U.once("close",pe);function ot(){u("onfinish"),U.removeListener("close",pe),we()}U.once("finish",ot);function we(){u("unpipe"),se.unpipe(U)}return U.emit("pipe",se),re.flowing||(u("pipe resume"),se.resume()),U};function y(U){return function(){var se=U._readableState;u("pipeOnDrain",se.awaitDrain),se.awaitDrain&&se.awaitDrain--,se.awaitDrain===0&&e(U,"data")&&(se.flowing=!0,F(U))}}I.prototype.unpipe=function(U){var j=this._readableState,se={hasUnpiped:!1};if(j.pipesCount===0)return this;if(j.pipesCount===1)return U&&U!==j.pipes?this:(U||(U=j.pipes),j.pipes=null,j.pipesCount=0,j.flowing=!1,U&&U.emit("unpipe",this,se),this);if(!U){var re=j.pipes,oe=j.pipesCount;j.pipes=null,j.pipesCount=0,j.flowing=!1;for(var Q=0;Q0,re.flowing!==!1&&this.resume()):U==="readable"&&!re.endEmitted&&!re.readableListening&&(re.readableListening=re.needReadable=!0,re.flowing=!1,re.emittedReadable=!1,u("on readable",re.length,re.reading),re.length?b(this):re.reading||ft.nextTick(E,this)),se},I.prototype.addListener=I.prototype.on,I.prototype.removeListener=function(U,j){const se=r.prototype.removeListener.call(this,U,j);return U==="readable"&&ft.nextTick(l,this),se},I.prototype.removeAllListeners=function(U){const j=r.prototype.removeAllListeners.apply(this,arguments);return(U==="readable"||U===void 0)&&ft.nextTick(l,this),j};function l(U){const j=U._readableState;j.readableListening=U.listenerCount("readable")>0,j.resumeScheduled&&!j.paused?j.flowing=!0:U.listenerCount("data")>0&&U.resume()}function E(U){u("readable nexttick read 0"),U.read(0)}I.prototype.resume=function(){var U=this._readableState;return U.flowing||(u("resume"),U.flowing=!U.readableListening,Y(this,U)),U.paused=!1,this};function Y(U,j){j.resumeScheduled||(j.resumeScheduled=!0,ft.nextTick(L,U,j))}function L(U,j){u("resume",j.reading),j.reading||U.read(0),j.resumeScheduled=!1,U.emit("resume"),F(U),j.flowing&&!j.reading&&U.read(0)}I.prototype.pause=function(){return u("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(u("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function F(U){const j=U._readableState;for(u("flow",j.flowing);j.flowing&&U.read()!==null;);}I.prototype.wrap=function(U){var j=this._readableState,se=!1;U.on("end",()=>{if(u("wrapped end"),j.decoder&&!j.ended){var Q=j.decoder.end();Q&&Q.length&&this.push(Q)}this.push(null)}),U.on("data",Q=>{if(u("wrapped data"),j.decoder&&(Q=j.decoder.write(Q)),!(j.objectMode&&Q==null)&&!(!j.objectMode&&(!Q||!Q.length))){var z=this.push(Q);z||(se=!0,U.pause())}});for(var re in U)this[re]===void 0&&typeof U[re]=="function"&&(this[re]=function(z){return function(){return U[z].apply(U,arguments)}}(re));for(var oe=0;oe{u("wrapped _read",Q),se&&(se=!1,U.resume())},this},typeof Symbol=="function"&&(I.prototype[Symbol.asyncIterator]=function(){return B===void 0&&(B=yz()),B(this)}),Object.defineProperty(I.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(I.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(I.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(j){this._readableState&&(this._readableState.flowing=j)}}),I._fromList=V,Object.defineProperty(I.prototype,"readableLength",{enumerable:!1,get(){return this._readableState.length}});function V(U,j){if(j.length===0)return null;var se;return j.objectMode?se=j.buffer.shift():!U||U>=j.length?(j.decoder?se=j.buffer.join(""):j.buffer.length===1?se=j.buffer.first():se=j.buffer.concat(j.length),j.buffer.clear()):se=j.buffer.consume(U,j.decoder),se}function Z(U){var j=U._readableState;u("endReadable",j.endEmitted),j.endEmitted||(j.ended=!0,ft.nextTick(ee,j,U))}function ee(U,j){if(u("endReadableNT",U.endEmitted,U.length),!U.endEmitted&&U.length===0&&(U.endEmitted=!0,j.readable=!1,j.emit("end"),U.autoDestroy)){const se=j._writableState;(!se||se.autoDestroy&&se.finished)&&j.destroy()}}typeof Symbol=="function"&&(I.from=function(U,j){return O===void 0&&(O=bz()),O(I,U,j)});function ce(U,j){for(var se=0,re=U.length;se{h(this,p,d)}):h(this,null,null)}f.prototype.push=function(p,d){return this._transformState.needTransform=!1,i.prototype.push.call(this,p,d)},f.prototype._transform=function(p,d,v){v(new e("_transform()"))},f.prototype._write=function(p,d,v){var w=this._transformState;if(w.writecb=v,w.writechunk=p,w.writeencoding=d,!w.transforming){var A=this._readableState;(w.needTransform||A.needReadable||A.length{d(v)})};function h(p,d,v){if(d)return p.emit("error",d);if(v!=null&&p.push(v),p._writableState.length)throw new s;if(p._transformState.transforming)throw new n;return p.push(null)}return h2}var d2,bx;function wz(){if(bx)return d2;bx=1,d2=e;const t=OS();Ht(e,t);function e(r){if(!(this instanceof e))return new e(r);t.call(this,r)}return e.prototype._transform=function(r,n,s){s(null,r)},d2}var p2,wx;function Az(){if(wx)return p2;wx=1;let t;function e(v){let w=!1;return function(){w||(w=!0,v(...arguments))}}const r=Ld().codes,n=r.ERR_MISSING_ARGS,s=r.ERR_STREAM_DESTROYED;function i(v){if(v)throw v}function o(v){return v.setHeader&&typeof v.abort=="function"}function f(v,w,A,M){M=e(M);let R=!1;v.on("close",()=>{R=!0}),t===void 0&&(t=E3()),t(v,{readable:w,writable:A},C=>{if(C)return M(C);R=!0,M()});let N=!1;return C=>{if(!R&&!N){if(N=!0,o(v))return v.abort();if(typeof v.destroy=="function")return v.destroy();M(C||new s("pipe"))}}}function u(v){v()}function h(v,w){return v.pipe(w)}function p(v){return!v.length||typeof v[v.length-1]!="function"?i:v.pop()}function d(){for(var v=arguments.length,w=new Array(v),A=0;A0;return f(C,O,D,function(q){R||(R=q),q&&N.forEach(u),!O&&(N.forEach(u),M(R))})});return w.reduce(h)}return p2=d,p2}var xz=na,M3=Tl.EventEmitter,Ez=Ht;Ez(na,M3);na.Readable=PS();na.Writable=IS();na.Duplex=vd();na.Transform=OS();na.PassThrough=wz();na.finished=E3();na.pipeline=Az();na.Stream=na;function na(){M3.call(this)}na.prototype.pipe=function(t,e){var r=this;function n(p){t.writable&&t.write(p)===!1&&r.pause&&r.pause()}r.on("data",n);function s(){r.readable&&r.resume&&r.resume()}t.on("drain",s),!t._isStdio&&(!e||e.end!==!1)&&(r.on("end",o),r.on("close",f));var i=!1;function o(){i||(i=!0,t.end())}function f(){i||(i=!0,typeof t.destroy=="function"&&t.destroy())}function u(p){if(h(),M3.listenerCount(this,"error")===0)throw p}r.on("error",u),t.on("error",u);function h(){r.removeListener("data",n),t.removeListener("drain",s),r.removeListener("end",o),r.removeListener("close",f),r.removeListener("error",u),t.removeListener("error",u),r.removeListener("end",h),r.removeListener("close",h),t.removeListener("close",h)}return r.on("end",h),r.on("close",h),t.on("close",h),t.emit("pipe",r),t};var LS=Wt.Buffer,DS=xz.Transform,Mz=gd.StringDecoder,Sz=Ht;function Za(t){DS.call(this),this.hashMode=typeof t=="string",this.hashMode?this[t]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}Sz(Za,DS);Za.prototype.update=function(t,e,r){typeof t=="string"&&(t=LS.from(t,e));var n=this._update(t);return this.hashMode?this:(r&&(n=this._toString(n,r)),n)};Za.prototype.setAutoPadding=function(){};Za.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")};Za.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")};Za.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")};Za.prototype._transform=function(t,e,r){var n;try{this.hashMode?this._update(t):this.push(this._update(t))}catch(s){n=s}finally{r(n)}};Za.prototype._flush=function(t){var e;try{this.push(this.__final())}catch(r){e=r}t(e)};Za.prototype._finalOrDigest=function(t){var e=this.__final()||LS.alloc(0);return t&&(e=this._toString(e,t,!0)),e};Za.prototype._toString=function(t,e,r){if(this._decoder||(this._decoder=new Mz(e),this._encoding=e),this._encoding!==e)throw new Error("can't switch encodings");var n=this._decoder.write(t);return r&&(n+=this._decoder.end()),n};var Fl=Za,_z=Ht,Rz=A3,Nz=x3,Cz=gp,FS=Fl;function sy(t){FS.call(this,"digest"),this._hash=t}_z(sy,FS);sy.prototype._update=function(t){this._hash.update(t)};sy.prototype._final=function(){return this._hash.digest()};var b1=function(e){return e=e.toLowerCase(),e==="md5"?new Rz:e==="rmd160"||e==="ripemd160"?new Nz:new sy(Cz(e))},Tz=Ht,cc=Wt.Buffer,US=Fl,kz=cc.alloc(128),Mu=64;function ay(t,e){US.call(this,"digest"),typeof e=="string"&&(e=cc.from(e)),this._alg=t,this._key=e,e.length>Mu?e=t(e):e.lengthr){var n=t==="rmd160"?new Fw:Uw(t);e=n.update(e).digest()}else e.lengthQz||e!==e)throw new TypeError("Bad key length")},Zm;if(ue.process&&ue.process.browser)Zm="utf-8";else if(ue.process&&ue.process.version){var Xz=parseInt(ft.version.split(".")[0].slice(1),10);Zm=Xz>=6?"utf-8":"binary"}else Zm="utf-8";var GS=Zm,m2=Wt.Buffer,VS=function(t,e,r){if(m2.isBuffer(t))return t;if(typeof t=="string")return m2.from(t,e);if(ArrayBuffer.isView(t))return m2.from(t.buffer);throw new TypeError(r+" must be a string, a Buffer, a typed array or a DataView")},Jz=HS,$z=x3,eK=gp,uc=Wt.Buffer,tK=qS,Ax=GS,xx=VS,rK=uc.alloc(128),Ym={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function WS(t,e,r){var n=nK(t),s=t==="sha512"||t==="sha384"?128:64;e.length>s?e=n(e):e.length>>0};ks.writeUInt32BE=function(e,r,n){e[0+n]=r>>>24,e[1+n]=r>>>16&255,e[2+n]=r>>>8&255,e[3+n]=r&255};ks.ip=function(e,r,n,s){for(var i=0,o=0,f=6;f>=0;f-=2){for(var u=0;u<=24;u+=8)i<<=1,i|=r>>>u+f&1;for(var u=0;u<=24;u+=8)i<<=1,i|=e>>>u+f&1}for(var f=6;f>=0;f-=2){for(var u=1;u<=25;u+=8)o<<=1,o|=r>>>u+f&1;for(var u=1;u<=25;u+=8)o<<=1,o|=e>>>u+f&1}n[s+0]=i>>>0,n[s+1]=o>>>0};ks.rip=function(e,r,n,s){for(var i=0,o=0,f=0;f<4;f++)for(var u=24;u>=0;u-=8)i<<=1,i|=r>>>u+f&1,i<<=1,i|=e>>>u+f&1;for(var f=4;f<8;f++)for(var u=24;u>=0;u-=8)o<<=1,o|=r>>>u+f&1,o<<=1,o|=e>>>u+f&1;n[s+0]=i>>>0,n[s+1]=o>>>0};ks.pc1=function(e,r,n,s){for(var i=0,o=0,f=7;f>=5;f--){for(var u=0;u<=24;u+=8)i<<=1,i|=r>>u+f&1;for(var u=0;u<=24;u+=8)i<<=1,i|=e>>u+f&1}for(var u=0;u<=24;u+=8)i<<=1,i|=r>>u+f&1;for(var f=1;f<=3;f++){for(var u=0;u<=24;u+=8)o<<=1,o|=r>>u+f&1;for(var u=0;u<=24;u+=8)o<<=1,o|=e>>u+f&1}for(var u=0;u<=24;u+=8)o<<=1,o|=e>>u+f&1;n[s+0]=i>>>0,n[s+1]=o>>>0};ks.r28shl=function(e,r){return e<>>28-r};var $1=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];ks.pc2=function(e,r,n,s){for(var i=0,o=0,f=$1.length>>>1,u=0;u>>$1[u]&1;for(var u=f;u<$1.length;u++)o<<=1,o|=r>>>$1[u]&1;n[s+0]=i>>>0,n[s+1]=o>>>0};ks.expand=function(e,r,n){var s=0,i=0;s=(e&1)<<5|e>>>27;for(var o=23;o>=15;o-=4)s<<=6,s|=e>>>o&63;for(var o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(e&31)<<1|e>>>31,r[n+0]=s>>>0,r[n+1]=i>>>0};var _x=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];ks.substitute=function(e,r){for(var n=0,s=0;s<4;s++){var i=e>>>18-s*6&63,o=_x[s*64+i];n<<=4,n|=o}for(var s=0;s<4;s++){var i=r>>>18-s*6&63,o=_x[4*64+s*64+i];n<<=4,n|=o}return n>>>0};var Rx=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];ks.permute=function(e){for(var r=0,n=0;n>>Rx[n]&1;return r>>>0};ks.padSplit=function(e,r,n){for(var s=e.toString(2);s.length0;s--)r+=this._buffer(e,r),n+=this._flushBuffer(i,n);return r+=this._buffer(e,r),i};ha.prototype.final=function(e){var r;e&&(r=this.update(e));var n;return this.type==="encrypt"?n=this._finalEncrypt():n=this._finalDecrypt(),r?r.concat(n):n};ha.prototype._pad=function(e,r){if(r===0)return!1;for(;r>>1];n=Qn.r28shl(n,o),s=Qn.r28shl(s,o),Qn.pc2(n,s,e.keys,i)}};Oo.prototype._update=function(e,r,n,s){var i=this._desState,o=Qn.readUInt32BE(e,r),f=Qn.readUInt32BE(e,r+4);Qn.ip(o,f,i.tmp,0),o=i.tmp[0],f=i.tmp[1],this.type==="encrypt"?this._encrypt(i,o,f,i.tmp,0):this._decrypt(i,o,f,i.tmp,0),o=i.tmp[0],f=i.tmp[1],Qn.writeUInt32BE(n,o,s),Qn.writeUInt32BE(n,f,s+4)};Oo.prototype._pad=function(e,r){for(var n=e.length-r,s=r;s>>0,o=w}Qn.rip(f,o,s,i)};Oo.prototype._decrypt=function(e,r,n,s,i){for(var o=n,f=r,u=e.keys.length-2;u>=0;u-=2){var h=e.keys[u],p=e.keys[u+1];Qn.expand(o,e.tmp,0),h^=e.tmp[0],p^=e.tmp[1];var d=Qn.substitute(h,p),v=Qn.permute(d),w=o;o=(f^v)>>>0,f=w}Qn.rip(o,f,s,i)};var e_={},pK=fa,mK=Ht,Ug={};function gK(t){pK.equal(t.length,8,"Invalid IV length"),this.iv=new Array(8);for(var e=0;e>s%8,t._prev=RK(t._prev,r?f:u);return o}function RK(t,e){var r=t.length,n=-1,s=Qm.allocUnsafe(t.length);for(t=Qm.concat([t,Qm.from([e])]);++n>7;return s}a_.encrypt=function(t,e,r){for(var n=e.length,s=Qm.allocUnsafe(n),i=-1;++i>>24]^o[p>>>16&255]^f[d>>>8&255]^u[v&255]^e[N++],A=i[p>>>24]^o[d>>>16&255]^f[v>>>8&255]^u[h&255]^e[N++],M=i[d>>>24]^o[v>>>16&255]^f[h>>>8&255]^u[p&255]^e[N++],R=i[v>>>24]^o[h>>>16&255]^f[p>>>8&255]^u[d&255]^e[N++],h=w,p=A,d=M,v=R;return w=(n[h>>>24]<<24|n[p>>>16&255]<<16|n[d>>>8&255]<<8|n[v&255])^e[N++],A=(n[p>>>24]<<24|n[d>>>16&255]<<16|n[v>>>8&255]<<8|n[h&255])^e[N++],M=(n[d>>>24]<<24|n[v>>>16&255]<<16|n[h>>>8&255]<<8|n[p&255])^e[N++],R=(n[v>>>24]<<24|n[h>>>16&255]<<16|n[p>>>8&255]<<8|n[d&255])^e[N++],w=w>>>0,A=A>>>0,M=M>>>0,R=R>>>0,[w,A,M,R]}var FK=[0,1,2,4,8,16,32,64,128,27,54],Hn=function(){for(var t=new Array(256),e=0;e<256;e++)e<128?t[e]=e<<1:t[e]=e<<1^283;for(var r=[],n=[],s=[[],[],[],[]],i=[[],[],[],[]],o=0,f=0,u=0;u<256;++u){var h=f^f<<1^f<<2^f<<3^f<<4;h=h>>>8^h&255^99,r[o]=h,n[h]=o;var p=t[o],d=t[p],v=t[d],w=t[h]*257^h*16843008;s[0][o]=w<<24|w>>>8,s[1][o]=w<<16|w>>>16,s[2][o]=w<<8|w>>>24,s[3][o]=w,w=v*16843009^d*65537^p*257^o*16843008,i[0][h]=w<<24|w>>>8,i[1][h]=w<<16|w>>>16,i[2][h]=w<<8|w>>>24,i[3][h]=w,o===0?o=f=1:(o=p^t[t[t[v^p]]],f^=t[t[f]])}return{SBOX:r,INV_SBOX:n,SUB_MIX:s,INV_SUB_MIX:i}}();function ia(t){this._key=T3(t),this._reset()}ia.blockSize=4*4;ia.keySize=256/8;ia.prototype.blockSize=ia.blockSize;ia.prototype.keySize=ia.keySize;ia.prototype._reset=function(){for(var t=this._key,e=t.length,r=e+6,n=(r+1)*4,s=[],i=0;i>>24,o=Hn.SBOX[o>>>24]<<24|Hn.SBOX[o>>>16&255]<<16|Hn.SBOX[o>>>8&255]<<8|Hn.SBOX[o&255],o^=FK[i/e|0]<<24):e>6&&i%e===4&&(o=Hn.SBOX[o>>>24]<<24|Hn.SBOX[o>>>16&255]<<16|Hn.SBOX[o>>>8&255]<<8|Hn.SBOX[o&255]),s[i]=s[i-e]^o}for(var f=[],u=0;u>>24]]^Hn.INV_SUB_MIX[1][Hn.SBOX[p>>>16&255]]^Hn.INV_SUB_MIX[2][Hn.SBOX[p>>>8&255]]^Hn.INV_SUB_MIX[3][Hn.SBOX[p&255]]}this._nRounds=r,this._keySchedule=s,this._invKeySchedule=f};ia.prototype.encryptBlockRaw=function(t){return t=T3(t),c_(t,this._keySchedule,Hn.SUB_MIX,Hn.SBOX,this._nRounds)};ia.prototype.encryptBlock=function(t){var e=this.encryptBlockRaw(t),r=Hg.allocUnsafe(16);return r.writeUInt32BE(e[0],0),r.writeUInt32BE(e[1],4),r.writeUInt32BE(e[2],8),r.writeUInt32BE(e[3],12),r};ia.prototype.decryptBlock=function(t){t=T3(t);var e=t[1];t[1]=t[3],t[3]=e;var r=c_(t,this._invKeySchedule,Hn.INV_SUB_MIX,Hn.INV_SBOX,this._nRounds),n=Hg.allocUnsafe(16);return n.writeUInt32BE(r[0],0),n.writeUInt32BE(r[3],4),n.writeUInt32BE(r[2],8),n.writeUInt32BE(r[1],12),n};ia.prototype.scrub=function(){y2(this._keySchedule),y2(this._invKeySchedule),y2(this._key)};A1.AES=ia;var yd=Wt.Buffer,UK=yd.alloc(16,0);function HK(t){return[t.readUInt32BE(0),t.readUInt32BE(4),t.readUInt32BE(8),t.readUInt32BE(12)]}function u_(t){var e=yd.allocUnsafe(16);return e.writeUInt32BE(t[0]>>>0,0),e.writeUInt32BE(t[1]>>>0,4),e.writeUInt32BE(t[2]>>>0,8),e.writeUInt32BE(t[3]>>>0,12),e}function x1(t){this.h=t,this.state=yd.alloc(16,0),this.cache=yd.allocUnsafe(0)}x1.prototype.ghash=function(t){for(var e=-1;++e0;r--)t[r]=t[r]>>>1|(t[r-1]&1)<<31;t[0]=t[0]>>>1,s&&(t[0]=t[0]^225<<24)}this.state=u_(e)};x1.prototype.update=function(t){this.cache=yd.concat([this.cache,t]);for(var e;this.cache.length>=16;)e=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(e)};x1.prototype.final=function(t,e){return this.cache.length&&this.ghash(yd.concat([this.cache,UK],16)),this.ghash(u_([0,t,0,e])),this.state};var jK=x1,zK=A1,ls=Wt.Buffer,h_=Fl,KK=Ht,d_=jK,qK=w1,GK=f_;function VK(t,e){var r=0;t.length!==e.length&&r++;for(var n=Math.min(t.length,e.length),s=0;s0||n>0;){var u=new QK;u.update(f),u.update(t),e&&u.update(e),f=u.digest();var h=0;if(s>0){var p=i.length-s;h=Math.min(s,f.length),f.copy(i,p,0,h),s-=h}if(h0){var d=o.length-n,v=Math.min(n,f.length-h);f.copy(o,d,h,h+v),n-=v}}return f.fill(0),{key:i,iv:o}}var cy=XK,v_=C3,JK=p_,Tf=Wt.Buffer,$K=g_,y_=Fl,eq=A1,tq=cy,rq=Ht;function E1(t,e,r){y_.call(this),this._cache=new uy,this._cipher=new eq.AES(e),this._prev=Tf.from(r),this._mode=t,this._autopadding=!0}rq(E1,y_);E1.prototype._update=function(t){this._cache.add(t);for(var e,r,n=[];e=this._cache.get();)r=this._mode.encrypt(this,e),n.push(r);return Tf.concat(n)};var nq=Tf.alloc(16,16);E1.prototype._final=function(){var t=this._cache.flush();if(this._autopadding)return t=this._mode.encrypt(this,t),this._cipher.scrub(),t;if(!t.equals(nq))throw this._cipher.scrub(),new Error("data not multiple of block length")};E1.prototype.setAutoPadding=function(t){return this._autopadding=!!t,this};function uy(){this.cache=Tf.allocUnsafe(0)}uy.prototype.add=function(t){this.cache=Tf.concat([this.cache,t])};uy.prototype.get=function(){if(this.cache.length>15){var t=this.cache.slice(0,16);return this.cache=this.cache.slice(16),t}return null};uy.prototype.flush=function(){for(var t=16-this.cache.length,e=Tf.allocUnsafe(t),r=-1;++r16)return e=this.cache.slice(0,16),this.cache=this.cache.slice(16),e}else if(this.cache.length>=16)return e=this.cache.slice(0,16),this.cache=this.cache.slice(16),e;return null};hy.prototype.flush=function(){if(this.cache.length)return this.cache};function cq(t){var e=t[15];if(e<1||e>16)throw new Error("unable to decrypt data");for(var r=-1;++r=0);return f},r.prototype._randrange=function(s,i){var o=i.sub(s);return s.add(this._randbelow(o))},r.prototype.test=function(s,i,o){var f=s.bitLength(),u=t.mont(s),h=new t(1).toRed(u);i||(i=Math.max(1,f/48|0));for(var p=s.subn(1),d=0;!p.testn(d);d++);for(var v=s.shrn(d),w=p.toRed(u),A=!0;i>0;i--){var M=this._randrange(new t(2),p);o&&o(M);var R=M.toRed(u).redPow(v);if(!(R.cmp(h)===0||R.cmp(w)===0)){for(var N=1;N0;i--){var w=this._randrange(new t(2),h),A=s.gcd(w);if(A.cmpn(1)!==0)return A;var M=w.toRed(f).redPow(d);if(!(M.cmp(u)===0||M.cmp(v)===0)){for(var R=1;RN;)B.ishrn(1);if(B.isEven()&&B.iadd(i),B.testn(1)||B.iadd(o),C.cmp(o)){if(!C.cmp(f))for(;B.mod(u).cmp(h);)B.iadd(d)}else for(;B.mod(r).cmp(p);)B.iadd(d);if(O=B.shrn(1),A(O)&&A(B)&&M(O)&&M(B)&&s.test(O)&&s.test(B))return B}}return A2}const yq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},bq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},wq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},Aq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},xq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},Eq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},Mq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},Sq={gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"},_q={modp1:yq,modp2:bq,modp5:wq,modp14:Aq,modp15:xq,modp16:Eq,modp17:Mq,modp18:Sq};var x2,Px;function Rq(){if(Px)return x2;Px=1;var t=gn,e=T_(),r=new e,n=new t(24),s=new t(11),i=new t(10),o=new t(3),f=new t(7),u=k_(),h=Cl;x2=A;function p(R,N){return N=N||"utf8",mt.Buffer.isBuffer(R)||(R=new mt.Buffer(R,N)),this._pub=new t(R),this}function d(R,N){return N=N||"utf8",mt.Buffer.isBuffer(R)||(R=new mt.Buffer(R,N)),this._priv=new t(R),this}var v={};function w(R,N){var C=N.toString("hex"),B=[C,R.toString(16)].join("_");if(B in v)return v[B];var O=0;if(R.isEven()||!u.simpleSieve||!u.fermatTest(R)||!r.test(R))return O+=1,C==="02"||C==="05"?O+=8:O+=4,v[B]=O,O;r.test(R.shrn(1))||(O+=2);var D;switch(C){case"02":R.mod(n).cmp(s)&&(O+=8);break;case"05":D=R.mod(i),D.cmp(o)&&D.cmp(f)&&(O+=8);break;default:O+=4}return v[B]=O,O}function A(R,N,C){this.setGenerator(N),this.__prime=new t(R),this._prime=t.mont(this.__prime),this._primeLen=R.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,C?(this.setPublicKey=p,this.setPrivateKey=d):this._primeCode=8}Object.defineProperty(A.prototype,"verifyError",{enumerable:!0,get:function(){return typeof this._primeCode!="number"&&(this._primeCode=w(this.__prime,this.__gen)),this._primeCode}}),A.prototype.generateKeys=function(){return this._priv||(this._priv=new t(h(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},A.prototype.computeSecret=function(R){R=new t(R),R=R.toRed(this._prime);var N=R.redPow(this._priv).fromRed(),C=new mt.Buffer(N.toArray()),B=this.getPrime();if(C.length0?a:c},i.min=function(a,c){return a.cmp(c)<0?a:c},i.prototype._init=function(a,c,m){if(typeof a=="number")return this._initNumber(a,c,m);if(typeof a=="object")return this._initArray(a,c,m);c==="hex"&&(c=16),n(c===(c|0)&&c>=2&&c<=36),a=a.toString().replace(/\s+/g,"");var b=0;a[0]==="-"&&(b++,this.negative=1),b=0;b-=3)_=a[b]|a[b-1]<<8|a[b-2]<<16,this.words[x]|=_<>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);else if(m==="le")for(b=0,x=0;b>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);return this._strip()};function f(g,a){var c=g.charCodeAt(a);if(c>=48&&c<=57)return c-48;if(c>=65&&c<=70)return c-55;if(c>=97&&c<=102)return c-87;n(!1,"Invalid character in "+g)}function u(g,a,c){var m=f(g,c);return c-1>=a&&(m|=f(g,c-1)<<4),m}i.prototype._parseHex=function(a,c,m){this.length=Math.ceil((a.length-c)/6),this.words=new Array(this.length);for(var b=0;b=c;b-=2)S=u(a,c,b)<=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8;else{var y=a.length-c;for(b=y%2===0?c+1:c;b=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8}this._strip()};function h(g,a,c,m){for(var b=0,x=0,_=Math.min(g.length,c),S=a;S<_;S++){var y=g.charCodeAt(S)-48;b*=m,y>=49?x=y-49+10:y>=17?x=y-17+10:x=y,n(y>=0&&x1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{i.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch{i.prototype.inspect=d}else i.prototype.inspect=d;function d(){return(this.red?""}var v=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],w=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(a,c){a=a||10,c=c|0||1;var m;if(a===16||a==="hex"){m="";for(var b=0,x=0,_=0;_>>24-b&16777215,b+=2,b>=26&&(b-=26,_--),x!==0||_!==this.length-1?m=v[6-y.length]+y+m:m=y+m}for(x!==0&&(m=x.toString(16)+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}if(a===(a|0)&&a>=2&&a<=36){var l=w[a],E=A[a];m="";var Y=this.clone();for(Y.negative=0;!Y.isZero();){var L=Y.modrn(E).toString(a);Y=Y.idivn(E),Y.isZero()?m=L+m:m=v[l-L.length]+L+m}for(this.isZero()&&(m="0"+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var a=this.words[0];return this.length===2?a+=this.words[1]*67108864:this.length===3&&this.words[2]===1?a+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-a:a},i.prototype.toJSON=function(){return this.toString(16,2)},o&&(i.prototype.toBuffer=function(a,c){return this.toArrayLike(o,a,c)}),i.prototype.toArray=function(a,c){return this.toArrayLike(Array,a,c)};var M=function(a,c){return a.allocUnsafe?a.allocUnsafe(c):new a(c)};i.prototype.toArrayLike=function(a,c,m){this._strip();var b=this.byteLength(),x=m||Math.max(1,b);n(b<=x,"byte array longer than desired length"),n(x>0,"Requested array length <= 0");var _=M(a,x),S=c==="le"?"LE":"BE";return this["_toArrayLike"+S](_,b),_},i.prototype._toArrayLikeLE=function(a,c){for(var m=0,b=0,x=0,_=0;x>8&255),m>16&255),_===6?(m>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m=0&&(a[m--]=S>>8&255),m>=0&&(a[m--]=S>>16&255),_===6?(m>=0&&(a[m--]=S>>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m>=0)for(a[m--]=b;m>=0;)a[m--]=0},Math.clz32?i.prototype._countBits=function(a){return 32-Math.clz32(a)}:i.prototype._countBits=function(a){var c=a,m=0;return c>=4096&&(m+=13,c>>>=13),c>=64&&(m+=7,c>>>=7),c>=8&&(m+=4,c>>>=4),c>=2&&(m+=2,c>>>=2),m+c},i.prototype._zeroBits=function(a){if(a===0)return 26;var c=a,m=0;return c&8191||(m+=13,c>>>=13),c&127||(m+=7,c>>>=7),c&15||(m+=4,c>>>=4),c&3||(m+=2,c>>>=2),c&1||m++,m},i.prototype.bitLength=function(){var a=this.words[this.length-1],c=this._countBits(a);return(this.length-1)*26+c};function R(g){for(var a=new Array(g.bitLength()),c=0;c>>b&1}return a}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var a=0,c=0;ca.length?this.clone().ior(a):a.clone().ior(this)},i.prototype.uor=function(a){return this.length>a.length?this.clone().iuor(a):a.clone().iuor(this)},i.prototype.iuand=function(a){var c;this.length>a.length?c=a:c=this;for(var m=0;ma.length?this.clone().iand(a):a.clone().iand(this)},i.prototype.uand=function(a){return this.length>a.length?this.clone().iuand(a):a.clone().iuand(this)},i.prototype.iuxor=function(a){var c,m;this.length>a.length?(c=this,m=a):(c=a,m=this);for(var b=0;ba.length?this.clone().ixor(a):a.clone().ixor(this)},i.prototype.uxor=function(a){return this.length>a.length?this.clone().iuxor(a):a.clone().iuxor(this)},i.prototype.inotn=function(a){n(typeof a=="number"&&a>=0);var c=Math.ceil(a/26)|0,m=a%26;this._expand(c),m>0&&c--;for(var b=0;b0&&(this.words[b]=~this.words[b]&67108863>>26-m),this._strip()},i.prototype.notn=function(a){return this.clone().inotn(a)},i.prototype.setn=function(a,c){n(typeof a=="number"&&a>=0);var m=a/26|0,b=a%26;return this._expand(m+1),c?this.words[m]=this.words[m]|1<a.length?(m=this,b=a):(m=a,b=this);for(var x=0,_=0;_>>26;for(;x!==0&&_>>26;if(this.length=m.length,x!==0)this.words[this.length]=x,this.length++;else if(m!==this)for(;_a.length?this.clone().iadd(a):a.clone().iadd(this)},i.prototype.isub=function(a){if(a.negative!==0){a.negative=0;var c=this.iadd(a);return a.negative=1,c._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(a),this.negative=1,this._normSign();var m=this.cmp(a);if(m===0)return this.negative=0,this.length=1,this.words[0]=0,this;var b,x;m>0?(b=this,x=a):(b=a,x=this);for(var _=0,S=0;S>26,this.words[S]=c&67108863;for(;_!==0&&S>26,this.words[S]=c&67108863;if(_===0&&S>>26,Y=y&67108863,L=Math.min(l,a.length-1),F=Math.max(0,l-g.length+1);F<=L;F++){var V=l-F|0;b=g.words[V]|0,x=a.words[F]|0,_=b*x+Y,E+=_/67108864|0,Y=_&67108863}c.words[l]=Y|0,y=E|0}return y!==0?c.words[l]=y|0:c.length--,c._strip()}var C=function(a,c,m){var b=a.words,x=c.words,_=m.words,S=0,y,l,E,Y=b[0]|0,L=Y&8191,F=Y>>>13,V=b[1]|0,Z=V&8191,ee=V>>>13,ce=b[2]|0,U=ce&8191,j=ce>>>13,se=b[3]|0,re=se&8191,oe=se>>>13,Q=b[4]|0,z=Q&8191,G=Q>>>13,X=b[5]|0,ne=X&8191,ae=X>>>13,Me=b[6]|0,ge=Me&8191,pe=Me>>>13,ot=b[7]|0,we=ot&8191,me=ot>>>13,ut=b[8]|0,ze=ut&8191,_e=ut>>>13,Bt=b[9]|0,qe=Bt&8191,Te=Bt>>>13,xt=x[0]|0,He=xt&8191,Se=xt>>>13,Rt=x[1]|0,Ve=Rt&8191,Ee=Rt>>>13,Nt=x[2]|0,Ze=Nt&8191,Re=Nt>>>13,Ct=x[3]|0,je=Ct&8191,ke=Ct>>>13,Pt=x[4]|0,Ke=Pt&8191,Ne=Pt>>>13,Ot=x[5]|0,De=Ot&8191,Be=Ot>>>13,kt=x[6]|0,Ge=kt&8191,Ie=kt>>>13,Ut=x[7]|0,Ue=Ut&8191,Oe=Ut>>>13,It=x[8]|0,We=It&8191,Pe=It>>>13,_t=x[9]|0,Le=_t&8191,Ye=_t>>>13;m.negative=a.negative^c.negative,m.length=19,y=Math.imul(L,He),l=Math.imul(L,Se),l=l+Math.imul(F,He)|0,E=Math.imul(F,Se);var Ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,y=Math.imul(Z,He),l=Math.imul(Z,Se),l=l+Math.imul(ee,He)|0,E=Math.imul(ee,Se),y=y+Math.imul(L,Ve)|0,l=l+Math.imul(L,Ee)|0,l=l+Math.imul(F,Ve)|0,E=E+Math.imul(F,Ee)|0;var xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(xr>>>26)|0,xr&=67108863,y=Math.imul(U,He),l=Math.imul(U,Se),l=l+Math.imul(j,He)|0,E=Math.imul(j,Se),y=y+Math.imul(Z,Ve)|0,l=l+Math.imul(Z,Ee)|0,l=l+Math.imul(ee,Ve)|0,E=E+Math.imul(ee,Ee)|0,y=y+Math.imul(L,Ze)|0,l=l+Math.imul(L,Re)|0,l=l+Math.imul(F,Ze)|0,E=E+Math.imul(F,Re)|0;var Er=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Er>>>26)|0,Er&=67108863,y=Math.imul(re,He),l=Math.imul(re,Se),l=l+Math.imul(oe,He)|0,E=Math.imul(oe,Se),y=y+Math.imul(U,Ve)|0,l=l+Math.imul(U,Ee)|0,l=l+Math.imul(j,Ve)|0,E=E+Math.imul(j,Ee)|0,y=y+Math.imul(Z,Ze)|0,l=l+Math.imul(Z,Re)|0,l=l+Math.imul(ee,Ze)|0,E=E+Math.imul(ee,Re)|0,y=y+Math.imul(L,je)|0,l=l+Math.imul(L,ke)|0,l=l+Math.imul(F,je)|0,E=E+Math.imul(F,ke)|0;var Gt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,y=Math.imul(z,He),l=Math.imul(z,Se),l=l+Math.imul(G,He)|0,E=Math.imul(G,Se),y=y+Math.imul(re,Ve)|0,l=l+Math.imul(re,Ee)|0,l=l+Math.imul(oe,Ve)|0,E=E+Math.imul(oe,Ee)|0,y=y+Math.imul(U,Ze)|0,l=l+Math.imul(U,Re)|0,l=l+Math.imul(j,Ze)|0,E=E+Math.imul(j,Re)|0,y=y+Math.imul(Z,je)|0,l=l+Math.imul(Z,ke)|0,l=l+Math.imul(ee,je)|0,E=E+Math.imul(ee,ke)|0,y=y+Math.imul(L,Ke)|0,l=l+Math.imul(L,Ne)|0,l=l+Math.imul(F,Ke)|0,E=E+Math.imul(F,Ne)|0;var Vt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,y=Math.imul(ne,He),l=Math.imul(ne,Se),l=l+Math.imul(ae,He)|0,E=Math.imul(ae,Se),y=y+Math.imul(z,Ve)|0,l=l+Math.imul(z,Ee)|0,l=l+Math.imul(G,Ve)|0,E=E+Math.imul(G,Ee)|0,y=y+Math.imul(re,Ze)|0,l=l+Math.imul(re,Re)|0,l=l+Math.imul(oe,Ze)|0,E=E+Math.imul(oe,Re)|0,y=y+Math.imul(U,je)|0,l=l+Math.imul(U,ke)|0,l=l+Math.imul(j,je)|0,E=E+Math.imul(j,ke)|0,y=y+Math.imul(Z,Ke)|0,l=l+Math.imul(Z,Ne)|0,l=l+Math.imul(ee,Ke)|0,E=E+Math.imul(ee,Ne)|0,y=y+Math.imul(L,De)|0,l=l+Math.imul(L,Be)|0,l=l+Math.imul(F,De)|0,E=E+Math.imul(F,Be)|0;var Lr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,y=Math.imul(ge,He),l=Math.imul(ge,Se),l=l+Math.imul(pe,He)|0,E=Math.imul(pe,Se),y=y+Math.imul(ne,Ve)|0,l=l+Math.imul(ne,Ee)|0,l=l+Math.imul(ae,Ve)|0,E=E+Math.imul(ae,Ee)|0,y=y+Math.imul(z,Ze)|0,l=l+Math.imul(z,Re)|0,l=l+Math.imul(G,Ze)|0,E=E+Math.imul(G,Re)|0,y=y+Math.imul(re,je)|0,l=l+Math.imul(re,ke)|0,l=l+Math.imul(oe,je)|0,E=E+Math.imul(oe,ke)|0,y=y+Math.imul(U,Ke)|0,l=l+Math.imul(U,Ne)|0,l=l+Math.imul(j,Ke)|0,E=E+Math.imul(j,Ne)|0,y=y+Math.imul(Z,De)|0,l=l+Math.imul(Z,Be)|0,l=l+Math.imul(ee,De)|0,E=E+Math.imul(ee,Be)|0,y=y+Math.imul(L,Ge)|0,l=l+Math.imul(L,Ie)|0,l=l+Math.imul(F,Ge)|0,E=E+Math.imul(F,Ie)|0;var Zr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,y=Math.imul(we,He),l=Math.imul(we,Se),l=l+Math.imul(me,He)|0,E=Math.imul(me,Se),y=y+Math.imul(ge,Ve)|0,l=l+Math.imul(ge,Ee)|0,l=l+Math.imul(pe,Ve)|0,E=E+Math.imul(pe,Ee)|0,y=y+Math.imul(ne,Ze)|0,l=l+Math.imul(ne,Re)|0,l=l+Math.imul(ae,Ze)|0,E=E+Math.imul(ae,Re)|0,y=y+Math.imul(z,je)|0,l=l+Math.imul(z,ke)|0,l=l+Math.imul(G,je)|0,E=E+Math.imul(G,ke)|0,y=y+Math.imul(re,Ke)|0,l=l+Math.imul(re,Ne)|0,l=l+Math.imul(oe,Ke)|0,E=E+Math.imul(oe,Ne)|0,y=y+Math.imul(U,De)|0,l=l+Math.imul(U,Be)|0,l=l+Math.imul(j,De)|0,E=E+Math.imul(j,Be)|0,y=y+Math.imul(Z,Ge)|0,l=l+Math.imul(Z,Ie)|0,l=l+Math.imul(ee,Ge)|0,E=E+Math.imul(ee,Ie)|0,y=y+Math.imul(L,Ue)|0,l=l+Math.imul(L,Oe)|0,l=l+Math.imul(F,Ue)|0,E=E+Math.imul(F,Oe)|0;var Ir=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,y=Math.imul(ze,He),l=Math.imul(ze,Se),l=l+Math.imul(_e,He)|0,E=Math.imul(_e,Se),y=y+Math.imul(we,Ve)|0,l=l+Math.imul(we,Ee)|0,l=l+Math.imul(me,Ve)|0,E=E+Math.imul(me,Ee)|0,y=y+Math.imul(ge,Ze)|0,l=l+Math.imul(ge,Re)|0,l=l+Math.imul(pe,Ze)|0,E=E+Math.imul(pe,Re)|0,y=y+Math.imul(ne,je)|0,l=l+Math.imul(ne,ke)|0,l=l+Math.imul(ae,je)|0,E=E+Math.imul(ae,ke)|0,y=y+Math.imul(z,Ke)|0,l=l+Math.imul(z,Ne)|0,l=l+Math.imul(G,Ke)|0,E=E+Math.imul(G,Ne)|0,y=y+Math.imul(re,De)|0,l=l+Math.imul(re,Be)|0,l=l+Math.imul(oe,De)|0,E=E+Math.imul(oe,Be)|0,y=y+Math.imul(U,Ge)|0,l=l+Math.imul(U,Ie)|0,l=l+Math.imul(j,Ge)|0,E=E+Math.imul(j,Ie)|0,y=y+Math.imul(Z,Ue)|0,l=l+Math.imul(Z,Oe)|0,l=l+Math.imul(ee,Ue)|0,E=E+Math.imul(ee,Oe)|0,y=y+Math.imul(L,We)|0,l=l+Math.imul(L,Pe)|0,l=l+Math.imul(F,We)|0,E=E+Math.imul(F,Pe)|0;var Dr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Dr>>>26)|0,Dr&=67108863,y=Math.imul(qe,He),l=Math.imul(qe,Se),l=l+Math.imul(Te,He)|0,E=Math.imul(Te,Se),y=y+Math.imul(ze,Ve)|0,l=l+Math.imul(ze,Ee)|0,l=l+Math.imul(_e,Ve)|0,E=E+Math.imul(_e,Ee)|0,y=y+Math.imul(we,Ze)|0,l=l+Math.imul(we,Re)|0,l=l+Math.imul(me,Ze)|0,E=E+Math.imul(me,Re)|0,y=y+Math.imul(ge,je)|0,l=l+Math.imul(ge,ke)|0,l=l+Math.imul(pe,je)|0,E=E+Math.imul(pe,ke)|0,y=y+Math.imul(ne,Ke)|0,l=l+Math.imul(ne,Ne)|0,l=l+Math.imul(ae,Ke)|0,E=E+Math.imul(ae,Ne)|0,y=y+Math.imul(z,De)|0,l=l+Math.imul(z,Be)|0,l=l+Math.imul(G,De)|0,E=E+Math.imul(G,Be)|0,y=y+Math.imul(re,Ge)|0,l=l+Math.imul(re,Ie)|0,l=l+Math.imul(oe,Ge)|0,E=E+Math.imul(oe,Ie)|0,y=y+Math.imul(U,Ue)|0,l=l+Math.imul(U,Oe)|0,l=l+Math.imul(j,Ue)|0,E=E+Math.imul(j,Oe)|0,y=y+Math.imul(Z,We)|0,l=l+Math.imul(Z,Pe)|0,l=l+Math.imul(ee,We)|0,E=E+Math.imul(ee,Pe)|0,y=y+Math.imul(L,Le)|0,l=l+Math.imul(L,Ye)|0,l=l+Math.imul(F,Le)|0,E=E+Math.imul(F,Ye)|0;var ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(ar>>>26)|0,ar&=67108863,y=Math.imul(qe,Ve),l=Math.imul(qe,Ee),l=l+Math.imul(Te,Ve)|0,E=Math.imul(Te,Ee),y=y+Math.imul(ze,Ze)|0,l=l+Math.imul(ze,Re)|0,l=l+Math.imul(_e,Ze)|0,E=E+Math.imul(_e,Re)|0,y=y+Math.imul(we,je)|0,l=l+Math.imul(we,ke)|0,l=l+Math.imul(me,je)|0,E=E+Math.imul(me,ke)|0,y=y+Math.imul(ge,Ke)|0,l=l+Math.imul(ge,Ne)|0,l=l+Math.imul(pe,Ke)|0,E=E+Math.imul(pe,Ne)|0,y=y+Math.imul(ne,De)|0,l=l+Math.imul(ne,Be)|0,l=l+Math.imul(ae,De)|0,E=E+Math.imul(ae,Be)|0,y=y+Math.imul(z,Ge)|0,l=l+Math.imul(z,Ie)|0,l=l+Math.imul(G,Ge)|0,E=E+Math.imul(G,Ie)|0,y=y+Math.imul(re,Ue)|0,l=l+Math.imul(re,Oe)|0,l=l+Math.imul(oe,Ue)|0,E=E+Math.imul(oe,Oe)|0,y=y+Math.imul(U,We)|0,l=l+Math.imul(U,Pe)|0,l=l+Math.imul(j,We)|0,E=E+Math.imul(j,Pe)|0,y=y+Math.imul(Z,Le)|0,l=l+Math.imul(Z,Ye)|0,l=l+Math.imul(ee,Le)|0,E=E+Math.imul(ee,Ye)|0;var mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(mr>>>26)|0,mr&=67108863,y=Math.imul(qe,Ze),l=Math.imul(qe,Re),l=l+Math.imul(Te,Ze)|0,E=Math.imul(Te,Re),y=y+Math.imul(ze,je)|0,l=l+Math.imul(ze,ke)|0,l=l+Math.imul(_e,je)|0,E=E+Math.imul(_e,ke)|0,y=y+Math.imul(we,Ke)|0,l=l+Math.imul(we,Ne)|0,l=l+Math.imul(me,Ke)|0,E=E+Math.imul(me,Ne)|0,y=y+Math.imul(ge,De)|0,l=l+Math.imul(ge,Be)|0,l=l+Math.imul(pe,De)|0,E=E+Math.imul(pe,Be)|0,y=y+Math.imul(ne,Ge)|0,l=l+Math.imul(ne,Ie)|0,l=l+Math.imul(ae,Ge)|0,E=E+Math.imul(ae,Ie)|0,y=y+Math.imul(z,Ue)|0,l=l+Math.imul(z,Oe)|0,l=l+Math.imul(G,Ue)|0,E=E+Math.imul(G,Oe)|0,y=y+Math.imul(re,We)|0,l=l+Math.imul(re,Pe)|0,l=l+Math.imul(oe,We)|0,E=E+Math.imul(oe,Pe)|0,y=y+Math.imul(U,Le)|0,l=l+Math.imul(U,Ye)|0,l=l+Math.imul(j,Le)|0,E=E+Math.imul(j,Ye)|0;var jr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(jr>>>26)|0,jr&=67108863,y=Math.imul(qe,je),l=Math.imul(qe,ke),l=l+Math.imul(Te,je)|0,E=Math.imul(Te,ke),y=y+Math.imul(ze,Ke)|0,l=l+Math.imul(ze,Ne)|0,l=l+Math.imul(_e,Ke)|0,E=E+Math.imul(_e,Ne)|0,y=y+Math.imul(we,De)|0,l=l+Math.imul(we,Be)|0,l=l+Math.imul(me,De)|0,E=E+Math.imul(me,Be)|0,y=y+Math.imul(ge,Ge)|0,l=l+Math.imul(ge,Ie)|0,l=l+Math.imul(pe,Ge)|0,E=E+Math.imul(pe,Ie)|0,y=y+Math.imul(ne,Ue)|0,l=l+Math.imul(ne,Oe)|0,l=l+Math.imul(ae,Ue)|0,E=E+Math.imul(ae,Oe)|0,y=y+Math.imul(z,We)|0,l=l+Math.imul(z,Pe)|0,l=l+Math.imul(G,We)|0,E=E+Math.imul(G,Pe)|0,y=y+Math.imul(re,Le)|0,l=l+Math.imul(re,Ye)|0,l=l+Math.imul(oe,Le)|0,E=E+Math.imul(oe,Ye)|0;var Yr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,y=Math.imul(qe,Ke),l=Math.imul(qe,Ne),l=l+Math.imul(Te,Ke)|0,E=Math.imul(Te,Ne),y=y+Math.imul(ze,De)|0,l=l+Math.imul(ze,Be)|0,l=l+Math.imul(_e,De)|0,E=E+Math.imul(_e,Be)|0,y=y+Math.imul(we,Ge)|0,l=l+Math.imul(we,Ie)|0,l=l+Math.imul(me,Ge)|0,E=E+Math.imul(me,Ie)|0,y=y+Math.imul(ge,Ue)|0,l=l+Math.imul(ge,Oe)|0,l=l+Math.imul(pe,Ue)|0,E=E+Math.imul(pe,Oe)|0,y=y+Math.imul(ne,We)|0,l=l+Math.imul(ne,Pe)|0,l=l+Math.imul(ae,We)|0,E=E+Math.imul(ae,Pe)|0,y=y+Math.imul(z,Le)|0,l=l+Math.imul(z,Ye)|0,l=l+Math.imul(G,Le)|0,E=E+Math.imul(G,Ye)|0;var or=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(or>>>26)|0,or&=67108863,y=Math.imul(qe,De),l=Math.imul(qe,Be),l=l+Math.imul(Te,De)|0,E=Math.imul(Te,Be),y=y+Math.imul(ze,Ge)|0,l=l+Math.imul(ze,Ie)|0,l=l+Math.imul(_e,Ge)|0,E=E+Math.imul(_e,Ie)|0,y=y+Math.imul(we,Ue)|0,l=l+Math.imul(we,Oe)|0,l=l+Math.imul(me,Ue)|0,E=E+Math.imul(me,Oe)|0,y=y+Math.imul(ge,We)|0,l=l+Math.imul(ge,Pe)|0,l=l+Math.imul(pe,We)|0,E=E+Math.imul(pe,Pe)|0,y=y+Math.imul(ne,Le)|0,l=l+Math.imul(ne,Ye)|0,l=l+Math.imul(ae,Le)|0,E=E+Math.imul(ae,Ye)|0;var Qr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,y=Math.imul(qe,Ge),l=Math.imul(qe,Ie),l=l+Math.imul(Te,Ge)|0,E=Math.imul(Te,Ie),y=y+Math.imul(ze,Ue)|0,l=l+Math.imul(ze,Oe)|0,l=l+Math.imul(_e,Ue)|0,E=E+Math.imul(_e,Oe)|0,y=y+Math.imul(we,We)|0,l=l+Math.imul(we,Pe)|0,l=l+Math.imul(me,We)|0,E=E+Math.imul(me,Pe)|0,y=y+Math.imul(ge,Le)|0,l=l+Math.imul(ge,Ye)|0,l=l+Math.imul(pe,Le)|0,E=E+Math.imul(pe,Ye)|0;var Mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,y=Math.imul(qe,Ue),l=Math.imul(qe,Oe),l=l+Math.imul(Te,Ue)|0,E=Math.imul(Te,Oe),y=y+Math.imul(ze,We)|0,l=l+Math.imul(ze,Pe)|0,l=l+Math.imul(_e,We)|0,E=E+Math.imul(_e,Pe)|0,y=y+Math.imul(we,Le)|0,l=l+Math.imul(we,Ye)|0,l=l+Math.imul(me,Le)|0,E=E+Math.imul(me,Ye)|0;var Xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,y=Math.imul(qe,We),l=Math.imul(qe,Pe),l=l+Math.imul(Te,We)|0,E=Math.imul(Te,Pe),y=y+Math.imul(ze,Le)|0,l=l+Math.imul(ze,Ye)|0,l=l+Math.imul(_e,Le)|0,E=E+Math.imul(_e,Ye)|0;var on=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(on>>>26)|0,on&=67108863,y=Math.imul(qe,Le),l=Math.imul(qe,Ye),l=l+Math.imul(Te,Le)|0,E=Math.imul(Te,Ye);var Cr=(S+y|0)+((l&8191)<<13)|0;return S=(E+(l>>>13)|0)+(Cr>>>26)|0,Cr&=67108863,_[0]=Ar,_[1]=xr,_[2]=Er,_[3]=Gt,_[4]=Vt,_[5]=Lr,_[6]=Zr,_[7]=Ir,_[8]=Dr,_[9]=ar,_[10]=mr,_[11]=jr,_[12]=Yr,_[13]=or,_[14]=Qr,_[15]=Mr,_[16]=Xr,_[17]=on,_[18]=Cr,S!==0&&(_[19]=S,m.length++),m};Math.imul||(C=N);function B(g,a,c){c.negative=a.negative^g.negative,c.length=g.length+a.length;for(var m=0,b=0,x=0;x>>26)|0,b+=_>>>26,_&=67108863}c.words[x]=S,m=_,_=b}return m!==0?c.words[x]=m:c.length--,c._strip()}function O(g,a,c){return B(g,a,c)}i.prototype.mulTo=function(a,c){var m,b=this.length+a.length;return this.length===10&&a.length===10?m=C(this,a,c):b<63?m=N(this,a,c):b<1024?m=B(this,a,c):m=O(this,a,c),m},i.prototype.mul=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),this.mulTo(a,c)},i.prototype.mulf=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),O(this,a,c)},i.prototype.imul=function(a){return this.clone().mulTo(a,this)},i.prototype.imuln=function(a){var c=a<0;c&&(a=-a),n(typeof a=="number"),n(a<67108864);for(var m=0,b=0;b>=26,m+=x/67108864|0,m+=_>>>26,this.words[b]=_&67108863}return m!==0&&(this.words[b]=m,this.length++),c?this.ineg():this},i.prototype.muln=function(a){return this.clone().imuln(a)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(a){var c=R(a);if(c.length===0)return new i(1);for(var m=this,b=0;b=0);var c=a%26,m=(a-c)/26,b=67108863>>>26-c<<26-c,x;if(c!==0){var _=0;for(x=0;x>>26-c}_&&(this.words[x]=_,this.length++)}if(m!==0){for(x=this.length-1;x>=0;x--)this.words[x+m]=this.words[x];for(x=0;x=0);var b;c?b=(c-c%26)/26:b=0;var x=a%26,_=Math.min((a-x)/26,this.length),S=67108863^67108863>>>x<_)for(this.length-=_,l=0;l=0&&(E!==0||l>=b);l--){var Y=this.words[l]|0;this.words[l]=E<<26-x|Y>>>x,E=Y&S}return y&&E!==0&&(y.words[y.length++]=E),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},i.prototype.ishrn=function(a,c,m){return n(this.negative===0),this.iushrn(a,c,m)},i.prototype.shln=function(a){return this.clone().ishln(a)},i.prototype.ushln=function(a){return this.clone().iushln(a)},i.prototype.shrn=function(a){return this.clone().ishrn(a)},i.prototype.ushrn=function(a){return this.clone().iushrn(a)},i.prototype.testn=function(a){n(typeof a=="number"&&a>=0);var c=a%26,m=(a-c)/26,b=1<=0);var c=a%26,m=(a-c)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=m)return this;if(c!==0&&m++,this.length=Math.min(m,this.length),c!==0){var b=67108863^67108863>>>c<=67108864;c++)this.words[c]-=67108864,c===this.length-1?this.words[c+1]=1:this.words[c+1]++;return this.length=Math.max(this.length,c+1),this},i.prototype.isubn=function(a){if(n(typeof a=="number"),n(a<67108864),a<0)return this.iaddn(-a);if(this.negative!==0)return this.negative=0,this.iaddn(a),this.negative=1,this;if(this.words[0]-=a,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var c=0;c>26)-(y/67108864|0),this.words[x+m]=_&67108863}for(;x>26,this.words[x+m]=_&67108863;if(S===0)return this._strip();for(n(S===-1),S=0,x=0;x>26,this.words[x]=_&67108863;return this.negative=1,this._strip()},i.prototype._wordDiv=function(a,c){var m=this.length-a.length,b=this.clone(),x=a,_=x.words[x.length-1]|0,S=this._countBits(_);m=26-S,m!==0&&(x=x.ushln(m),b.iushln(m),_=x.words[x.length-1]|0);var y=b.length-x.length,l;if(c!=="mod"){l=new i(null),l.length=y+1,l.words=new Array(l.length);for(var E=0;E=0;L--){var F=(b.words[x.length+L]|0)*67108864+(b.words[x.length+L-1]|0);for(F=Math.min(F/_|0,67108863),b._ishlnsubmul(x,F,L);b.negative!==0;)F--,b.negative=0,b._ishlnsubmul(x,1,L),b.isZero()||(b.negative^=1);l&&(l.words[L]=F)}return l&&l._strip(),b._strip(),c!=="div"&&m!==0&&b.iushrn(m),{div:l||null,mod:b}},i.prototype.divmod=function(a,c,m){if(n(!a.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var b,x,_;return this.negative!==0&&a.negative===0?(_=this.neg().divmod(a,c),c!=="mod"&&(b=_.div.neg()),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.iadd(a)),{div:b,mod:x}):this.negative===0&&a.negative!==0?(_=this.divmod(a.neg(),c),c!=="mod"&&(b=_.div.neg()),{div:b,mod:_.mod}):this.negative&a.negative?(_=this.neg().divmod(a.neg(),c),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.isub(a)),{div:_.div,mod:x}):a.length>this.length||this.cmp(a)<0?{div:new i(0),mod:this}:a.length===1?c==="div"?{div:this.divn(a.words[0]),mod:null}:c==="mod"?{div:null,mod:new i(this.modrn(a.words[0]))}:{div:this.divn(a.words[0]),mod:new i(this.modrn(a.words[0]))}:this._wordDiv(a,c)},i.prototype.div=function(a){return this.divmod(a,"div",!1).div},i.prototype.mod=function(a){return this.divmod(a,"mod",!1).mod},i.prototype.umod=function(a){return this.divmod(a,"mod",!0).mod},i.prototype.divRound=function(a){var c=this.divmod(a);if(c.mod.isZero())return c.div;var m=c.div.negative!==0?c.mod.isub(a):c.mod,b=a.ushrn(1),x=a.andln(1),_=m.cmp(b);return _<0||x===1&&_===0?c.div:c.div.negative!==0?c.div.isubn(1):c.div.iaddn(1)},i.prototype.modrn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=(1<<26)%a,b=0,x=this.length-1;x>=0;x--)b=(m*b+(this.words[x]|0))%a;return c?-b:b},i.prototype.modn=function(a){return this.modrn(a)},i.prototype.idivn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=0,b=this.length-1;b>=0;b--){var x=(this.words[b]|0)+m*67108864;this.words[b]=x/a|0,m=x%a}return this._strip(),c?this.ineg():this},i.prototype.divn=function(a){return this.clone().idivn(a)},i.prototype.egcd=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=new i(0),S=new i(1),y=0;c.isEven()&&m.isEven();)c.iushrn(1),m.iushrn(1),++y;for(var l=m.clone(),E=c.clone();!c.isZero();){for(var Y=0,L=1;!(c.words[0]&L)&&Y<26;++Y,L<<=1);if(Y>0)for(c.iushrn(Y);Y-- >0;)(b.isOdd()||x.isOdd())&&(b.iadd(l),x.isub(E)),b.iushrn(1),x.iushrn(1);for(var F=0,V=1;!(m.words[0]&V)&&F<26;++F,V<<=1);if(F>0)for(m.iushrn(F);F-- >0;)(_.isOdd()||S.isOdd())&&(_.iadd(l),S.isub(E)),_.iushrn(1),S.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(_),x.isub(S)):(m.isub(c),_.isub(b),S.isub(x))}return{a:_,b:S,gcd:m.iushln(y)}},i.prototype._invmp=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=m.clone();c.cmpn(1)>0&&m.cmpn(1)>0;){for(var S=0,y=1;!(c.words[0]&y)&&S<26;++S,y<<=1);if(S>0)for(c.iushrn(S);S-- >0;)b.isOdd()&&b.iadd(_),b.iushrn(1);for(var l=0,E=1;!(m.words[0]&E)&&l<26;++l,E<<=1);if(l>0)for(m.iushrn(l);l-- >0;)x.isOdd()&&x.iadd(_),x.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(x)):(m.isub(c),x.isub(b))}var Y;return c.cmpn(1)===0?Y=b:Y=x,Y.cmpn(0)<0&&Y.iadd(a),Y},i.prototype.gcd=function(a){if(this.isZero())return a.abs();if(a.isZero())return this.abs();var c=this.clone(),m=a.clone();c.negative=0,m.negative=0;for(var b=0;c.isEven()&&m.isEven();b++)c.iushrn(1),m.iushrn(1);do{for(;c.isEven();)c.iushrn(1);for(;m.isEven();)m.iushrn(1);var x=c.cmp(m);if(x<0){var _=c;c=m,m=_}else if(x===0||m.cmpn(1)===0)break;c.isub(m)}while(!0);return m.iushln(b)},i.prototype.invm=function(a){return this.egcd(a).a.umod(a)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(a){return this.words[0]&a},i.prototype.bincn=function(a){n(typeof a=="number");var c=a%26,m=(a-c)/26,b=1<>>26,S&=67108863,this.words[_]=S}return x!==0&&(this.words[_]=x,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(a){var c=a<0;if(this.negative!==0&&!c)return-1;if(this.negative===0&&c)return 1;this._strip();var m;if(this.length>1)m=1;else{c&&(a=-a),n(a<=67108863,"Number is too big");var b=this.words[0]|0;m=b===a?0:ba.length)return 1;if(this.length=0;m--){var b=this.words[m]|0,x=a.words[m]|0;if(b!==x){bx&&(c=1);break}}return c},i.prototype.gtn=function(a){return this.cmpn(a)===1},i.prototype.gt=function(a){return this.cmp(a)===1},i.prototype.gten=function(a){return this.cmpn(a)>=0},i.prototype.gte=function(a){return this.cmp(a)>=0},i.prototype.ltn=function(a){return this.cmpn(a)===-1},i.prototype.lt=function(a){return this.cmp(a)===-1},i.prototype.lten=function(a){return this.cmpn(a)<=0},i.prototype.lte=function(a){return this.cmp(a)<=0},i.prototype.eqn=function(a){return this.cmpn(a)===0},i.prototype.eq=function(a){return this.cmp(a)===0},i.red=function(a){return new P(a)},i.prototype.toRed=function(a){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),a.convertTo(this)._forceRed(a)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(a){return this.red=a,this},i.prototype.forceRed=function(a){return n(!this.red,"Already a number in reduction context"),this._forceRed(a)},i.prototype.redAdd=function(a){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,a)},i.prototype.redIAdd=function(a){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,a)},i.prototype.redSub=function(a){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,a)},i.prototype.redISub=function(a){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,a)},i.prototype.redShl=function(a){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,a)},i.prototype.redMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.mul(this,a)},i.prototype.redIMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.imul(this,a)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(a){return n(this.red&&!a.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,a)};var D={k256:null,p224:null,p192:null,p25519:null};function q(g,a){this.name=g,this.p=new i(a,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}q.prototype._tmp=function(){var a=new i(null);return a.words=new Array(Math.ceil(this.n/13)),a},q.prototype.ireduce=function(a){var c=a,m;do this.split(c,this.tmp),c=this.imulK(c),c=c.iadd(this.tmp),m=c.bitLength();while(m>this.n);var b=m0?c.isub(this.p):c.strip!==void 0?c.strip():c._strip(),c},q.prototype.split=function(a,c){a.iushrn(this.n,0,c)},q.prototype.imulK=function(a){return a.imul(this.k)};function W(){q.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(W,q),W.prototype.split=function(a,c){for(var m=4194303,b=Math.min(a.length,9),x=0;x>>22,_=S}_>>>=22,a.words[x-10]=_,_===0&&a.length>10?a.length-=10:a.length-=9},W.prototype.imulK=function(a){a.words[a.length]=0,a.words[a.length+1]=0,a.length+=2;for(var c=0,m=0;m>>=26,a.words[m]=x,c=b}return c!==0&&(a.words[a.length++]=c),a},i._prime=function(a){if(D[a])return D[a];var c;if(a==="k256")c=new W;else if(a==="p224")c=new k;else if(a==="p192")c=new I;else if(a==="p25519")c=new H;else throw new Error("Unknown prime "+a);return D[a]=c,c};function P(g){if(typeof g=="string"){var a=i._prime(g);this.m=a.p,this.prime=a}else n(g.gtn(1),"modulus must be greater than 1"),this.m=g,this.prime=null}P.prototype._verify1=function(a){n(a.negative===0,"red works only with positives"),n(a.red,"red works only with red numbers")},P.prototype._verify2=function(a,c){n((a.negative|c.negative)===0,"red works only with positives"),n(a.red&&a.red===c.red,"red works only with red numbers")},P.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):(p(a,a.umod(this.m)._forceRed(this)),a)},P.prototype.neg=function(a){return a.isZero()?a.clone():this.m.sub(a)._forceRed(this)},P.prototype.add=function(a,c){this._verify2(a,c);var m=a.add(c);return m.cmp(this.m)>=0&&m.isub(this.m),m._forceRed(this)},P.prototype.iadd=function(a,c){this._verify2(a,c);var m=a.iadd(c);return m.cmp(this.m)>=0&&m.isub(this.m),m},P.prototype.sub=function(a,c){this._verify2(a,c);var m=a.sub(c);return m.cmpn(0)<0&&m.iadd(this.m),m._forceRed(this)},P.prototype.isub=function(a,c){this._verify2(a,c);var m=a.isub(c);return m.cmpn(0)<0&&m.iadd(this.m),m},P.prototype.shl=function(a,c){return this._verify1(a),this.imod(a.ushln(c))},P.prototype.imul=function(a,c){return this._verify2(a,c),this.imod(a.imul(c))},P.prototype.mul=function(a,c){return this._verify2(a,c),this.imod(a.mul(c))},P.prototype.isqr=function(a){return this.imul(a,a.clone())},P.prototype.sqr=function(a){return this.mul(a,a)},P.prototype.sqrt=function(a){if(a.isZero())return a.clone();var c=this.m.andln(3);if(n(c%2===1),c===3){var m=this.m.add(new i(1)).iushrn(2);return this.pow(a,m)}for(var b=this.m.subn(1),x=0;!b.isZero()&&b.andln(1)===0;)x++,b.iushrn(1);n(!b.isZero());var _=new i(1).toRed(this),S=_.redNeg(),y=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);this.pow(l,y).cmp(S)!==0;)l.redIAdd(S);for(var E=this.pow(l,b),Y=this.pow(a,b.addn(1).iushrn(1)),L=this.pow(a,b),F=x;L.cmp(_)!==0;){for(var V=L,Z=0;V.cmp(_)!==0;Z++)V=V.redSqr();n(Z=0;x--){for(var E=c.words[x],Y=l-1;Y>=0;Y--){var L=E>>Y&1;if(_!==b[0]&&(_=this.sqr(_)),L===0&&S===0){y=0;continue}S<<=1,S|=L,y++,!(y!==m&&(x!==0||Y!==0))&&(_=this.mul(_,b[S]),y=0,S=0)}l=26}return _},P.prototype.convertTo=function(a){var c=a.umod(this.m);return c===a?c.clone():c},P.prototype.convertFrom=function(a){var c=a.clone();return c.red=null,c},i.mont=function(a){return new T(a)};function T(g){P.call(this,g),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(T,P),T.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))},T.prototype.convertFrom=function(a){var c=this.imod(a.mul(this.rinv));return c.red=null,c},T.prototype.imul=function(a,c){if(a.isZero()||c.isZero())return a.words[0]=0,a.length=1,a;var m=a.imul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.mul=function(a,c){if(a.isZero()||c.isZero())return new i(0)._forceRed(this);var m=a.mul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.invm=function(a){var c=this.imod(a._invmp(this.m).mul(this.r2));return c._forceRed(this)}})(t,ue)})(Tq);var uh=qw,kq=Cl;function Bq(t){var e=B_(t),r=e.toRed(uh.mont(t.modulus)).redPow(new uh(t.publicExponent)).fromRed();return{blinder:r,unblinder:e.invm(t.modulus)}}function B_(t){var e=t.modulus.byteLength(),r;do r=new uh(kq(e));while(r.cmp(t.modulus)>=0||!r.umod(t.prime1)||!r.umod(t.prime2));return r}function I_(t,e){var r=Bq(e),n=e.modulus.byteLength(),s=new uh(t).mul(r.blinder).umod(e.modulus),i=s.toRed(uh.mont(e.prime1)),o=s.toRed(uh.mont(e.prime2)),f=e.coefficient,u=e.prime1,h=e.prime2,p=i.redPow(e.exponent1).fromRed(),d=o.redPow(e.exponent2).fromRed(),v=p.isub(d).imul(f).umod(u).imul(h);return d.iadd(v).imul(r.unblinder).umod(e.modulus).toArrayLike(mt.Buffer,"be",n)}I_.getr=B_;var P3=I_,E2={};const Iq="elliptic",Pq="6.5.4",Oq="EC cryptography",Lq="lib/elliptic.js",Dq=["lib"],Fq={lint:"eslint lib test","lint:fix":"npm run lint -- --fix",unit:"istanbul test _mocha --reporter=spec test/index.js",test:"npm run lint && npm run unit",version:"grunt dist && git add dist/"},Uq={type:"git",url:"git@github.com:indutny/elliptic"},Hq=["EC","Elliptic","curve","Cryptography"],jq="Fedor Indutny ",zq="MIT",Kq={url:"https://github.com/indutny/elliptic/issues"},qq="https://github.com/indutny/elliptic",Gq={brfs:"^2.0.2",coveralls:"^3.1.0",eslint:"^7.6.0",grunt:"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.5",mocha:"^8.0.1"},Vq={"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"},Wq={name:Iq,version:Pq,description:Oq,main:Lq,files:Dq,scripts:Fq,repository:Uq,keywords:Hq,author:jq,license:zq,bugs:Kq,homepage:qq,devDependencies:Gq,dependencies:Vq};var Bs={},O3={};(function(t){var e=t;function r(i,o){if(Array.isArray(i))return i.slice();if(!i)return[];var f=[];if(typeof i!="string"){for(var u=0;u>8,d=h&255;p?f.push(p,d):f.push(d)}return f}e.toArray=r;function n(i){return i.length===1?"0"+i:i}e.zero2=n;function s(i){for(var o="",f=0;f(A>>1)-1?N=(A>>1)-C:N=C,M.isubn(N)):N=0,w[R]=N,M.iushrn(1)}return w}e.getNAF=i;function o(p,d){var v=[[],[]];p=p.clone(),d=d.clone();for(var w=0,A=0,M;p.cmpn(-w)>0||d.cmpn(-A)>0;){var R=p.andln(3)+w&3,N=d.andln(3)+A&3;R===3&&(R=-1),N===3&&(N=-1);var C;R&1?(M=p.andln(7)+w&7,(M===3||M===5)&&N===2?C=-R:C=R):C=0,v[0].push(C);var B;N&1?(M=d.andln(7)+A&7,(M===3||M===5)&&R===2?B=-N:B=N):B=0,v[1].push(B),2*w===C+1&&(w=1-w),2*A===B+1&&(A=1-A),p.iushrn(1),d.iushrn(1)}return v}e.getJSF=o;function f(p,d,v){var w="_"+d;p.prototype[d]=function(){return this[w]!==void 0?this[w]:this[w]=v.call(this)}}e.cachedProperty=f;function u(p){return typeof p=="string"?e.toArray(p,"hex"):p}e.parseBytes=u;function h(p){return new r(p,"hex","le")}e.intFromLE=h})(Bs);var L3={},ic=gn,S1=Bs,jg=S1.getNAF,Zq=S1.getJSF,zg=S1.assert;function Ul(t,e){this.type=t,this.p=new ic(e.p,16),this.red=e.prime?ic.red(e.prime):ic.mont(this.p),this.zero=new ic(0).toRed(this.red),this.one=new ic(1).toRed(this.red),this.two=new ic(2).toRed(this.red),this.n=e.n&&new ic(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var dy=Ul;Ul.prototype.point=function(){throw new Error("Not implemented")};Ul.prototype.validate=function(){throw new Error("Not implemented")};Ul.prototype._fixedNafMul=function(e,r){zg(e.precomputed);var n=e._getDoubles(),s=jg(r,1,this._bitLength),i=(1<=f;h--)u=(u<<1)+s[h];o.push(u)}for(var p=this.jpoint(null,null,null),d=this.jpoint(null,null,null),v=i;v>0;v--){for(f=0;f=0;u--){for(var h=0;u>=0&&o[u]===0;u--)h++;if(u>=0&&h++,f=f.dblp(h),u<0)break;var p=o[u];zg(p!==0),e.type==="affine"?p>0?f=f.mixedAdd(i[p-1>>1]):f=f.mixedAdd(i[-p-1>>1].neg()):p>0?f=f.add(i[p-1>>1]):f=f.add(i[-p-1>>1].neg())}return e.type==="affine"?f.toP():f};Ul.prototype._wnafMulAdd=function(e,r,n,s,i){var o=this._wnafT1,f=this._wnafT2,u=this._wnafT3,h=0,p,d,v;for(p=0;p=1;p-=2){var A=p-1,M=p;if(o[A]!==1||o[M]!==1){u[A]=jg(n[A],o[A],this._bitLength),u[M]=jg(n[M],o[M],this._bitLength),h=Math.max(u[A].length,h),h=Math.max(u[M].length,h);continue}var R=[r[A],null,null,r[M]];r[A].y.cmp(r[M].y)===0?(R[1]=r[A].add(r[M]),R[2]=r[A].toJ().mixedAdd(r[M].neg())):r[A].y.cmp(r[M].y.redNeg())===0?(R[1]=r[A].toJ().mixedAdd(r[M]),R[2]=r[A].add(r[M].neg())):(R[1]=r[A].toJ().mixedAdd(r[M]),R[2]=r[A].toJ().mixedAdd(r[M].neg()));var N=[-3,-1,-5,-7,0,7,5,1,3],C=Zq(n[A],n[M]);for(h=Math.max(C[0].length,h),u[A]=new Array(h),u[M]=new Array(h),d=0;d=0;p--){for(var W=0;p>=0;){var k=!0;for(d=0;d=0&&W++,D=D.dblp(W),p<0)break;for(d=0;d0?v=f[d][I-1>>1]:I<0&&(v=f[d][-I-1>>1].neg()),v.type==="affine"?D=D.mixedAdd(v):D=D.add(v))}}for(p=0;p=Math.ceil((e.bitLength()+1)/r.step):!1};da.prototype._getDoubles=function(e,r){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],s=this,i=0;i=0&&(w=h,A=p),d.negative&&(d=d.neg(),v=v.neg()),w.negative&&(w=w.neg(),A=A.neg()),[{a:d,b:v},{a:w,b:A}]};pa.prototype._endoSplit=function(e){var r=this.endo.basis,n=r[0],s=r[1],i=s.b.mul(e).divRound(this.n),o=n.b.neg().mul(e).divRound(this.n),f=i.mul(n.a),u=o.mul(s.a),h=i.mul(n.b),p=o.mul(s.b),d=e.sub(f).sub(u),v=h.add(p).neg();return{k1:d,k2:v}};pa.prototype.pointFromX=function(e,r){e=new Tn(e,16),e.red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),s=n.redSqrt();if(s.redSqr().redSub(n).cmp(this.zero)!==0)throw new Error("invalid point");var i=s.fromRed().isOdd();return(r&&!i||!r&&i)&&(s=s.redNeg()),this.point(e,s)};pa.prototype.validate=function(e){if(e.inf)return!0;var r=e.x,n=e.y,s=this.a.redMul(r),i=r.redSqr().redMul(r).redIAdd(s).redIAdd(this.b);return n.redSqr().redISub(i).cmpn(0)===0};pa.prototype._endoWnafMulAdd=function(e,r,n){for(var s=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""};ui.prototype.isInfinity=function(){return this.inf};ui.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(this.x.cmp(e.x)===0)return this.curve.point(null,null);var r=this.y.redSub(e.y);r.cmpn(0)!==0&&(r=r.redMul(this.x.redSub(e.x).redInvm()));var n=r.redSqr().redISub(this.x).redISub(e.x),s=r.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,s)};ui.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(e.cmpn(0)===0)return this.curve.point(null,null);var r=this.curve.a,n=this.x.redSqr(),s=e.redInvm(),i=n.redAdd(n).redIAdd(n).redIAdd(r).redMul(s),o=i.redSqr().redISub(this.x.redAdd(this.x)),f=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,f)};ui.prototype.getX=function(){return this.x.fromRed()};ui.prototype.getY=function(){return this.y.fromRed()};ui.prototype.mul=function(e){return e=new Tn(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)};ui.prototype.mulAdd=function(e,r,n){var s=[this,r],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(s,i):this.curve._wnafMulAdd(1,s,i,2)};ui.prototype.jmulAdd=function(e,r,n){var s=[this,r],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(s,i,!0):this.curve._wnafMulAdd(1,s,i,2,!0)};ui.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||this.x.cmp(e.x)===0&&this.y.cmp(e.y)===0)};ui.prototype.neg=function(e){if(this.inf)return this;var r=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,s=function(i){return i.neg()};r.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(s)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(s)}}}return r};ui.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var e=this.curve.jpoint(this.x,this.y,this.curve.one);return e};function Si(t,e,r,n){Fd.BasePoint.call(this,t,"jacobian"),e===null&&r===null&&n===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new Tn(0)):(this.x=new Tn(e,16),this.y=new Tn(r,16),this.z=new Tn(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}D3(Si,Fd.BasePoint);pa.prototype.jpoint=function(e,r,n){return new Si(this,e,r,n)};Si.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),r=e.redSqr(),n=this.x.redMul(r),s=this.y.redMul(r).redMul(e);return this.curve.point(n,s)};Si.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)};Si.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var r=e.z.redSqr(),n=this.z.redSqr(),s=this.x.redMul(r),i=e.x.redMul(n),o=this.y.redMul(r.redMul(e.z)),f=e.y.redMul(n.redMul(this.z)),u=s.redSub(i),h=o.redSub(f);if(u.cmpn(0)===0)return h.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var p=u.redSqr(),d=p.redMul(u),v=s.redMul(p),w=h.redSqr().redIAdd(d).redISub(v).redISub(v),A=h.redMul(v.redISub(w)).redISub(o.redMul(d)),M=this.z.redMul(e.z).redMul(u);return this.curve.jpoint(w,A,M)};Si.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var r=this.z.redSqr(),n=this.x,s=e.x.redMul(r),i=this.y,o=e.y.redMul(r).redMul(this.z),f=n.redSub(s),u=i.redSub(o);if(f.cmpn(0)===0)return u.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var h=f.redSqr(),p=h.redMul(f),d=n.redMul(h),v=u.redSqr().redIAdd(p).redISub(d).redISub(d),w=u.redMul(d.redISub(v)).redISub(i.redMul(p)),A=this.z.redMul(f);return this.curve.jpoint(v,w,A)};Si.prototype.dblp=function(e){if(e===0)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var r;if(this.curve.zeroA||this.curve.threeA){var n=this;for(r=0;r=0)return!1;if(n.redIAdd(i),this.x.cmp(n)===0)return!0}};Si.prototype.inspect=function(){return this.isInfinity()?"":""};Si.prototype.isInfinity=function(){return this.z.cmpn(0)===0};var Wu=gn,P_=Ht,py=dy,Jq=Bs;function Ud(t){py.call(this,"mont",t),this.a=new Wu(t.a,16).toRed(this.red),this.b=new Wu(t.b,16).toRed(this.red),this.i4=new Wu(4).toRed(this.red).redInvm(),this.two=new Wu(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}P_(Ud,py);var $q=Ud;Ud.prototype.validate=function(e){var r=e.normalize().x,n=r.redSqr(),s=n.redMul(r).redAdd(n.redMul(this.a)).redAdd(r),i=s.redSqrt();return i.redSqr().cmp(s)===0};function li(t,e,r){py.BasePoint.call(this,t,"projective"),e===null&&r===null?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new Wu(e,16),this.z=new Wu(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}P_(li,py.BasePoint);Ud.prototype.decodePoint=function(e,r){return this.point(Jq.toArray(e,r),1)};Ud.prototype.point=function(e,r){return new li(this,e,r)};Ud.prototype.pointFromJSON=function(e){return li.fromJSON(this,e)};li.prototype.precompute=function(){};li.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())};li.fromJSON=function(e,r){return new li(e,r[0],r[1]||e.one)};li.prototype.inspect=function(){return this.isInfinity()?"":""};li.prototype.isInfinity=function(){return this.z.cmpn(0)===0};li.prototype.dbl=function(){var e=this.x.redAdd(this.z),r=e.redSqr(),n=this.x.redSub(this.z),s=n.redSqr(),i=r.redSub(s),o=r.redMul(s),f=i.redMul(s.redAdd(this.curve.a24.redMul(i)));return this.curve.point(o,f)};li.prototype.add=function(){throw new Error("Not supported on Montgomery curve")};li.prototype.diffAdd=function(e,r){var n=this.x.redAdd(this.z),s=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z),f=o.redMul(n),u=i.redMul(s),h=r.z.redMul(f.redAdd(u).redSqr()),p=r.x.redMul(f.redISub(u).redSqr());return this.curve.point(h,p)};li.prototype.mul=function(e){for(var r=e.clone(),n=this,s=this.curve.point(null,null),i=this,o=[];r.cmpn(0)!==0;r.iushrn(1))o.push(r.andln(1));for(var f=o.length-1;f>=0;f--)o[f]===0?(n=n.diffAdd(s,i),s=s.dbl()):(s=n.diffAdd(s,i),n=n.dbl());return s};li.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")};li.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")};li.prototype.eq=function(e){return this.getX().cmp(e.getX())===0};li.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this};li.prototype.getX=function(){return this.normalize(),this.x.fromRed()};var eG=Bs,vf=gn,O_=Ht,my=dy,tG=eG.assert;function Uo(t){this.twisted=(t.a|0)!==1,this.mOneA=this.twisted&&(t.a|0)===-1,this.extended=this.mOneA,my.call(this,"edwards",t),this.a=new vf(t.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new vf(t.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new vf(t.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),tG(!this.twisted||this.c.fromRed().cmpn(1)===0),this.oneC=(t.c|0)===1}O_(Uo,my);var rG=Uo;Uo.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)};Uo.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)};Uo.prototype.jpoint=function(e,r,n,s){return this.point(e,r,n,s)};Uo.prototype.pointFromX=function(e,r){e=new vf(e,16),e.red||(e=e.toRed(this.red));var n=e.redSqr(),s=this.c2.redSub(this.a.redMul(n)),i=this.one.redSub(this.c2.redMul(this.d).redMul(n)),o=s.redMul(i.redInvm()),f=o.redSqrt();if(f.redSqr().redSub(o).cmp(this.zero)!==0)throw new Error("invalid point");var u=f.fromRed().isOdd();return(r&&!u||!r&&u)&&(f=f.redNeg()),this.point(e,f)};Uo.prototype.pointFromY=function(e,r){e=new vf(e,16),e.red||(e=e.toRed(this.red));var n=e.redSqr(),s=n.redSub(this.c2),i=n.redMul(this.d).redMul(this.c2).redSub(this.a),o=s.redMul(i.redInvm());if(o.cmp(this.zero)===0){if(r)throw new Error("invalid point");return this.point(this.zero,e)}var f=o.redSqrt();if(f.redSqr().redSub(o).cmp(this.zero)!==0)throw new Error("invalid point");return f.fromRed().isOdd()!==r&&(f=f.redNeg()),this.point(f,e)};Uo.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var r=e.x.redSqr(),n=e.y.redSqr(),s=r.redMul(this.a).redAdd(n),i=this.c2.redMul(this.one.redAdd(this.d.redMul(r).redMul(n)));return s.cmp(i)===0};function an(t,e,r,n,s){my.BasePoint.call(this,t,"projective"),e===null&&r===null&&n===null?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new vf(e,16),this.y=new vf(r,16),this.z=n?new vf(n,16):this.curve.one,this.t=s&&new vf(s,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}O_(an,my.BasePoint);Uo.prototype.pointFromJSON=function(e){return an.fromJSON(this,e)};Uo.prototype.point=function(e,r,n,s){return new an(this,e,r,n,s)};an.fromJSON=function(e,r){return new an(e,r[0],r[1],r[2])};an.prototype.inspect=function(){return this.isInfinity()?"":""};an.prototype.isInfinity=function(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)};an.prototype._extDbl=function(){var e=this.x.redSqr(),r=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var s=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(r),o=s.redAdd(r),f=o.redSub(n),u=s.redSub(r),h=i.redMul(f),p=o.redMul(u),d=i.redMul(u),v=f.redMul(o);return this.curve.point(h,p,v,d)};an.prototype._projDbl=function(){var e=this.x.redAdd(this.y).redSqr(),r=this.x.redSqr(),n=this.y.redSqr(),s,i,o,f,u,h;if(this.curve.twisted){f=this.curve._mulA(r);var p=f.redAdd(n);this.zOne?(s=e.redSub(r).redSub(n).redMul(p.redSub(this.curve.two)),i=p.redMul(f.redSub(n)),o=p.redSqr().redSub(p).redSub(p)):(u=this.z.redSqr(),h=p.redSub(u).redISub(u),s=e.redSub(r).redISub(n).redMul(h),i=p.redMul(f.redSub(n)),o=p.redMul(h))}else f=r.redAdd(n),u=this.curve._mulC(this.z).redSqr(),h=f.redSub(u).redSub(u),s=this.curve._mulC(e.redISub(f)).redMul(h),i=this.curve._mulC(f).redMul(r.redISub(n)),o=f.redMul(h);return this.curve.point(s,i,o)};an.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()};an.prototype._extAdd=function(e){var r=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),s=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=n.redSub(r),f=i.redSub(s),u=i.redAdd(s),h=n.redAdd(r),p=o.redMul(f),d=u.redMul(h),v=o.redMul(h),w=f.redMul(u);return this.curve.point(p,d,w,v)};an.prototype._projAdd=function(e){var r=this.z.redMul(e.z),n=r.redSqr(),s=this.x.redMul(e.x),i=this.y.redMul(e.y),o=this.curve.d.redMul(s).redMul(i),f=n.redSub(o),u=n.redAdd(o),h=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(s).redISub(i),p=r.redMul(f).redMul(h),d,v;return this.curve.twisted?(d=r.redMul(u).redMul(i.redSub(this.curve._mulA(s))),v=f.redMul(u)):(d=r.redMul(u).redMul(i.redSub(s)),v=this.curve._mulC(f).redMul(u)),this.curve.point(p,d,v)};an.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)};an.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)};an.prototype.mulAdd=function(e,r,n){return this.curve._wnafMulAdd(1,[this,r],[e,n],2,!1)};an.prototype.jmulAdd=function(e,r,n){return this.curve._wnafMulAdd(1,[this,r],[e,n],2,!0)};an.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this};an.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())};an.prototype.getX=function(){return this.normalize(),this.x.fromRed()};an.prototype.getY=function(){return this.normalize(),this.y.fromRed()};an.prototype.eq=function(e){return this===e||this.getX().cmp(e.getX())===0&&this.getY().cmp(e.getY())===0};an.prototype.eqXToP=function(e){var r=e.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(r)===0)return!0;for(var n=e.clone(),s=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(r.redIAdd(s),this.x.cmp(r)===0)return!0}};an.prototype.toP=an.prototype.normalize;an.prototype.mixedAdd=an.prototype.add;(function(t){var e=t;e.base=dy,e.short=Xq,e.mont=$q,e.edwards=rG})(L3);var gy={},M2,Lx;function nG(){return Lx||(Lx=1,M2={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}),M2}(function(t){var e=t,r=fs,n=L3,s=Bs,i=s.assert;function o(h){h.type==="short"?this.curve=new n.short(h):h.type==="edwards"?this.curve=new n.edwards(h):this.curve=new n.mont(h),this.g=this.curve.g,this.n=this.curve.n,this.hash=h.hash,i(this.g.validate(),"Invalid curve"),i(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}e.PresetCurve=o;function f(h,p){Object.defineProperty(e,h,{configurable:!0,enumerable:!0,get:function(){var d=new o(p);return Object.defineProperty(e,h,{configurable:!0,enumerable:!0,value:d}),d}})}f("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:r.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),f("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:r.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),f("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:r.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),f("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:r.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),f("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:r.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),f("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:r.sha256,gRed:!1,g:["9"]}),f("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:r.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var u;try{u=nG()}catch{u=void 0}f("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:r.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",u]})})(gy);var iG=fs,Pc=O3,L_=fa;function kl(t){if(!(this instanceof kl))return new kl(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=Pc.toArray(t.entropy,t.entropyEnc||"hex"),r=Pc.toArray(t.nonce,t.nonceEnc||"hex"),n=Pc.toArray(t.pers,t.persEnc||"hex");L_(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,r,n)}var sG=kl;kl.prototype._init=function(e,r,n){var s=e.concat(r).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1};kl.prototype.generate=function(e,r,n,s){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof r!="string"&&(s=n,n=r,r=null),n&&(n=Pc.toArray(n,s||"hex"),this._update(n));for(var i=[];i.length"};var Kg=gn,F3=Bs,lG=F3.assert;function vy(t,e){if(t instanceof vy)return t;this._importDER(t,e)||(lG(t.r&&t.s,"Signature without r or s"),this.r=new Kg(t.r,16),this.s=new Kg(t.s,16),t.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=t.recoveryParam)}var cG=vy;function uG(){this.place=0}function S2(t,e){var r=t[e.place++];if(!(r&128))return r;var n=r&15;if(n===0||n>4)return!1;for(var s=0,i=0,o=e.place;i>>=0;return s<=127?!1:(e.place=o,s)}function Dx(t){for(var e=0,r=t.length-1;!t[e]&&!(t[e+1]&128)&&e>>3);for(t.push(r|128);--r;)t.push(e>>>(r<<3)&255);t.push(e)}vy.prototype.toDER=function(e){var r=this.r.toArray(),n=this.s.toArray();for(r[0]&128&&(r=[0].concat(r)),n[0]&128&&(n=[0].concat(n)),r=Dx(r),n=Dx(n);!n[0]&&!(n[1]&128);)n=n.slice(1);var s=[2];_2(s,r.length),s=s.concat(r),s.push(2),_2(s,n.length);var i=s.concat(n),o=[48];return _2(o,i.length),o=o.concat(i),F3.encode(o,e)};var R2,Fx;function hG(){if(Fx)return R2;Fx=1;var t=gn,e=sG,r=Bs,n=gy,s=I3(),i=r.assert,o=fG,f=cG;function u(h){if(!(this instanceof u))return new u(h);typeof h=="string"&&(i(Object.prototype.hasOwnProperty.call(n,h),"Unknown curve "+h),h=n[h]),h instanceof n.PresetCurve&&(h={curve:h}),this.curve=h.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=h.curve.g,this.g.precompute(h.curve.n.bitLength()+1),this.hash=h.hash||h.curve.hash}return R2=u,u.prototype.keyPair=function(p){return new o(this,p)},u.prototype.keyFromPrivate=function(p,d){return o.fromPrivate(this,p,d)},u.prototype.keyFromPublic=function(p,d){return o.fromPublic(this,p,d)},u.prototype.genKeyPair=function(p){p||(p={});for(var d=new e({hash:this.hash,pers:p.pers,persEnc:p.persEnc||"utf8",entropy:p.entropy||s(this.hash.hmacStrength),entropyEnc:p.entropy&&p.entropyEnc||"utf8",nonce:this.n.toArray()}),v=this.n.byteLength(),w=this.n.sub(new t(2));;){var A=new t(d.generate(v));if(!(A.cmp(w)>0))return A.iaddn(1),this.keyFromPrivate(A)}},u.prototype._truncateToN=function(p,d){var v=p.byteLength()*8-this.n.bitLength();return v>0&&(p=p.ushrn(v)),!d&&p.cmp(this.n)>=0?p.sub(this.n):p},u.prototype.sign=function(p,d,v,w){typeof v=="object"&&(w=v,v=null),w||(w={}),d=this.keyFromPrivate(d,v),p=this._truncateToN(new t(p,16));for(var A=this.n.byteLength(),M=d.getPrivate().toArray("be",A),R=p.toArray("be",A),N=new e({hash:this.hash,entropy:M,nonce:R,pers:w.pers,persEnc:w.persEnc||"utf8"}),C=this.n.sub(new t(1)),B=0;;B++){var O=w.k?w.k(B):new t(N.generate(this.n.byteLength()));if(O=this._truncateToN(O,!0),!(O.cmpn(1)<=0||O.cmp(C)>=0)){var D=this.g.mul(O);if(!D.isInfinity()){var q=D.getX(),W=q.umod(this.n);if(W.cmpn(0)!==0){var k=O.invm(this.n).mul(W.mul(d.getPrivate()).iadd(p));if(k=k.umod(this.n),k.cmpn(0)!==0){var I=(D.getY().isOdd()?1:0)|(q.cmp(W)!==0?2:0);return w.canonical&&k.cmp(this.nh)>0&&(k=this.n.sub(k),I^=1),new f({r:W,s:k,recoveryParam:I})}}}}}},u.prototype.verify=function(p,d,v,w){p=this._truncateToN(new t(p,16)),v=this.keyFromPublic(v,w),d=new f(d,"hex");var A=d.r,M=d.s;if(A.cmpn(1)<0||A.cmp(this.n)>=0||M.cmpn(1)<0||M.cmp(this.n)>=0)return!1;var R=M.invm(this.n),N=R.mul(p).umod(this.n),C=R.mul(A).umod(this.n),B;return this.curve._maxwellTrick?(B=this.g.jmulAdd(N,v.getPublic(),C),B.isInfinity()?!1:B.eqXToP(A)):(B=this.g.mulAdd(N,v.getPublic(),C),B.isInfinity()?!1:B.getX().umod(this.n).cmp(A)===0)},u.prototype.recoverPubKey=function(h,p,d,v){i((3&d)===d,"The recovery param is more than two bits"),p=new f(p,v);var w=this.n,A=new t(h),M=p.r,R=p.s,N=d&1,C=d>>1;if(M.cmp(this.curve.p.umod(this.curve.n))>=0&&C)throw new Error("Unable to find sencond key candinate");C?M=this.curve.pointFromX(M.add(this.curve.n),N):M=this.curve.pointFromX(M,N);var B=p.r.invm(w),O=w.sub(A).mul(B).umod(w),D=R.mul(B).umod(w);return this.g.mulAdd(O,M,D)},u.prototype.getKeyRecoveryParam=function(h,p,d,v){if(p=new f(p,v),p.recoveryParam!==null)return p.recoveryParam;for(var w=0;w<4;w++){var A;try{A=this.recoverPubKey(h,p,w)}catch{continue}if(A.eq(d))return w}throw new Error("Unable to find valid recovery factor")},R2}var _1=Bs,D_=_1.assert,Ux=_1.parseBytes,Hd=_1.cachedProperty;function fi(t,e){this.eddsa=t,this._secret=Ux(e.secret),t.isPoint(e.pub)?this._pub=e.pub:this._pubBytes=Ux(e.pub)}fi.fromPublic=function(e,r){return r instanceof fi?r:new fi(e,{pub:r})};fi.fromSecret=function(e,r){return r instanceof fi?r:new fi(e,{secret:r})};fi.prototype.secret=function(){return this._secret};Hd(fi,"pubBytes",function(){return this.eddsa.encodePoint(this.pub())});Hd(fi,"pub",function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())});Hd(fi,"privBytes",function(){var e=this.eddsa,r=this.hash(),n=e.encodingLength-1,s=r.slice(0,e.encodingLength);return s[0]&=248,s[n]&=127,s[n]|=64,s});Hd(fi,"priv",function(){return this.eddsa.decodeInt(this.privBytes())});Hd(fi,"hash",function(){return this.eddsa.hash().update(this.secret()).digest()});Hd(fi,"messagePrefix",function(){return this.hash().slice(this.eddsa.encodingLength)});fi.prototype.sign=function(e){return D_(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)};fi.prototype.verify=function(e,r){return this.eddsa.verify(e,r,this)};fi.prototype.getSecret=function(e){return D_(this._secret,"KeyPair is public only"),_1.encode(this.secret(),e)};fi.prototype.getPublic=function(e){return _1.encode(this.pubBytes(),e)};var dG=fi,pG=gn,yy=Bs,mG=yy.assert,by=yy.cachedProperty,gG=yy.parseBytes;function au(t,e){this.eddsa=t,typeof e!="object"&&(e=gG(e)),Array.isArray(e)&&(e={R:e.slice(0,t.encodingLength),S:e.slice(t.encodingLength)}),mG(e.R&&e.S,"Signature without R or S"),t.isPoint(e.R)&&(this._R=e.R),e.S instanceof pG&&(this._S=e.S),this._Rencoded=Array.isArray(e.R)?e.R:e.Rencoded,this._Sencoded=Array.isArray(e.S)?e.S:e.Sencoded}by(au,"S",function(){return this.eddsa.decodeInt(this.Sencoded())});by(au,"R",function(){return this.eddsa.decodePoint(this.Rencoded())});by(au,"Rencoded",function(){return this.eddsa.encodePoint(this.R())});by(au,"Sencoded",function(){return this.eddsa.encodeInt(this.S())});au.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())};au.prototype.toHex=function(){return yy.encode(this.toBytes(),"hex").toUpperCase()};var vG=au,yG=fs,bG=gy,wd=Bs,wG=wd.assert,F_=wd.parseBytes,U_=dG,Hx=vG;function ms(t){if(wG(t==="ed25519","only tested with ed25519 so far"),!(this instanceof ms))return new ms(t);t=bG[t].curve,this.curve=t,this.g=t.g,this.g.precompute(t.n.bitLength()+1),this.pointClass=t.point().constructor,this.encodingLength=Math.ceil(t.n.bitLength()/8),this.hash=yG.sha512}var AG=ms;ms.prototype.sign=function(e,r){e=F_(e);var n=this.keyFromSecret(r),s=this.hashInt(n.messagePrefix(),e),i=this.g.mul(s),o=this.encodePoint(i),f=this.hashInt(o,n.pubBytes(),e).mul(n.priv()),u=s.add(f).umod(this.curve.n);return this.makeSignature({R:i,S:u,Rencoded:o})};ms.prototype.verify=function(e,r,n){e=F_(e),r=this.makeSignature(r);var s=this.keyFromPublic(n),i=this.hashInt(r.Rencoded(),s.pubBytes(),e),o=this.g.mul(r.S()),f=r.R().add(s.pub().mul(i));return f.eq(o)};ms.prototype.hashInt=function(){for(var e=this.hash(),r=0;r0?a:c},i.min=function(a,c){return a.cmp(c)<0?a:c},i.prototype._init=function(a,c,m){if(typeof a=="number")return this._initNumber(a,c,m);if(typeof a=="object")return this._initArray(a,c,m);c==="hex"&&(c=16),n(c===(c|0)&&c>=2&&c<=36),a=a.toString().replace(/\s+/g,"");var b=0;a[0]==="-"&&(b++,this.negative=1),b=0;b-=3)_=a[b]|a[b-1]<<8|a[b-2]<<16,this.words[x]|=_<>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);else if(m==="le")for(b=0,x=0;b>>26-S&67108863,S+=24,S>=26&&(S-=26,x++);return this._strip()};function f(g,a){var c=g.charCodeAt(a);if(c>=48&&c<=57)return c-48;if(c>=65&&c<=70)return c-55;if(c>=97&&c<=102)return c-87;n(!1,"Invalid character in "+g)}function u(g,a,c){var m=f(g,c);return c-1>=a&&(m|=f(g,c-1)<<4),m}i.prototype._parseHex=function(a,c,m){this.length=Math.ceil((a.length-c)/6),this.words=new Array(this.length);for(var b=0;b=c;b-=2)S=u(a,c,b)<=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8;else{var y=a.length-c;for(b=y%2===0?c+1:c;b=18?(x-=18,_+=1,this.words[_]|=S>>>26):x+=8}this._strip()};function h(g,a,c,m){for(var b=0,x=0,_=Math.min(g.length,c),S=a;S<_;S++){var y=g.charCodeAt(S)-48;b*=m,y>=49?x=y-49+10:y>=17?x=y-17+10:x=y,n(y>=0&&x1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},i.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{i.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch{i.prototype.inspect=d}else i.prototype.inspect=d;function d(){return(this.red?""}var v=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],w=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],A=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];i.prototype.toString=function(a,c){a=a||10,c=c|0||1;var m;if(a===16||a==="hex"){m="";for(var b=0,x=0,_=0;_>>24-b&16777215,b+=2,b>=26&&(b-=26,_--),x!==0||_!==this.length-1?m=v[6-y.length]+y+m:m=y+m}for(x!==0&&(m=x.toString(16)+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}if(a===(a|0)&&a>=2&&a<=36){var l=w[a],E=A[a];m="";var Y=this.clone();for(Y.negative=0;!Y.isZero();){var L=Y.modrn(E).toString(a);Y=Y.idivn(E),Y.isZero()?m=L+m:m=v[l-L.length]+L+m}for(this.isZero()&&(m="0"+m);m.length%c!==0;)m="0"+m;return this.negative!==0&&(m="-"+m),m}n(!1,"Base should be between 2 and 36")},i.prototype.toNumber=function(){var a=this.words[0];return this.length===2?a+=this.words[1]*67108864:this.length===3&&this.words[2]===1?a+=4503599627370496+this.words[1]*67108864:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-a:a},i.prototype.toJSON=function(){return this.toString(16,2)},o&&(i.prototype.toBuffer=function(a,c){return this.toArrayLike(o,a,c)}),i.prototype.toArray=function(a,c){return this.toArrayLike(Array,a,c)};var M=function(a,c){return a.allocUnsafe?a.allocUnsafe(c):new a(c)};i.prototype.toArrayLike=function(a,c,m){this._strip();var b=this.byteLength(),x=m||Math.max(1,b);n(b<=x,"byte array longer than desired length"),n(x>0,"Requested array length <= 0");var _=M(a,x),S=c==="le"?"LE":"BE";return this["_toArrayLike"+S](_,b),_},i.prototype._toArrayLikeLE=function(a,c){for(var m=0,b=0,x=0,_=0;x>8&255),m>16&255),_===6?(m>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m=0&&(a[m--]=S>>8&255),m>=0&&(a[m--]=S>>16&255),_===6?(m>=0&&(a[m--]=S>>24&255),b=0,_=0):(b=S>>>24,_+=2)}if(m>=0)for(a[m--]=b;m>=0;)a[m--]=0},Math.clz32?i.prototype._countBits=function(a){return 32-Math.clz32(a)}:i.prototype._countBits=function(a){var c=a,m=0;return c>=4096&&(m+=13,c>>>=13),c>=64&&(m+=7,c>>>=7),c>=8&&(m+=4,c>>>=4),c>=2&&(m+=2,c>>>=2),m+c},i.prototype._zeroBits=function(a){if(a===0)return 26;var c=a,m=0;return c&8191||(m+=13,c>>>=13),c&127||(m+=7,c>>>=7),c&15||(m+=4,c>>>=4),c&3||(m+=2,c>>>=2),c&1||m++,m},i.prototype.bitLength=function(){var a=this.words[this.length-1],c=this._countBits(a);return(this.length-1)*26+c};function R(g){for(var a=new Array(g.bitLength()),c=0;c>>b&1}return a}i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var a=0,c=0;ca.length?this.clone().ior(a):a.clone().ior(this)},i.prototype.uor=function(a){return this.length>a.length?this.clone().iuor(a):a.clone().iuor(this)},i.prototype.iuand=function(a){var c;this.length>a.length?c=a:c=this;for(var m=0;ma.length?this.clone().iand(a):a.clone().iand(this)},i.prototype.uand=function(a){return this.length>a.length?this.clone().iuand(a):a.clone().iuand(this)},i.prototype.iuxor=function(a){var c,m;this.length>a.length?(c=this,m=a):(c=a,m=this);for(var b=0;ba.length?this.clone().ixor(a):a.clone().ixor(this)},i.prototype.uxor=function(a){return this.length>a.length?this.clone().iuxor(a):a.clone().iuxor(this)},i.prototype.inotn=function(a){n(typeof a=="number"&&a>=0);var c=Math.ceil(a/26)|0,m=a%26;this._expand(c),m>0&&c--;for(var b=0;b0&&(this.words[b]=~this.words[b]&67108863>>26-m),this._strip()},i.prototype.notn=function(a){return this.clone().inotn(a)},i.prototype.setn=function(a,c){n(typeof a=="number"&&a>=0);var m=a/26|0,b=a%26;return this._expand(m+1),c?this.words[m]=this.words[m]|1<a.length?(m=this,b=a):(m=a,b=this);for(var x=0,_=0;_>>26;for(;x!==0&&_>>26;if(this.length=m.length,x!==0)this.words[this.length]=x,this.length++;else if(m!==this)for(;_a.length?this.clone().iadd(a):a.clone().iadd(this)},i.prototype.isub=function(a){if(a.negative!==0){a.negative=0;var c=this.iadd(a);return a.negative=1,c._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(a),this.negative=1,this._normSign();var m=this.cmp(a);if(m===0)return this.negative=0,this.length=1,this.words[0]=0,this;var b,x;m>0?(b=this,x=a):(b=a,x=this);for(var _=0,S=0;S>26,this.words[S]=c&67108863;for(;_!==0&&S>26,this.words[S]=c&67108863;if(_===0&&S>>26,Y=y&67108863,L=Math.min(l,a.length-1),F=Math.max(0,l-g.length+1);F<=L;F++){var V=l-F|0;b=g.words[V]|0,x=a.words[F]|0,_=b*x+Y,E+=_/67108864|0,Y=_&67108863}c.words[l]=Y|0,y=E|0}return y!==0?c.words[l]=y|0:c.length--,c._strip()}var C=function(a,c,m){var b=a.words,x=c.words,_=m.words,S=0,y,l,E,Y=b[0]|0,L=Y&8191,F=Y>>>13,V=b[1]|0,Z=V&8191,ee=V>>>13,ce=b[2]|0,U=ce&8191,j=ce>>>13,se=b[3]|0,re=se&8191,oe=se>>>13,Q=b[4]|0,z=Q&8191,G=Q>>>13,X=b[5]|0,ne=X&8191,ae=X>>>13,Me=b[6]|0,ge=Me&8191,pe=Me>>>13,ot=b[7]|0,we=ot&8191,me=ot>>>13,ut=b[8]|0,ze=ut&8191,_e=ut>>>13,Bt=b[9]|0,qe=Bt&8191,Te=Bt>>>13,xt=x[0]|0,He=xt&8191,Se=xt>>>13,Rt=x[1]|0,Ve=Rt&8191,Ee=Rt>>>13,Nt=x[2]|0,Ze=Nt&8191,Re=Nt>>>13,Ct=x[3]|0,je=Ct&8191,ke=Ct>>>13,Pt=x[4]|0,Ke=Pt&8191,Ne=Pt>>>13,Ot=x[5]|0,De=Ot&8191,Be=Ot>>>13,kt=x[6]|0,Ge=kt&8191,Ie=kt>>>13,Ut=x[7]|0,Ue=Ut&8191,Oe=Ut>>>13,It=x[8]|0,We=It&8191,Pe=It>>>13,_t=x[9]|0,Le=_t&8191,Ye=_t>>>13;m.negative=a.negative^c.negative,m.length=19,y=Math.imul(L,He),l=Math.imul(L,Se),l=l+Math.imul(F,He)|0,E=Math.imul(F,Se);var Ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ar>>>26)|0,Ar&=67108863,y=Math.imul(Z,He),l=Math.imul(Z,Se),l=l+Math.imul(ee,He)|0,E=Math.imul(ee,Se),y=y+Math.imul(L,Ve)|0,l=l+Math.imul(L,Ee)|0,l=l+Math.imul(F,Ve)|0,E=E+Math.imul(F,Ee)|0;var xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(xr>>>26)|0,xr&=67108863,y=Math.imul(U,He),l=Math.imul(U,Se),l=l+Math.imul(j,He)|0,E=Math.imul(j,Se),y=y+Math.imul(Z,Ve)|0,l=l+Math.imul(Z,Ee)|0,l=l+Math.imul(ee,Ve)|0,E=E+Math.imul(ee,Ee)|0,y=y+Math.imul(L,Ze)|0,l=l+Math.imul(L,Re)|0,l=l+Math.imul(F,Ze)|0,E=E+Math.imul(F,Re)|0;var Er=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Er>>>26)|0,Er&=67108863,y=Math.imul(re,He),l=Math.imul(re,Se),l=l+Math.imul(oe,He)|0,E=Math.imul(oe,Se),y=y+Math.imul(U,Ve)|0,l=l+Math.imul(U,Ee)|0,l=l+Math.imul(j,Ve)|0,E=E+Math.imul(j,Ee)|0,y=y+Math.imul(Z,Ze)|0,l=l+Math.imul(Z,Re)|0,l=l+Math.imul(ee,Ze)|0,E=E+Math.imul(ee,Re)|0,y=y+Math.imul(L,je)|0,l=l+Math.imul(L,ke)|0,l=l+Math.imul(F,je)|0,E=E+Math.imul(F,ke)|0;var Gt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,y=Math.imul(z,He),l=Math.imul(z,Se),l=l+Math.imul(G,He)|0,E=Math.imul(G,Se),y=y+Math.imul(re,Ve)|0,l=l+Math.imul(re,Ee)|0,l=l+Math.imul(oe,Ve)|0,E=E+Math.imul(oe,Ee)|0,y=y+Math.imul(U,Ze)|0,l=l+Math.imul(U,Re)|0,l=l+Math.imul(j,Ze)|0,E=E+Math.imul(j,Re)|0,y=y+Math.imul(Z,je)|0,l=l+Math.imul(Z,ke)|0,l=l+Math.imul(ee,je)|0,E=E+Math.imul(ee,ke)|0,y=y+Math.imul(L,Ke)|0,l=l+Math.imul(L,Ne)|0,l=l+Math.imul(F,Ke)|0,E=E+Math.imul(F,Ne)|0;var Vt=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,y=Math.imul(ne,He),l=Math.imul(ne,Se),l=l+Math.imul(ae,He)|0,E=Math.imul(ae,Se),y=y+Math.imul(z,Ve)|0,l=l+Math.imul(z,Ee)|0,l=l+Math.imul(G,Ve)|0,E=E+Math.imul(G,Ee)|0,y=y+Math.imul(re,Ze)|0,l=l+Math.imul(re,Re)|0,l=l+Math.imul(oe,Ze)|0,E=E+Math.imul(oe,Re)|0,y=y+Math.imul(U,je)|0,l=l+Math.imul(U,ke)|0,l=l+Math.imul(j,je)|0,E=E+Math.imul(j,ke)|0,y=y+Math.imul(Z,Ke)|0,l=l+Math.imul(Z,Ne)|0,l=l+Math.imul(ee,Ke)|0,E=E+Math.imul(ee,Ne)|0,y=y+Math.imul(L,De)|0,l=l+Math.imul(L,Be)|0,l=l+Math.imul(F,De)|0,E=E+Math.imul(F,Be)|0;var Lr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Lr>>>26)|0,Lr&=67108863,y=Math.imul(ge,He),l=Math.imul(ge,Se),l=l+Math.imul(pe,He)|0,E=Math.imul(pe,Se),y=y+Math.imul(ne,Ve)|0,l=l+Math.imul(ne,Ee)|0,l=l+Math.imul(ae,Ve)|0,E=E+Math.imul(ae,Ee)|0,y=y+Math.imul(z,Ze)|0,l=l+Math.imul(z,Re)|0,l=l+Math.imul(G,Ze)|0,E=E+Math.imul(G,Re)|0,y=y+Math.imul(re,je)|0,l=l+Math.imul(re,ke)|0,l=l+Math.imul(oe,je)|0,E=E+Math.imul(oe,ke)|0,y=y+Math.imul(U,Ke)|0,l=l+Math.imul(U,Ne)|0,l=l+Math.imul(j,Ke)|0,E=E+Math.imul(j,Ne)|0,y=y+Math.imul(Z,De)|0,l=l+Math.imul(Z,Be)|0,l=l+Math.imul(ee,De)|0,E=E+Math.imul(ee,Be)|0,y=y+Math.imul(L,Ge)|0,l=l+Math.imul(L,Ie)|0,l=l+Math.imul(F,Ge)|0,E=E+Math.imul(F,Ie)|0;var Zr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,y=Math.imul(we,He),l=Math.imul(we,Se),l=l+Math.imul(me,He)|0,E=Math.imul(me,Se),y=y+Math.imul(ge,Ve)|0,l=l+Math.imul(ge,Ee)|0,l=l+Math.imul(pe,Ve)|0,E=E+Math.imul(pe,Ee)|0,y=y+Math.imul(ne,Ze)|0,l=l+Math.imul(ne,Re)|0,l=l+Math.imul(ae,Ze)|0,E=E+Math.imul(ae,Re)|0,y=y+Math.imul(z,je)|0,l=l+Math.imul(z,ke)|0,l=l+Math.imul(G,je)|0,E=E+Math.imul(G,ke)|0,y=y+Math.imul(re,Ke)|0,l=l+Math.imul(re,Ne)|0,l=l+Math.imul(oe,Ke)|0,E=E+Math.imul(oe,Ne)|0,y=y+Math.imul(U,De)|0,l=l+Math.imul(U,Be)|0,l=l+Math.imul(j,De)|0,E=E+Math.imul(j,Be)|0,y=y+Math.imul(Z,Ge)|0,l=l+Math.imul(Z,Ie)|0,l=l+Math.imul(ee,Ge)|0,E=E+Math.imul(ee,Ie)|0,y=y+Math.imul(L,Ue)|0,l=l+Math.imul(L,Oe)|0,l=l+Math.imul(F,Ue)|0,E=E+Math.imul(F,Oe)|0;var Ir=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Ir>>>26)|0,Ir&=67108863,y=Math.imul(ze,He),l=Math.imul(ze,Se),l=l+Math.imul(_e,He)|0,E=Math.imul(_e,Se),y=y+Math.imul(we,Ve)|0,l=l+Math.imul(we,Ee)|0,l=l+Math.imul(me,Ve)|0,E=E+Math.imul(me,Ee)|0,y=y+Math.imul(ge,Ze)|0,l=l+Math.imul(ge,Re)|0,l=l+Math.imul(pe,Ze)|0,E=E+Math.imul(pe,Re)|0,y=y+Math.imul(ne,je)|0,l=l+Math.imul(ne,ke)|0,l=l+Math.imul(ae,je)|0,E=E+Math.imul(ae,ke)|0,y=y+Math.imul(z,Ke)|0,l=l+Math.imul(z,Ne)|0,l=l+Math.imul(G,Ke)|0,E=E+Math.imul(G,Ne)|0,y=y+Math.imul(re,De)|0,l=l+Math.imul(re,Be)|0,l=l+Math.imul(oe,De)|0,E=E+Math.imul(oe,Be)|0,y=y+Math.imul(U,Ge)|0,l=l+Math.imul(U,Ie)|0,l=l+Math.imul(j,Ge)|0,E=E+Math.imul(j,Ie)|0,y=y+Math.imul(Z,Ue)|0,l=l+Math.imul(Z,Oe)|0,l=l+Math.imul(ee,Ue)|0,E=E+Math.imul(ee,Oe)|0,y=y+Math.imul(L,We)|0,l=l+Math.imul(L,Pe)|0,l=l+Math.imul(F,We)|0,E=E+Math.imul(F,Pe)|0;var Dr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Dr>>>26)|0,Dr&=67108863,y=Math.imul(qe,He),l=Math.imul(qe,Se),l=l+Math.imul(Te,He)|0,E=Math.imul(Te,Se),y=y+Math.imul(ze,Ve)|0,l=l+Math.imul(ze,Ee)|0,l=l+Math.imul(_e,Ve)|0,E=E+Math.imul(_e,Ee)|0,y=y+Math.imul(we,Ze)|0,l=l+Math.imul(we,Re)|0,l=l+Math.imul(me,Ze)|0,E=E+Math.imul(me,Re)|0,y=y+Math.imul(ge,je)|0,l=l+Math.imul(ge,ke)|0,l=l+Math.imul(pe,je)|0,E=E+Math.imul(pe,ke)|0,y=y+Math.imul(ne,Ke)|0,l=l+Math.imul(ne,Ne)|0,l=l+Math.imul(ae,Ke)|0,E=E+Math.imul(ae,Ne)|0,y=y+Math.imul(z,De)|0,l=l+Math.imul(z,Be)|0,l=l+Math.imul(G,De)|0,E=E+Math.imul(G,Be)|0,y=y+Math.imul(re,Ge)|0,l=l+Math.imul(re,Ie)|0,l=l+Math.imul(oe,Ge)|0,E=E+Math.imul(oe,Ie)|0,y=y+Math.imul(U,Ue)|0,l=l+Math.imul(U,Oe)|0,l=l+Math.imul(j,Ue)|0,E=E+Math.imul(j,Oe)|0,y=y+Math.imul(Z,We)|0,l=l+Math.imul(Z,Pe)|0,l=l+Math.imul(ee,We)|0,E=E+Math.imul(ee,Pe)|0,y=y+Math.imul(L,Le)|0,l=l+Math.imul(L,Ye)|0,l=l+Math.imul(F,Le)|0,E=E+Math.imul(F,Ye)|0;var ar=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(ar>>>26)|0,ar&=67108863,y=Math.imul(qe,Ve),l=Math.imul(qe,Ee),l=l+Math.imul(Te,Ve)|0,E=Math.imul(Te,Ee),y=y+Math.imul(ze,Ze)|0,l=l+Math.imul(ze,Re)|0,l=l+Math.imul(_e,Ze)|0,E=E+Math.imul(_e,Re)|0,y=y+Math.imul(we,je)|0,l=l+Math.imul(we,ke)|0,l=l+Math.imul(me,je)|0,E=E+Math.imul(me,ke)|0,y=y+Math.imul(ge,Ke)|0,l=l+Math.imul(ge,Ne)|0,l=l+Math.imul(pe,Ke)|0,E=E+Math.imul(pe,Ne)|0,y=y+Math.imul(ne,De)|0,l=l+Math.imul(ne,Be)|0,l=l+Math.imul(ae,De)|0,E=E+Math.imul(ae,Be)|0,y=y+Math.imul(z,Ge)|0,l=l+Math.imul(z,Ie)|0,l=l+Math.imul(G,Ge)|0,E=E+Math.imul(G,Ie)|0,y=y+Math.imul(re,Ue)|0,l=l+Math.imul(re,Oe)|0,l=l+Math.imul(oe,Ue)|0,E=E+Math.imul(oe,Oe)|0,y=y+Math.imul(U,We)|0,l=l+Math.imul(U,Pe)|0,l=l+Math.imul(j,We)|0,E=E+Math.imul(j,Pe)|0,y=y+Math.imul(Z,Le)|0,l=l+Math.imul(Z,Ye)|0,l=l+Math.imul(ee,Le)|0,E=E+Math.imul(ee,Ye)|0;var mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(mr>>>26)|0,mr&=67108863,y=Math.imul(qe,Ze),l=Math.imul(qe,Re),l=l+Math.imul(Te,Ze)|0,E=Math.imul(Te,Re),y=y+Math.imul(ze,je)|0,l=l+Math.imul(ze,ke)|0,l=l+Math.imul(_e,je)|0,E=E+Math.imul(_e,ke)|0,y=y+Math.imul(we,Ke)|0,l=l+Math.imul(we,Ne)|0,l=l+Math.imul(me,Ke)|0,E=E+Math.imul(me,Ne)|0,y=y+Math.imul(ge,De)|0,l=l+Math.imul(ge,Be)|0,l=l+Math.imul(pe,De)|0,E=E+Math.imul(pe,Be)|0,y=y+Math.imul(ne,Ge)|0,l=l+Math.imul(ne,Ie)|0,l=l+Math.imul(ae,Ge)|0,E=E+Math.imul(ae,Ie)|0,y=y+Math.imul(z,Ue)|0,l=l+Math.imul(z,Oe)|0,l=l+Math.imul(G,Ue)|0,E=E+Math.imul(G,Oe)|0,y=y+Math.imul(re,We)|0,l=l+Math.imul(re,Pe)|0,l=l+Math.imul(oe,We)|0,E=E+Math.imul(oe,Pe)|0,y=y+Math.imul(U,Le)|0,l=l+Math.imul(U,Ye)|0,l=l+Math.imul(j,Le)|0,E=E+Math.imul(j,Ye)|0;var jr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(jr>>>26)|0,jr&=67108863,y=Math.imul(qe,je),l=Math.imul(qe,ke),l=l+Math.imul(Te,je)|0,E=Math.imul(Te,ke),y=y+Math.imul(ze,Ke)|0,l=l+Math.imul(ze,Ne)|0,l=l+Math.imul(_e,Ke)|0,E=E+Math.imul(_e,Ne)|0,y=y+Math.imul(we,De)|0,l=l+Math.imul(we,Be)|0,l=l+Math.imul(me,De)|0,E=E+Math.imul(me,Be)|0,y=y+Math.imul(ge,Ge)|0,l=l+Math.imul(ge,Ie)|0,l=l+Math.imul(pe,Ge)|0,E=E+Math.imul(pe,Ie)|0,y=y+Math.imul(ne,Ue)|0,l=l+Math.imul(ne,Oe)|0,l=l+Math.imul(ae,Ue)|0,E=E+Math.imul(ae,Oe)|0,y=y+Math.imul(z,We)|0,l=l+Math.imul(z,Pe)|0,l=l+Math.imul(G,We)|0,E=E+Math.imul(G,Pe)|0,y=y+Math.imul(re,Le)|0,l=l+Math.imul(re,Ye)|0,l=l+Math.imul(oe,Le)|0,E=E+Math.imul(oe,Ye)|0;var Yr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Yr>>>26)|0,Yr&=67108863,y=Math.imul(qe,Ke),l=Math.imul(qe,Ne),l=l+Math.imul(Te,Ke)|0,E=Math.imul(Te,Ne),y=y+Math.imul(ze,De)|0,l=l+Math.imul(ze,Be)|0,l=l+Math.imul(_e,De)|0,E=E+Math.imul(_e,Be)|0,y=y+Math.imul(we,Ge)|0,l=l+Math.imul(we,Ie)|0,l=l+Math.imul(me,Ge)|0,E=E+Math.imul(me,Ie)|0,y=y+Math.imul(ge,Ue)|0,l=l+Math.imul(ge,Oe)|0,l=l+Math.imul(pe,Ue)|0,E=E+Math.imul(pe,Oe)|0,y=y+Math.imul(ne,We)|0,l=l+Math.imul(ne,Pe)|0,l=l+Math.imul(ae,We)|0,E=E+Math.imul(ae,Pe)|0,y=y+Math.imul(z,Le)|0,l=l+Math.imul(z,Ye)|0,l=l+Math.imul(G,Le)|0,E=E+Math.imul(G,Ye)|0;var or=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(or>>>26)|0,or&=67108863,y=Math.imul(qe,De),l=Math.imul(qe,Be),l=l+Math.imul(Te,De)|0,E=Math.imul(Te,Be),y=y+Math.imul(ze,Ge)|0,l=l+Math.imul(ze,Ie)|0,l=l+Math.imul(_e,Ge)|0,E=E+Math.imul(_e,Ie)|0,y=y+Math.imul(we,Ue)|0,l=l+Math.imul(we,Oe)|0,l=l+Math.imul(me,Ue)|0,E=E+Math.imul(me,Oe)|0,y=y+Math.imul(ge,We)|0,l=l+Math.imul(ge,Pe)|0,l=l+Math.imul(pe,We)|0,E=E+Math.imul(pe,Pe)|0,y=y+Math.imul(ne,Le)|0,l=l+Math.imul(ne,Ye)|0,l=l+Math.imul(ae,Le)|0,E=E+Math.imul(ae,Ye)|0;var Qr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Qr>>>26)|0,Qr&=67108863,y=Math.imul(qe,Ge),l=Math.imul(qe,Ie),l=l+Math.imul(Te,Ge)|0,E=Math.imul(Te,Ie),y=y+Math.imul(ze,Ue)|0,l=l+Math.imul(ze,Oe)|0,l=l+Math.imul(_e,Ue)|0,E=E+Math.imul(_e,Oe)|0,y=y+Math.imul(we,We)|0,l=l+Math.imul(we,Pe)|0,l=l+Math.imul(me,We)|0,E=E+Math.imul(me,Pe)|0,y=y+Math.imul(ge,Le)|0,l=l+Math.imul(ge,Ye)|0,l=l+Math.imul(pe,Le)|0,E=E+Math.imul(pe,Ye)|0;var Mr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,y=Math.imul(qe,Ue),l=Math.imul(qe,Oe),l=l+Math.imul(Te,Ue)|0,E=Math.imul(Te,Oe),y=y+Math.imul(ze,We)|0,l=l+Math.imul(ze,Pe)|0,l=l+Math.imul(_e,We)|0,E=E+Math.imul(_e,Pe)|0,y=y+Math.imul(we,Le)|0,l=l+Math.imul(we,Ye)|0,l=l+Math.imul(me,Le)|0,E=E+Math.imul(me,Ye)|0;var Xr=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,y=Math.imul(qe,We),l=Math.imul(qe,Pe),l=l+Math.imul(Te,We)|0,E=Math.imul(Te,Pe),y=y+Math.imul(ze,Le)|0,l=l+Math.imul(ze,Ye)|0,l=l+Math.imul(_e,Le)|0,E=E+Math.imul(_e,Ye)|0;var on=(S+y|0)+((l&8191)<<13)|0;S=(E+(l>>>13)|0)+(on>>>26)|0,on&=67108863,y=Math.imul(qe,Le),l=Math.imul(qe,Ye),l=l+Math.imul(Te,Le)|0,E=Math.imul(Te,Ye);var Cr=(S+y|0)+((l&8191)<<13)|0;return S=(E+(l>>>13)|0)+(Cr>>>26)|0,Cr&=67108863,_[0]=Ar,_[1]=xr,_[2]=Er,_[3]=Gt,_[4]=Vt,_[5]=Lr,_[6]=Zr,_[7]=Ir,_[8]=Dr,_[9]=ar,_[10]=mr,_[11]=jr,_[12]=Yr,_[13]=or,_[14]=Qr,_[15]=Mr,_[16]=Xr,_[17]=on,_[18]=Cr,S!==0&&(_[19]=S,m.length++),m};Math.imul||(C=N);function B(g,a,c){c.negative=a.negative^g.negative,c.length=g.length+a.length;for(var m=0,b=0,x=0;x>>26)|0,b+=_>>>26,_&=67108863}c.words[x]=S,m=_,_=b}return m!==0?c.words[x]=m:c.length--,c._strip()}function O(g,a,c){return B(g,a,c)}i.prototype.mulTo=function(a,c){var m,b=this.length+a.length;return this.length===10&&a.length===10?m=C(this,a,c):b<63?m=N(this,a,c):b<1024?m=B(this,a,c):m=O(this,a,c),m},i.prototype.mul=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),this.mulTo(a,c)},i.prototype.mulf=function(a){var c=new i(null);return c.words=new Array(this.length+a.length),O(this,a,c)},i.prototype.imul=function(a){return this.clone().mulTo(a,this)},i.prototype.imuln=function(a){var c=a<0;c&&(a=-a),n(typeof a=="number"),n(a<67108864);for(var m=0,b=0;b>=26,m+=x/67108864|0,m+=_>>>26,this.words[b]=_&67108863}return m!==0&&(this.words[b]=m,this.length++),c?this.ineg():this},i.prototype.muln=function(a){return this.clone().imuln(a)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(a){var c=R(a);if(c.length===0)return new i(1);for(var m=this,b=0;b=0);var c=a%26,m=(a-c)/26,b=67108863>>>26-c<<26-c,x;if(c!==0){var _=0;for(x=0;x>>26-c}_&&(this.words[x]=_,this.length++)}if(m!==0){for(x=this.length-1;x>=0;x--)this.words[x+m]=this.words[x];for(x=0;x=0);var b;c?b=(c-c%26)/26:b=0;var x=a%26,_=Math.min((a-x)/26,this.length),S=67108863^67108863>>>x<_)for(this.length-=_,l=0;l=0&&(E!==0||l>=b);l--){var Y=this.words[l]|0;this.words[l]=E<<26-x|Y>>>x,E=Y&S}return y&&E!==0&&(y.words[y.length++]=E),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},i.prototype.ishrn=function(a,c,m){return n(this.negative===0),this.iushrn(a,c,m)},i.prototype.shln=function(a){return this.clone().ishln(a)},i.prototype.ushln=function(a){return this.clone().iushln(a)},i.prototype.shrn=function(a){return this.clone().ishrn(a)},i.prototype.ushrn=function(a){return this.clone().iushrn(a)},i.prototype.testn=function(a){n(typeof a=="number"&&a>=0);var c=a%26,m=(a-c)/26,b=1<=0);var c=a%26,m=(a-c)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=m)return this;if(c!==0&&m++,this.length=Math.min(m,this.length),c!==0){var b=67108863^67108863>>>c<=67108864;c++)this.words[c]-=67108864,c===this.length-1?this.words[c+1]=1:this.words[c+1]++;return this.length=Math.max(this.length,c+1),this},i.prototype.isubn=function(a){if(n(typeof a=="number"),n(a<67108864),a<0)return this.iaddn(-a);if(this.negative!==0)return this.negative=0,this.iaddn(a),this.negative=1,this;if(this.words[0]-=a,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var c=0;c>26)-(y/67108864|0),this.words[x+m]=_&67108863}for(;x>26,this.words[x+m]=_&67108863;if(S===0)return this._strip();for(n(S===-1),S=0,x=0;x>26,this.words[x]=_&67108863;return this.negative=1,this._strip()},i.prototype._wordDiv=function(a,c){var m=this.length-a.length,b=this.clone(),x=a,_=x.words[x.length-1]|0,S=this._countBits(_);m=26-S,m!==0&&(x=x.ushln(m),b.iushln(m),_=x.words[x.length-1]|0);var y=b.length-x.length,l;if(c!=="mod"){l=new i(null),l.length=y+1,l.words=new Array(l.length);for(var E=0;E=0;L--){var F=(b.words[x.length+L]|0)*67108864+(b.words[x.length+L-1]|0);for(F=Math.min(F/_|0,67108863),b._ishlnsubmul(x,F,L);b.negative!==0;)F--,b.negative=0,b._ishlnsubmul(x,1,L),b.isZero()||(b.negative^=1);l&&(l.words[L]=F)}return l&&l._strip(),b._strip(),c!=="div"&&m!==0&&b.iushrn(m),{div:l||null,mod:b}},i.prototype.divmod=function(a,c,m){if(n(!a.isZero()),this.isZero())return{div:new i(0),mod:new i(0)};var b,x,_;return this.negative!==0&&a.negative===0?(_=this.neg().divmod(a,c),c!=="mod"&&(b=_.div.neg()),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.iadd(a)),{div:b,mod:x}):this.negative===0&&a.negative!==0?(_=this.divmod(a.neg(),c),c!=="mod"&&(b=_.div.neg()),{div:b,mod:_.mod}):this.negative&a.negative?(_=this.neg().divmod(a.neg(),c),c!=="div"&&(x=_.mod.neg(),m&&x.negative!==0&&x.isub(a)),{div:_.div,mod:x}):a.length>this.length||this.cmp(a)<0?{div:new i(0),mod:this}:a.length===1?c==="div"?{div:this.divn(a.words[0]),mod:null}:c==="mod"?{div:null,mod:new i(this.modrn(a.words[0]))}:{div:this.divn(a.words[0]),mod:new i(this.modrn(a.words[0]))}:this._wordDiv(a,c)},i.prototype.div=function(a){return this.divmod(a,"div",!1).div},i.prototype.mod=function(a){return this.divmod(a,"mod",!1).mod},i.prototype.umod=function(a){return this.divmod(a,"mod",!0).mod},i.prototype.divRound=function(a){var c=this.divmod(a);if(c.mod.isZero())return c.div;var m=c.div.negative!==0?c.mod.isub(a):c.mod,b=a.ushrn(1),x=a.andln(1),_=m.cmp(b);return _<0||x===1&&_===0?c.div:c.div.negative!==0?c.div.isubn(1):c.div.iaddn(1)},i.prototype.modrn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=(1<<26)%a,b=0,x=this.length-1;x>=0;x--)b=(m*b+(this.words[x]|0))%a;return c?-b:b},i.prototype.modn=function(a){return this.modrn(a)},i.prototype.idivn=function(a){var c=a<0;c&&(a=-a),n(a<=67108863);for(var m=0,b=this.length-1;b>=0;b--){var x=(this.words[b]|0)+m*67108864;this.words[b]=x/a|0,m=x%a}return this._strip(),c?this.ineg():this},i.prototype.divn=function(a){return this.clone().idivn(a)},i.prototype.egcd=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=new i(0),S=new i(1),y=0;c.isEven()&&m.isEven();)c.iushrn(1),m.iushrn(1),++y;for(var l=m.clone(),E=c.clone();!c.isZero();){for(var Y=0,L=1;!(c.words[0]&L)&&Y<26;++Y,L<<=1);if(Y>0)for(c.iushrn(Y);Y-- >0;)(b.isOdd()||x.isOdd())&&(b.iadd(l),x.isub(E)),b.iushrn(1),x.iushrn(1);for(var F=0,V=1;!(m.words[0]&V)&&F<26;++F,V<<=1);if(F>0)for(m.iushrn(F);F-- >0;)(_.isOdd()||S.isOdd())&&(_.iadd(l),S.isub(E)),_.iushrn(1),S.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(_),x.isub(S)):(m.isub(c),_.isub(b),S.isub(x))}return{a:_,b:S,gcd:m.iushln(y)}},i.prototype._invmp=function(a){n(a.negative===0),n(!a.isZero());var c=this,m=a.clone();c.negative!==0?c=c.umod(a):c=c.clone();for(var b=new i(1),x=new i(0),_=m.clone();c.cmpn(1)>0&&m.cmpn(1)>0;){for(var S=0,y=1;!(c.words[0]&y)&&S<26;++S,y<<=1);if(S>0)for(c.iushrn(S);S-- >0;)b.isOdd()&&b.iadd(_),b.iushrn(1);for(var l=0,E=1;!(m.words[0]&E)&&l<26;++l,E<<=1);if(l>0)for(m.iushrn(l);l-- >0;)x.isOdd()&&x.iadd(_),x.iushrn(1);c.cmp(m)>=0?(c.isub(m),b.isub(x)):(m.isub(c),x.isub(b))}var Y;return c.cmpn(1)===0?Y=b:Y=x,Y.cmpn(0)<0&&Y.iadd(a),Y},i.prototype.gcd=function(a){if(this.isZero())return a.abs();if(a.isZero())return this.abs();var c=this.clone(),m=a.clone();c.negative=0,m.negative=0;for(var b=0;c.isEven()&&m.isEven();b++)c.iushrn(1),m.iushrn(1);do{for(;c.isEven();)c.iushrn(1);for(;m.isEven();)m.iushrn(1);var x=c.cmp(m);if(x<0){var _=c;c=m,m=_}else if(x===0||m.cmpn(1)===0)break;c.isub(m)}while(!0);return m.iushln(b)},i.prototype.invm=function(a){return this.egcd(a).a.umod(a)},i.prototype.isEven=function(){return(this.words[0]&1)===0},i.prototype.isOdd=function(){return(this.words[0]&1)===1},i.prototype.andln=function(a){return this.words[0]&a},i.prototype.bincn=function(a){n(typeof a=="number");var c=a%26,m=(a-c)/26,b=1<>>26,S&=67108863,this.words[_]=S}return x!==0&&(this.words[_]=x,this.length++),this},i.prototype.isZero=function(){return this.length===1&&this.words[0]===0},i.prototype.cmpn=function(a){var c=a<0;if(this.negative!==0&&!c)return-1;if(this.negative===0&&c)return 1;this._strip();var m;if(this.length>1)m=1;else{c&&(a=-a),n(a<=67108863,"Number is too big");var b=this.words[0]|0;m=b===a?0:ba.length)return 1;if(this.length=0;m--){var b=this.words[m]|0,x=a.words[m]|0;if(b!==x){bx&&(c=1);break}}return c},i.prototype.gtn=function(a){return this.cmpn(a)===1},i.prototype.gt=function(a){return this.cmp(a)===1},i.prototype.gten=function(a){return this.cmpn(a)>=0},i.prototype.gte=function(a){return this.cmp(a)>=0},i.prototype.ltn=function(a){return this.cmpn(a)===-1},i.prototype.lt=function(a){return this.cmp(a)===-1},i.prototype.lten=function(a){return this.cmpn(a)<=0},i.prototype.lte=function(a){return this.cmp(a)<=0},i.prototype.eqn=function(a){return this.cmpn(a)===0},i.prototype.eq=function(a){return this.cmp(a)===0},i.red=function(a){return new P(a)},i.prototype.toRed=function(a){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),a.convertTo(this)._forceRed(a)},i.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},i.prototype._forceRed=function(a){return this.red=a,this},i.prototype.forceRed=function(a){return n(!this.red,"Already a number in reduction context"),this._forceRed(a)},i.prototype.redAdd=function(a){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,a)},i.prototype.redIAdd=function(a){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,a)},i.prototype.redSub=function(a){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,a)},i.prototype.redISub=function(a){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,a)},i.prototype.redShl=function(a){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,a)},i.prototype.redMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.mul(this,a)},i.prototype.redIMul=function(a){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,a),this.red.imul(this,a)},i.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(a){return n(this.red&&!a.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,a)};var D={k256:null,p224:null,p192:null,p25519:null};function q(g,a){this.name=g,this.p=new i(a,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}q.prototype._tmp=function(){var a=new i(null);return a.words=new Array(Math.ceil(this.n/13)),a},q.prototype.ireduce=function(a){var c=a,m;do this.split(c,this.tmp),c=this.imulK(c),c=c.iadd(this.tmp),m=c.bitLength();while(m>this.n);var b=m0?c.isub(this.p):c.strip!==void 0?c.strip():c._strip(),c},q.prototype.split=function(a,c){a.iushrn(this.n,0,c)},q.prototype.imulK=function(a){return a.imul(this.k)};function W(){q.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}s(W,q),W.prototype.split=function(a,c){for(var m=4194303,b=Math.min(a.length,9),x=0;x>>22,_=S}_>>>=22,a.words[x-10]=_,_===0&&a.length>10?a.length-=10:a.length-=9},W.prototype.imulK=function(a){a.words[a.length]=0,a.words[a.length+1]=0,a.length+=2;for(var c=0,m=0;m>>=26,a.words[m]=x,c=b}return c!==0&&(a.words[a.length++]=c),a},i._prime=function(a){if(D[a])return D[a];var c;if(a==="k256")c=new W;else if(a==="p224")c=new k;else if(a==="p192")c=new I;else if(a==="p25519")c=new H;else throw new Error("Unknown prime "+a);return D[a]=c,c};function P(g){if(typeof g=="string"){var a=i._prime(g);this.m=a.p,this.prime=a}else n(g.gtn(1),"modulus must be greater than 1"),this.m=g,this.prime=null}P.prototype._verify1=function(a){n(a.negative===0,"red works only with positives"),n(a.red,"red works only with red numbers")},P.prototype._verify2=function(a,c){n((a.negative|c.negative)===0,"red works only with positives"),n(a.red&&a.red===c.red,"red works only with red numbers")},P.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):(p(a,a.umod(this.m)._forceRed(this)),a)},P.prototype.neg=function(a){return a.isZero()?a.clone():this.m.sub(a)._forceRed(this)},P.prototype.add=function(a,c){this._verify2(a,c);var m=a.add(c);return m.cmp(this.m)>=0&&m.isub(this.m),m._forceRed(this)},P.prototype.iadd=function(a,c){this._verify2(a,c);var m=a.iadd(c);return m.cmp(this.m)>=0&&m.isub(this.m),m},P.prototype.sub=function(a,c){this._verify2(a,c);var m=a.sub(c);return m.cmpn(0)<0&&m.iadd(this.m),m._forceRed(this)},P.prototype.isub=function(a,c){this._verify2(a,c);var m=a.isub(c);return m.cmpn(0)<0&&m.iadd(this.m),m},P.prototype.shl=function(a,c){return this._verify1(a),this.imod(a.ushln(c))},P.prototype.imul=function(a,c){return this._verify2(a,c),this.imod(a.imul(c))},P.prototype.mul=function(a,c){return this._verify2(a,c),this.imod(a.mul(c))},P.prototype.isqr=function(a){return this.imul(a,a.clone())},P.prototype.sqr=function(a){return this.mul(a,a)},P.prototype.sqrt=function(a){if(a.isZero())return a.clone();var c=this.m.andln(3);if(n(c%2===1),c===3){var m=this.m.add(new i(1)).iushrn(2);return this.pow(a,m)}for(var b=this.m.subn(1),x=0;!b.isZero()&&b.andln(1)===0;)x++,b.iushrn(1);n(!b.isZero());var _=new i(1).toRed(this),S=_.redNeg(),y=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new i(2*l*l).toRed(this);this.pow(l,y).cmp(S)!==0;)l.redIAdd(S);for(var E=this.pow(l,b),Y=this.pow(a,b.addn(1).iushrn(1)),L=this.pow(a,b),F=x;L.cmp(_)!==0;){for(var V=L,Z=0;V.cmp(_)!==0;Z++)V=V.redSqr();n(Z=0;x--){for(var E=c.words[x],Y=l-1;Y>=0;Y--){var L=E>>Y&1;if(_!==b[0]&&(_=this.sqr(_)),L===0&&S===0){y=0;continue}S<<=1,S|=L,y++,!(y!==m&&(x!==0||Y!==0))&&(_=this.mul(_,b[S]),y=0,S=0)}l=26}return _},P.prototype.convertTo=function(a){var c=a.umod(this.m);return c===a?c.clone():c},P.prototype.convertFrom=function(a){var c=a.clone();return c.red=null,c},i.mont=function(a){return new T(a)};function T(g){P.call(this,g),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new i(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}s(T,P),T.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))},T.prototype.convertFrom=function(a){var c=this.imod(a.mul(this.rinv));return c.red=null,c},T.prototype.imul=function(a,c){if(a.isZero()||c.isZero())return a.words[0]=0,a.length=1,a;var m=a.imul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.mul=function(a,c){if(a.isZero()||c.isZero())return new i(0)._forceRed(this);var m=a.mul(c),b=m.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),x=m.isub(b).iushrn(this.shift),_=x;return x.cmp(this.m)>=0?_=x.isub(this.m):x.cmpn(0)<0&&(_=x.iadd(this.m)),_._forceRed(this)},T.prototype.invm=function(a){var c=this.imod(a._invmp(this.m).mul(this.r2));return c._forceRed(this)}})(t,ue)})(xG);var Ya={},U3={},H_={},H3={},Jm=mt,hh=Jm.Buffer,Js={},$s;for($s in Jm)Jm.hasOwnProperty($s)&&($s==="SlowBuffer"||$s==="Buffer"||(Js[$s]=Jm[$s]));var dh=Js.Buffer={};for($s in hh)hh.hasOwnProperty($s)&&($s==="allocUnsafe"||$s==="allocUnsafeSlow"||(dh[$s]=hh[$s]));Js.Buffer.prototype=hh.prototype;(!dh.from||dh.from===Uint8Array.from)&&(dh.from=function(t,e,r){if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&typeof t.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return hh(t,e,r)});dh.alloc||(dh.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var n=hh(t);return!e||e.length===0?n.fill(0):typeof r=="string"?n.fill(e,r):n.fill(e),n});if(!Js.kStringMaxLength)try{Js.kStringMaxLength=ft.binding("buffer").kStringMaxLength}catch{}Js.constants||(Js.constants={MAX_LENGTH:Js.kMaxLength},Js.kStringMaxLength&&(Js.constants.MAX_STRING_LENGTH=Js.kStringMaxLength));var j3=Js,Ay={};const EG=Ht;function ma(t){this._reporterState={obj:null,path:[],options:t||{},errors:[]}}Ay.Reporter=ma;ma.prototype.isError=function(e){return e instanceof Ad};ma.prototype.save=function(){const e=this._reporterState;return{obj:e.obj,pathLen:e.path.length}};ma.prototype.restore=function(e){const r=this._reporterState;r.obj=e.obj,r.path=r.path.slice(0,e.pathLen)};ma.prototype.enterKey=function(e){return this._reporterState.path.push(e)};ma.prototype.exitKey=function(e){const r=this._reporterState;r.path=r.path.slice(0,e-1)};ma.prototype.leaveKey=function(e,r,n){const s=this._reporterState;this.exitKey(e),s.obj!==null&&(s.obj[r]=n)};ma.prototype.path=function(){return this._reporterState.path.join("/")};ma.prototype.enterObject=function(){const e=this._reporterState,r=e.obj;return e.obj={},r};ma.prototype.leaveObject=function(e){const r=this._reporterState,n=r.obj;return r.obj=e,n};ma.prototype.error=function(e){let r;const n=this._reporterState,s=e instanceof Ad;if(s?r=e:r=new Ad(n.path.map(function(i){return"["+JSON.stringify(i)+"]"}).join(""),e.message||e,e.stack),!n.options.partial)throw r;return s||n.errors.push(r),r};ma.prototype.wrapResult=function(e){const r=this._reporterState;return r.options.partial?{result:this.isError(e)?null:e,errors:r.errors}:e};function Ad(t,e){this.path=t,this.rethrow(e)}EG(Ad,Error);Ad.prototype.rethrow=function(e){if(this.message=e+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,Ad),!this.stack)try{throw new Error(this.message)}catch(r){this.stack=r.stack}return this};var qc={};const MG=Ht,xy=Ay.Reporter,xd=j3.Buffer;function sa(t,e){if(xy.call(this,e),!xd.isBuffer(t)){this.error("Input not Buffer");return}this.base=t,this.offset=0,this.length=t.length}MG(sa,xy);qc.DecoderBuffer=sa;sa.isDecoderBuffer=function(e){return e instanceof sa?!0:typeof e=="object"&&xd.isBuffer(e.base)&&e.constructor.name==="DecoderBuffer"&&typeof e.offset=="number"&&typeof e.length=="number"&&typeof e.save=="function"&&typeof e.restore=="function"&&typeof e.isEmpty=="function"&&typeof e.readUInt8=="function"&&typeof e.skip=="function"&&typeof e.raw=="function"};sa.prototype.save=function(){return{offset:this.offset,reporter:xy.prototype.save.call(this)}};sa.prototype.restore=function(e){const r=new sa(this.base);return r.offset=e.offset,r.length=this.offset,this.offset=e.offset,xy.prototype.restore.call(this,e.reporter),r};sa.prototype.isEmpty=function(){return this.offset===this.length};sa.prototype.readUInt8=function(e){return this.offset+1<=this.length?this.base.readUInt8(this.offset++,!0):this.error(e||"DecoderBuffer overrun")};sa.prototype.skip=function(e,r){if(!(this.offset+e<=this.length))return this.error(r||"DecoderBuffer overrun");const n=new sa(this.base);return n._reporterState=this._reporterState,n.offset=this.offset,n.length=this.offset+e,this.offset+=e,n};sa.prototype.raw=function(e){return this.base.slice(e?e.offset:this.offset,this.length)};function Ed(t,e){if(Array.isArray(t))this.length=0,this.value=t.map(function(r){return Ed.isEncoderBuffer(r)||(r=new Ed(r,e)),this.length+=r.length,r},this);else if(typeof t=="number"){if(!(0<=t&&t<=255))return e.error("non-byte EncoderBuffer value");this.value=t,this.length=1}else if(typeof t=="string")this.value=t,this.length=xd.byteLength(t);else if(xd.isBuffer(t))this.value=t,this.length=t.length;else return e.error("Unsupported type: "+typeof t)}qc.EncoderBuffer=Ed;Ed.isEncoderBuffer=function(e){return e instanceof Ed?!0:typeof e=="object"&&e.constructor.name==="EncoderBuffer"&&typeof e.length=="number"&&typeof e.join=="function"};Ed.prototype.join=function(e,r){return e||(e=xd.alloc(this.length)),r||(r=0),this.length===0||(Array.isArray(this.value)?this.value.forEach(function(n){n.join(e,r),r+=n.length}):(typeof this.value=="number"?e[r]=this.value:typeof this.value=="string"?e.write(this.value,r):xd.isBuffer(this.value)&&this.value.copy(e,r),r+=this.length)),e};const SG=Ay.Reporter,_G=qc.EncoderBuffer,RG=qc.DecoderBuffer,Qi=fa,j_=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],NG=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(j_),CG=["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"];function tn(t,e,r){const n={};this._baseState=n,n.name=r,n.enc=t,n.parent=e||null,n.children=null,n.tag=null,n.args=null,n.reverseArgs=null,n.choice=null,n.optional=!1,n.any=!1,n.obj=!1,n.use=null,n.useDecoder=null,n.key=null,n.default=null,n.explicit=null,n.implicit=null,n.contains=null,n.parent||(n.children=[],this._wrap())}var z3=tn;const TG=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];tn.prototype.clone=function(){const e=this._baseState,r={};TG.forEach(function(s){r[s]=e[s]});const n=new this.constructor(r.parent);return n._baseState=r,n};tn.prototype._wrap=function(){const e=this._baseState;NG.forEach(function(r){this[r]=function(){const s=new this.constructor(this);return e.children.push(s),s[r].apply(s,arguments)}},this)};tn.prototype._init=function(e){const r=this._baseState;Qi(r.parent===null),e.call(this),r.children=r.children.filter(function(n){return n._baseState.parent===this},this),Qi.equal(r.children.length,1,"Root node can have only one child")};tn.prototype._useArgs=function(e){const r=this._baseState,n=e.filter(function(s){return s instanceof this.constructor},this);e=e.filter(function(s){return!(s instanceof this.constructor)},this),n.length!==0&&(Qi(r.children===null),r.children=n,n.forEach(function(s){s._baseState.parent=this},this)),e.length!==0&&(Qi(r.args===null),r.args=e,r.reverseArgs=e.map(function(s){if(typeof s!="object"||s.constructor!==Object)return s;const i={};return Object.keys(s).forEach(function(o){o==(o|0)&&(o|=0);const f=s[o];i[f]=o}),i}))};CG.forEach(function(t){tn.prototype[t]=function(){const r=this._baseState;throw new Error(t+" not implemented for encoding: "+r.enc)}});j_.forEach(function(t){tn.prototype[t]=function(){const r=this._baseState,n=Array.prototype.slice.call(arguments);return Qi(r.tag===null),r.tag=t,this._useArgs(n),this}});tn.prototype.use=function(e){Qi(e);const r=this._baseState;return Qi(r.use===null),r.use=e,this};tn.prototype.optional=function(){const e=this._baseState;return e.optional=!0,this};tn.prototype.def=function(e){const r=this._baseState;return Qi(r.default===null),r.default=e,r.optional=!0,this};tn.prototype.explicit=function(e){const r=this._baseState;return Qi(r.explicit===null&&r.implicit===null),r.explicit=e,this};tn.prototype.implicit=function(e){const r=this._baseState;return Qi(r.explicit===null&&r.implicit===null),r.implicit=e,this};tn.prototype.obj=function(){const e=this._baseState,r=Array.prototype.slice.call(arguments);return e.obj=!0,r.length!==0&&this._useArgs(r),this};tn.prototype.key=function(e){const r=this._baseState;return Qi(r.key===null),r.key=e,this};tn.prototype.any=function(){const e=this._baseState;return e.any=!0,this};tn.prototype.choice=function(e){const r=this._baseState;return Qi(r.choice===null),r.choice=e,this._useArgs(Object.keys(e).map(function(n){return e[n]})),this};tn.prototype.contains=function(e){const r=this._baseState;return Qi(r.use===null),r.contains=e,this};tn.prototype._decode=function(e,r){const n=this._baseState;if(n.parent===null)return e.wrapResult(n.children[0]._decode(e,r));let s=n.default,i=!0,o=null;if(n.key!==null&&(o=e.enterKey(n.key)),n.optional){let u=null;if(n.explicit!==null?u=n.explicit:n.implicit!==null?u=n.implicit:n.tag!==null&&(u=n.tag),u===null&&!n.any){const h=e.save();try{n.choice===null?this._decodeGeneric(n.tag,e,r):this._decodeChoice(e,r),i=!0}catch{i=!1}e.restore(h)}else if(i=this._peekTag(e,u,n.any),e.isError(i))return i}let f;if(n.obj&&i&&(f=e.enterObject()),i){if(n.explicit!==null){const h=this._decodeTag(e,n.explicit);if(e.isError(h))return h;e=h}const u=e.offset;if(n.use===null&&n.choice===null){let h;n.any&&(h=e.save());const p=this._decodeTag(e,n.implicit!==null?n.implicit:n.tag,n.any);if(e.isError(p))return p;n.any?s=e.raw(h):e=p}if(r&&r.track&&n.tag!==null&&r.track(e.path(),u,e.length,"tagged"),r&&r.track&&n.tag!==null&&r.track(e.path(),e.offset,e.length,"content"),n.any||(n.choice===null?s=this._decodeGeneric(n.tag,e,r):s=this._decodeChoice(e,r)),e.isError(s))return s;if(!n.any&&n.choice===null&&n.children!==null&&n.children.forEach(function(p){p._decode(e,r)}),n.contains&&(n.tag==="octstr"||n.tag==="bitstr")){const h=new RG(s);s=this._getUse(n.contains,e._reporterState.obj)._decode(h,r)}}return n.obj&&i&&(s=e.leaveObject(f)),n.key!==null&&(s!==null||i===!0)?e.leaveKey(o,n.key,s):o!==null&&e.exitKey(o),s};tn.prototype._decodeGeneric=function(e,r,n){const s=this._baseState;return e==="seq"||e==="set"?null:e==="seqof"||e==="setof"?this._decodeList(r,e,s.args[0],n):/str$/.test(e)?this._decodeStr(r,e,n):e==="objid"&&s.args?this._decodeObjid(r,s.args[0],s.args[1],n):e==="objid"?this._decodeObjid(r,null,null,n):e==="gentime"||e==="utctime"?this._decodeTime(r,e,n):e==="null_"?this._decodeNull(r,n):e==="bool"?this._decodeBool(r,n):e==="objDesc"?this._decodeStr(r,e,n):e==="int"||e==="enum"?this._decodeInt(r,s.args&&s.args[0],n):s.use!==null?this._getUse(s.use,r._reporterState.obj)._decode(r,n):r.error("unknown tag: "+e)};tn.prototype._getUse=function(e,r){const n=this._baseState;return n.useDecoder=this._use(e,r),Qi(n.useDecoder._baseState.parent===null),n.useDecoder=n.useDecoder._baseState.children[0],n.implicit!==n.useDecoder._baseState.implicit&&(n.useDecoder=n.useDecoder.clone(),n.useDecoder._baseState.implicit=n.implicit),n.useDecoder};tn.prototype._decodeChoice=function(e,r){const n=this._baseState;let s=null,i=!1;return Object.keys(n.choice).some(function(o){const f=e.save(),u=n.choice[o];try{const h=u._decode(e,r);if(e.isError(h))return!1;s={type:o,value:h},i=!0}catch{return e.restore(f),!1}return!0},this),i?s:e.error("Choice not matched")};tn.prototype._createEncoderBuffer=function(e){return new _G(e,this.reporter)};tn.prototype._encode=function(e,r,n){const s=this._baseState;if(s.default!==null&&s.default===e)return;const i=this._encodeValue(e,r,n);if(i!==void 0&&!this._skipDefault(i,r,n))return i};tn.prototype._encodeValue=function(e,r,n){const s=this._baseState;if(s.parent===null)return s.children[0]._encode(e,r||new SG);let i=null;if(this.reporter=r,s.optional&&e===void 0)if(s.default!==null)e=s.default;else return;let o=null,f=!1;if(s.any)i=this._createEncoderBuffer(e);else if(s.choice)i=this._encodeChoice(e,r);else if(s.contains)o=this._getUse(s.contains,n)._encode(e,r),f=!0;else if(s.children)o=s.children.map(function(u){if(u._baseState.tag==="null_")return u._encode(null,r,e);if(u._baseState.key===null)return r.error("Child should have a key");const h=r.enterKey(u._baseState.key);if(typeof e!="object")return r.error("Child expected, but input is not object");const p=u._encode(e[u._baseState.key],r,e);return r.leaveKey(h),p},this).filter(function(u){return u}),o=this._createEncoderBuffer(o);else if(s.tag==="seqof"||s.tag==="setof"){if(!(s.args&&s.args.length===1))return r.error("Too many args for : "+s.tag);if(!Array.isArray(e))return r.error("seqof/setof, but data is not Array");const u=this.clone();u._baseState.implicit=null,o=this._createEncoderBuffer(e.map(function(h){const p=this._baseState;return this._getUse(p.args[0],e)._encode(h,r)},u))}else s.use!==null?i=this._getUse(s.use,n)._encode(e,r):(o=this._encodePrimitive(s.tag,e),f=!0);if(!s.any&&s.choice===null){const u=s.implicit!==null?s.implicit:s.tag,h=s.implicit===null?"universal":"context";u===null?s.use===null&&r.error("Tag could be omitted only for .use()"):s.use===null&&(i=this._encodeComposite(u,f,h,o))}return s.explicit!==null&&(i=this._encodeComposite(s.explicit,!1,"context",i)),i};tn.prototype._encodeChoice=function(e,r){const n=this._baseState,s=n.choice[e.type];return s||Qi(!1,e.type+" not found in "+JSON.stringify(Object.keys(n.choice))),s._encode(e.value,r)};tn.prototype._encodePrimitive=function(e,r){const n=this._baseState;if(/str$/.test(e))return this._encodeStr(r,e);if(e==="objid"&&n.args)return this._encodeObjid(r,n.reverseArgs[0],n.args[1]);if(e==="objid")return this._encodeObjid(r,null,null);if(e==="gentime"||e==="utctime")return this._encodeTime(r,e);if(e==="null_")return this._encodeNull();if(e==="int"||e==="enum")return this._encodeInt(r,n.args&&n.reverseArgs[0]);if(e==="bool")return this._encodeBool(r);if(e==="objDesc")return this._encodeStr(r,e);throw new Error("Unsupported tag: "+e)};tn.prototype._isNumstr=function(e){return/^[0-9 ]*$/.test(e)};tn.prototype._isPrintstr=function(e){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(e)};var Ey={};(function(t){function e(r){const n={};return Object.keys(r).forEach(function(s){(s|0)==s&&(s=s|0);const i=r[s];n[i]=s}),n}t.tagClass={0:"universal",1:"application",2:"context",3:"private"},t.tagClassByName=e(t.tagClass),t.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},t.tagByName=e(t.tag)})(Ey);const kG=Ht,pf=j3.Buffer,z_=z3,N2=Ey;function K_(t){this.enc="der",this.name=t.name,this.entity=t,this.tree=new Qa,this.tree._init(t.body)}var q_=K_;K_.prototype.encode=function(e,r){return this.tree._encode(e,r).join()};function Qa(t){z_.call(this,"der",t)}kG(Qa,z_);Qa.prototype._encodeComposite=function(e,r,n,s){const i=BG(e,r,n,this.reporter);if(s.length<128){const u=pf.alloc(2);return u[0]=i,u[1]=s.length,this._createEncoderBuffer([u,s])}let o=1;for(let u=s.length;u>=256;u>>=8)o++;const f=pf.alloc(1+1+o);f[0]=i,f[1]=128|o;for(let u=1+o,h=s.length;h>0;u--,h>>=8)f[u]=h&255;return this._createEncoderBuffer([f,s])};Qa.prototype._encodeStr=function(e,r){if(r==="bitstr")return this._createEncoderBuffer([e.unused|0,e.data]);if(r==="bmpstr"){const n=pf.alloc(e.length*2);for(let s=0;s=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,e[0]*40+e[1])}let s=0;for(let f=0;f=128;u>>=7)s++}const i=pf.alloc(s);let o=i.length-1;for(let f=e.length-1;f>=0;f--){let u=e[f];for(i[o--]=u&127;(u>>=7)>0;)i[o--]=128|u&127}return this._createEncoderBuffer(i)};function Fs(t){return t<10?"0"+t:t}Qa.prototype._encodeTime=function(e,r){let n;const s=new Date(e);return r==="gentime"?n=[Fs(s.getUTCFullYear()),Fs(s.getUTCMonth()+1),Fs(s.getUTCDate()),Fs(s.getUTCHours()),Fs(s.getUTCMinutes()),Fs(s.getUTCSeconds()),"Z"].join(""):r==="utctime"?n=[Fs(s.getUTCFullYear()%100),Fs(s.getUTCMonth()+1),Fs(s.getUTCDate()),Fs(s.getUTCHours()),Fs(s.getUTCMinutes()),Fs(s.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+r+" time is not supported yet"),this._encodeStr(n,"octstr")};Qa.prototype._encodeNull=function(){return this._createEncoderBuffer("")};Qa.prototype._encodeInt=function(e,r){if(typeof e=="string"){if(!r)return this.reporter.error("String int or enum given, but no values map");if(!r.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=r[e]}if(typeof e!="number"&&!pf.isBuffer(e)){const i=e.toArray();!e.sign&&i[0]&128&&i.unshift(0),e=pf.from(i)}if(pf.isBuffer(e)){let i=e.length;e.length===0&&i++;const o=pf.alloc(i);return e.copy(o),e.length===0&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);let n=1;for(let i=e;i>=256;i>>=8)n++;const s=new Array(n);for(let i=s.length-1;i>=0;i--)s[i]=e&255,e>>=8;return s[0]&128&&s.unshift(0),this._createEncoderBuffer(pf.from(s))};Qa.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)};Qa.prototype._use=function(e,r){return typeof e=="function"&&(e=e(r)),e._getEncoder("der").tree};Qa.prototype._skipDefault=function(e,r,n){const s=this._baseState;let i;if(s.default===null)return!1;const o=e.join();if(s.defaultBuffer===void 0&&(s.defaultBuffer=this._encodeValue(s.default,r,n).join()),o.length!==s.defaultBuffer.length)return!1;for(i=0;i=31?n.error("Multi-octet tag encoding unsupported"):(e||(s|=32),s|=N2.tagClassByName[r||"universal"]<<6,s)}const IG=Ht,K3=q_;function q3(t){K3.call(this,t),this.enc="pem"}IG(q3,K3);var PG=q3;q3.prototype.encode=function(e,r){const s=K3.prototype.encode.call(this,e).toString("base64"),i=["-----BEGIN "+r.label+"-----"];for(let o=0;o>6],s=(r&32)===0;if((r&31)===31){let o=r;for(r=0;(o&128)===128;){if(o=t.readUInt8(e),t.isError(o))return o;r<<=7,r|=o&127}}else r&=31;const i=Kx.tag[r];return{cls:n,primitive:s,tag:r,tagStr:i}}function Z_(t,e,r){let n=t.readUInt8(r);if(t.isError(n))return n;if(!e&&n===128)return null;if(!(n&128))return n;const s=n&127;if(s>4)return t.error("length octect is too long");n=0;for(let i=0;i0&&C.ishrn(B),C}function w(R,N){R=v(R,N),R=R.mod(N);var C=t.from(R.toArray());if(C.length=p)throw new Error("invalid sig")}return C2=i,C2}var T2,Zx;function vV(){if(Zx)return T2;Zx=1;var t=Wt.Buffer,e=b1,r=pp,n=Ht,s=mV(),i=gV(),o=KS;Object.keys(o).forEach(function(d){o[d].id=t.from(o[d].id,"hex"),o[d.toLowerCase()]=o[d]});function f(d){r.Writable.call(this);var v=o[d];if(!v)throw new Error("Unknown message digest");this._hashType=v.hash,this._hash=e(v.hash),this._tag=v.id,this._signType=v.sign}n(f,r.Writable),f.prototype._write=function(v,w,A){this._hash.update(v),A()},f.prototype.update=function(v,w){return typeof v=="string"&&(v=t.from(v,w)),this._hash.update(v),this},f.prototype.sign=function(v,w){this.end();var A=this._hash.digest(),M=s(A,v,this._hashType,this._signType,this._tag);return w?M.toString(w):M};function u(d){r.Writable.call(this);var v=o[d];if(!v)throw new Error("Unknown message digest");this._hash=e(v.hash),this._tag=v.id,this._signType=v.sign}n(u,r.Writable),u.prototype._write=function(v,w,A){this._hash.update(v),A()},u.prototype.update=function(v,w){return typeof v=="string"&&(v=t.from(v,w)),this._hash.update(v),this},u.prototype.verify=function(v,w,A){typeof w=="string"&&(w=t.from(w,A)),this.end();var M=this._hash.digest();return i(w,M,v,this._signType,this._tag)};function h(d){return new f(d)}function p(d){return new u(d)}return T2={Sign:h,Verify:p,createSign:h,createVerify:p},T2}var k2,Yx;function yV(){if(Yx)return k2;Yx=1;var t=wy(),e=gn;k2=function(o){return new n(o)};var r={secp256k1:{name:"secp256k1",byteLength:32},secp224r1:{name:"p224",byteLength:28},prime256v1:{name:"p256",byteLength:32},prime192v1:{name:"p192",byteLength:24},ed25519:{name:"ed25519",byteLength:32},secp384r1:{name:"p384",byteLength:48},secp521r1:{name:"p521",byteLength:66}};r.p224=r.secp224r1,r.p256=r.secp256r1=r.prime256v1,r.p192=r.secp192r1=r.prime192v1,r.p384=r.secp384r1,r.p521=r.secp521r1;function n(i){this.curveType=r[i],this.curveType||(this.curveType={name:i}),this.curve=new t.ec(this.curveType.name),this.keys=void 0}n.prototype.generateKeys=function(i,o){return this.keys=this.curve.genKeyPair(),this.getPublicKey(i,o)},n.prototype.computeSecret=function(i,o,f){o=o||"utf8",mt.Buffer.isBuffer(i)||(i=new mt.Buffer(i,o));var u=this.curve.keyFromPublic(i).getPublic(),h=u.mul(this.keys.getPrivate()).getX();return s(h,f,this.curveType.byteLength)},n.prototype.getPublicKey=function(i,o){var f=this.keys.getPublic(o==="compressed",!0);return o==="hybrid"&&(f[f.length-1]%2?f[0]=7:f[0]=6),s(f,i)},n.prototype.getPrivateKey=function(i){return s(this.keys.getPrivate(),i)},n.prototype.setPublicKey=function(i,o){return o=o||"utf8",mt.Buffer.isBuffer(i)||(i=new mt.Buffer(i,o)),this.keys._importPublic(i),this},n.prototype.setPrivateKey=function(i,o){o=o||"utf8",mt.Buffer.isBuffer(i)||(i=new mt.Buffer(i,o));var f=new e(i);return f=f.toString(16),this.keys=this.curve.genKeyPair(),this.keys._importPrivate(f),this};function s(i,o,f){Array.isArray(i)||(i=i.toArray());var u=new mt.Buffer(i);if(f&&u.length=0)throw new Error("data too long for modulus")}else throw new Error("unknown padding");return n?_V(o,i):SV(o,i)};function NV(t,e){var r=t.modulus.byteLength(),n=e.length,s=MV("sha1").update(Fa.alloc(0)).digest(),i=s.length,o=2*i;if(n>r-o-2)throw new Error("message too long");var f=Fa.alloc(r-n-o-2),u=r-i-1,h=Zw(i),p=Jx(Fa.concat([s,f,Fa.alloc(1,1),e],u),Xx(h,u)),d=Jx(h,Xx(p,i));return new Q3(Fa.concat([Fa.alloc(1),d,p],r))}function CV(t,e,r){var n=e.length,s=t.modulus.byteLength();if(n>s-11)throw new Error("message too long");var i;return r?i=Fa.alloc(s-n-3,255):i=TV(s-n-3),new Q3(Fa.concat([Fa.from([0,r?1:2]),i,Fa.alloc(1),e],s))}function TV(t){for(var e=Fa.allocUnsafe(t),r=0,n=Zw(t*2),s=0,i;ro||new t8(r).cmp(i.modulus)>=0)throw new Error("decryption error");var f;n?f=PV(new t8(r),i):f=BV(r,i);var u=bp.alloc(o-f.length);if(f=bp.concat([u,f],o),s===4)return LV(i,f);if(s===1)return DV(i,f,n);if(s===3)return f;throw new Error("unknown padding")};function LV(t,e){var r=t.modulus.byteLength(),n=IV("sha1").update(bp.alloc(0)).digest(),s=n.length;if(e[0]!==0)throw new Error("decryption error");var i=e.slice(1,s+1),o=e.slice(s+1),f=e8(i,$x(o,s)),u=e8(o,$x(f,r-s-1));if(FV(n,u.slice(0,s)))throw new Error("decryption error");for(var h=s;u[h]===0;)h++;if(u[h++]!==1)throw new Error("decryption error");return u.slice(h)}function DV(t,e,r){for(var n=e.slice(0,2),s=2,i=0;e[s++]!==0;)if(s>=e.length){i++;break}var o=e.slice(2,s-1);if((n.toString("hex")!=="0002"&&!r||n.toString("hex")!=="0001"&&r)&&i++,o.length<8&&i++,i)throw new Error("decryption error");return e.slice(s)}function FV(t,e){t=bp.from(t),e=bp.from(e);var r=0,n=t.length;t.length!==e.length&&(r++,n=Math.min(t.length,e.length));for(var s=-1;++soR||t<0)throw new TypeError("offset must be a uint32");if(t>aR||t>e)throw new RangeError("offset out of range")}function lR(t,e,r){if(typeof t!="number"||t!==t)throw new TypeError("size must be a number");if(t>oR||t<0)throw new TypeError("size must be a uint32");if(t+e>r||t>aR)throw new RangeError("buffer too small")}Yw&&Yw.getRandomValues||!ft.browser?(P0.randomFill=UV,P0.randomFillSync=HV):(P0.randomFill=r8,P0.randomFillSync=r8);function UV(t,e,r,n){if(!sR.isBuffer(t)&&!(t instanceof ue.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if(typeof e=="function")n=e,e=0,r=t.length;else if(typeof r=="function")n=r,r=t.length-e;else if(typeof n!="function")throw new TypeError('"cb" argument must be a function');return fR(e,t.length),lR(r,e,t.length),cR(t,e,r,n)}function cR(t,e,r,n){if(ft.browser){var s=t.buffer,i=new Uint8Array(s,e,r);if(Yw.getRandomValues(i),n){ft.nextTick(function(){n(null,t)});return}return t}if(n){n8(r,function(f,u){if(f)return n(f);u.copy(t,e),n(null,t)});return}var o=n8(r);return o.copy(t,e),t}function HV(t,e,r){if(typeof e>"u"&&(e=0),!sR.isBuffer(t)&&!(t instanceof ue.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');return fR(e,t.length),r===void 0&&(r=t.length-e),lR(r,e,t.length),cR(t,e,r)}var i8;function X3(){if(i8)return Zt;i8=1,Zt.randomBytes=Zt.rng=Zt.pseudoRandomBytes=Zt.prng=Cl,Zt.createHash=Zt.Hash=b1,Zt.createHmac=Zt.Hmac=zS;var t=Hw,e=Object.keys(t),r=["sha1","sha224","sha256","sha384","sha512","md5","rmd160"].concat(e);Zt.getHashes=function(){return r};var n=oy;Zt.pbkdf2=n.pbkdf2,Zt.pbkdf2Sync=n.pbkdf2Sync;var s=Ga;Zt.Cipher=s.Cipher,Zt.createCipher=s.createCipher,Zt.Cipheriv=s.Cipheriv,Zt.createCipheriv=s.createCipheriv,Zt.Decipher=s.Decipher,Zt.createDecipher=s.createDecipher,Zt.Decipheriv=s.Decipheriv,Zt.createDecipheriv=s.createDecipheriv,Zt.getCiphers=s.getCiphers,Zt.listCiphers=s.listCiphers;var i=Nq();Zt.DiffieHellmanGroup=i.DiffieHellmanGroup,Zt.createDiffieHellmanGroup=i.createDiffieHellmanGroup,Zt.getDiffieHellman=i.getDiffieHellman,Zt.createDiffieHellman=i.createDiffieHellman,Zt.DiffieHellman=i.DiffieHellman;var o=vV();Zt.createSign=o.createSign,Zt.Sign=o.Sign,Zt.createVerify=o.createVerify,Zt.Verify=o.Verify,Zt.createECDH=yV();var f=eR;Zt.publicEncrypt=f.publicEncrypt,Zt.privateEncrypt=f.privateEncrypt,Zt.publicDecrypt=f.publicDecrypt,Zt.privateDecrypt=f.privateDecrypt;var u=P0;return Zt.randomFill=u.randomFill,Zt.randomFillSync=u.randomFillSync,Zt.createCredentials=function(){throw new Error(["sorry, createCredentials is not implemented yet","we accept pull requests","https://github.com/crypto-browserify/crypto-browserify"].join(` -`))},Zt.constants={DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8,NPN_ENABLED:1,ALPN_ENABLED:1,RSA_PKCS1_PADDING:1,RSA_SSLV23_PADDING:2,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_X931_PADDING:5,RSA_PKCS1_PSS_PADDING:6,POINT_CONVERSION_COMPRESSED:2,POINT_CONVERSION_UNCOMPRESSED:4,POINT_CONVERSION_HYBRID:6},Zt}var s8;function R1(){return s8||(s8=1,function(t,e){(function(r,n){t.exports=n()})(ue,function(){var r=r||function(n,s){var i;if(typeof window<"u"&&window.crypto&&(i=window.crypto),typeof self<"u"&&self.crypto&&(i=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(i=globalThis.crypto),!i&&typeof window<"u"&&window.msCrypto&&(i=window.msCrypto),!i&&typeof ue<"u"&&ue.crypto&&(i=ue.crypto),!i&&typeof $F=="function")try{i=X3()}catch{}var o=function(){if(i){if(typeof i.getRandomValues=="function")try{return i.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof i.randomBytes=="function")try{return i.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},f=Object.create||function(){function C(){}return function(B){var O;return C.prototype=B,O=new C,C.prototype=null,O}}(),u={},h=u.lib={},p=h.Base=function(){return{extend:function(C){var B=f(this);return C&&B.mixIn(C),(!B.hasOwnProperty("init")||this.init===B.init)&&(B.init=function(){B.$super.init.apply(this,arguments)}),B.init.prototype=B,B.$super=this,B},create:function(){var C=this.extend();return C.init.apply(C,arguments),C},init:function(){},mixIn:function(C){for(var B in C)C.hasOwnProperty(B)&&(this[B]=C[B]);C.hasOwnProperty("toString")&&(this.toString=C.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),d=h.WordArray=p.extend({init:function(C,B){C=this.words=C||[],B!=s?this.sigBytes=B:this.sigBytes=C.length*4},toString:function(C){return(C||w).stringify(this)},concat:function(C){var B=this.words,O=C.words,D=this.sigBytes,q=C.sigBytes;if(this.clamp(),D%4)for(var W=0;W>>2]>>>24-W%4*8&255;B[D+W>>>2]|=k<<24-(D+W)%4*8}else for(var I=0;I>>2]=O[I>>>2];return this.sigBytes+=q,this},clamp:function(){var C=this.words,B=this.sigBytes;C[B>>>2]&=4294967295<<32-B%4*8,C.length=n.ceil(B/4)},clone:function(){var C=p.clone.call(this);return C.words=this.words.slice(0),C},random:function(C){for(var B=[],O=0;O>>2]>>>24-q%4*8&255;D.push((W>>>4).toString(16)),D.push((W&15).toString(16))}return D.join("")},parse:function(C){for(var B=C.length,O=[],D=0;D>>3]|=parseInt(C.substr(D,2),16)<<24-D%8*4;return new d.init(O,B/2)}},A=v.Latin1={stringify:function(C){for(var B=C.words,O=C.sigBytes,D=[],q=0;q>>2]>>>24-q%4*8&255;D.push(String.fromCharCode(W))}return D.join("")},parse:function(C){for(var B=C.length,O=[],D=0;D>>2]|=(C.charCodeAt(D)&255)<<24-D%4*8;return new d.init(O,B)}},M=v.Utf8={stringify:function(C){try{return decodeURIComponent(escape(A.stringify(C)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(C){return A.parse(unescape(encodeURIComponent(C)))}},R=h.BufferedBlockAlgorithm=p.extend({reset:function(){this._data=new d.init,this._nDataBytes=0},_append:function(C){typeof C=="string"&&(C=M.parse(C)),this._data.concat(C),this._nDataBytes+=C.sigBytes},_process:function(C){var B,O=this._data,D=O.words,q=O.sigBytes,W=this.blockSize,k=W*4,I=q/k;C?I=n.ceil(I):I=n.max((I|0)-this._minBufferSize,0);var H=I*W,P=n.min(H*4,q);if(H){for(var T=0;T>>7)^(I<<14|I>>>18)^I>>>3,P=d[k-2],T=(P<<15|P>>>17)^(P<<13|P>>>19)^P>>>10;d[k]=H+d[k-7]+T+d[k-16]}var g=O&D^~O&q,a=R&N^R&C^N&C,c=(R<<30|R>>>2)^(R<<19|R>>>13)^(R<<10|R>>>22),m=(O<<26|O>>>6)^(O<<21|O>>>11)^(O<<7|O>>>25),b=W+m+g+p[k]+d[k],x=c+a;W=q,q=D,D=O,O=B+b|0,B=C,C=N,N=R,R=b+x|0}M[0]=M[0]+R|0,M[1]=M[1]+N|0,M[2]=M[2]+C|0,M[3]=M[3]+B|0,M[4]=M[4]+O|0,M[5]=M[5]+D|0,M[6]=M[6]+q|0,M[7]=M[7]+W|0},_doFinalize:function(){var w=this._data,A=w.words,M=this._nDataBytes*8,R=w.sigBytes*8;return A[R>>>5]|=128<<24-R%32,A[(R+64>>>9<<4)+14]=n.floor(M/4294967296),A[(R+64>>>9<<4)+15]=M,w.sigBytes=A.length*4,this._process(),this._hash},clone:function(){var w=f.clone.call(this);return w._hash=this._hash.clone(),w}});s.SHA256=f._createHelper(v),s.HmacSHA256=f._createHmacHelper(v)}(Math),r.SHA256})})(JF);var Gg={},jV={get exports(){return Gg},set exports(t){Gg=t}};(function(t,e){(function(r,n){t.exports=n(R1())})(ue,function(r){return r.enc.Hex})})(jV);(function(t){var e=ue&&ue.__importDefault||function(D){return D&&D.__esModule?D:{default:D}};Object.defineProperty(t,"__esModule",{value:!0}),t.fromBech32Address=t.toBech32Address=t.toChecksumAddress=void 0;var r=e(gn),n=e(Ig),s=e(Gg),i="qpzry9x8gf2tvdw0s3jn54khce6mua7l",o=[996825010,642813549,513874426,1027748829,705979059],f="zil",u="tzil";function h(D,q){return!!D.replace("0x","").match("^[0-9a-fA-F]{".concat(q,"}$"))}function p(D){return h(D,40)}function d(D,q,W,k){k===void 0&&(k=!0);for(var I=0,H=0,P=[],T=(1<>q)return null;for(I=I<=W;)H-=W,P.push(I>>H&T)}if(k)H>0&&P.push(I<=q||I<>5);for(q.push(0),W=0;W>25;q=(q&33554431)<<5^D[W];for(var I=0;I<5;++I)k>>I&1&&(q^=o[I])}return q}function A(D,q){for(var W=mt.Buffer.concat([mt.Buffer.from(v(D)),q,mt.Buffer.from([0,0,0,0,0,0])]),k=w(W)^1,I=[],H=0;H<6;++H)I.push(k>>5*(5-H)&31);return mt.Buffer.from(I)}function M(D,q){return w(mt.Buffer.concat([v(D),q]))===1}function R(D,q){for(var W=mt.Buffer.concat([q,A(D,q)]),k=D+"1",I=0;I126)return null;D.charCodeAt(q)>=97&&D.charCodeAt(q)<=122&&(W=!0),D.charCodeAt(q)>=65&&D.charCodeAt(q)<=90&&(k=!0)}if(W&&k)return null;D=D.toLowerCase();var I=D.lastIndexOf("1");if(I<1||I+7>D.length||D.length>90)return null;var H=D.substring(0,I),P=[];for(q=I+1;q")},r[n.MetadataEndpointError]=function(o){return"Failed to query tokenUri ".concat(o.tokenUri,". Error: ").concat(o.errorMessage)},r[n.UnsupportedService]=function(o){return"Naming service ".concat(o.namingService," is not supported")},r[n.InvalidDomainAddress]=function(o){return"Domain address ".concat(o.domain," is invalid")},r),i=function(o){e(f,o);function f(u,h){h===void 0&&(h={});var p=this,d=s[u],v=h.domain,w=h.method,A=h.currencyTicker,M=d(h);return p=o.call(this,M)||this,p.code=u,p.domain=v,p.method=w,p.currencyTicker=A,p.name="ResolutionError",Object.setPrototypeOf(p,f.prototype),p}return f}(Error);t.ResolutionError=i,t.default=i})(Ho);var C1={},jd={},Vg={},zV={get exports(){return Vg},set exports(t){Vg=t}};(function(t,e){var r=typeof self<"u"?self:ue,n=function(){function i(){this.fetch=!1,this.DOMException=r.DOMException}return i.prototype=r,new i}();(function(i){(function(o){var f={searchParams:"URLSearchParams"in i,iterable:"Symbol"in i&&"iterator"in Symbol,blob:"FileReader"in i&&"Blob"in i&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in i,arrayBuffer:"ArrayBuffer"in i};function u(a){return a&&DataView.prototype.isPrototypeOf(a)}if(f.arrayBuffer)var h=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],p=ArrayBuffer.isView||function(a){return a&&h.indexOf(Object.prototype.toString.call(a))>-1};function d(a){if(typeof a!="string"&&(a=String(a)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(a))throw new TypeError("Invalid character in header field name");return a.toLowerCase()}function v(a){return typeof a!="string"&&(a=String(a)),a}function w(a){var c={next:function(){var m=a.shift();return{done:m===void 0,value:m}}};return f.iterable&&(c[Symbol.iterator]=function(){return c}),c}function A(a){this.map={},a instanceof A?a.forEach(function(c,m){this.append(m,c)},this):Array.isArray(a)?a.forEach(function(c){this.append(c[0],c[1])},this):a&&Object.getOwnPropertyNames(a).forEach(function(c){this.append(c,a[c])},this)}A.prototype.append=function(a,c){a=d(a),c=v(c);var m=this.map[a];this.map[a]=m?m+", "+c:c},A.prototype.delete=function(a){delete this.map[d(a)]},A.prototype.get=function(a){return a=d(a),this.has(a)?this.map[a]:null},A.prototype.has=function(a){return this.map.hasOwnProperty(d(a))},A.prototype.set=function(a,c){this.map[d(a)]=v(c)},A.prototype.forEach=function(a,c){for(var m in this.map)this.map.hasOwnProperty(m)&&a.call(c,this.map[m],m,this)},A.prototype.keys=function(){var a=[];return this.forEach(function(c,m){a.push(m)}),w(a)},A.prototype.values=function(){var a=[];return this.forEach(function(c){a.push(c)}),w(a)},A.prototype.entries=function(){var a=[];return this.forEach(function(c,m){a.push([m,c])}),w(a)},f.iterable&&(A.prototype[Symbol.iterator]=A.prototype.entries);function M(a){if(a.bodyUsed)return Promise.reject(new TypeError("Already read"));a.bodyUsed=!0}function R(a){return new Promise(function(c,m){a.onload=function(){c(a.result)},a.onerror=function(){m(a.error)}})}function N(a){var c=new FileReader,m=R(c);return c.readAsArrayBuffer(a),m}function C(a){var c=new FileReader,m=R(c);return c.readAsText(a),m}function B(a){for(var c=new Uint8Array(a),m=new Array(c.length),b=0;b-1?c:a}function k(a,c){c=c||{};var m=c.body;if(a instanceof k){if(a.bodyUsed)throw new TypeError("Already read");this.url=a.url,this.credentials=a.credentials,c.headers||(this.headers=new A(a.headers)),this.method=a.method,this.mode=a.mode,this.signal=a.signal,!m&&a._bodyInit!=null&&(m=a._bodyInit,a.bodyUsed=!0)}else this.url=String(a);if(this.credentials=c.credentials||this.credentials||"same-origin",(c.headers||!this.headers)&&(this.headers=new A(c.headers)),this.method=W(c.method||this.method||"GET"),this.mode=c.mode||this.mode||null,this.signal=c.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&m)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(m)}k.prototype.clone=function(){return new k(this,{body:this._bodyInit})};function I(a){var c=new FormData;return a.trim().split("&").forEach(function(m){if(m){var b=m.split("="),x=b.shift().replace(/\+/g," "),_=b.join("=").replace(/\+/g," ");c.append(decodeURIComponent(x),decodeURIComponent(_))}}),c}function H(a){var c=new A,m=a.replace(/\r?\n[\t ]+/g," ");return m.split(/\r?\n/).forEach(function(b){var x=b.split(":"),_=x.shift().trim();if(_){var S=x.join(":").trim();c.append(_,S)}}),c}D.call(k.prototype);function P(a,c){c||(c={}),this.type="default",this.status=c.status===void 0?200:c.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in c?c.statusText:"OK",this.headers=new A(c.headers),this.url=c.url||"",this._initBody(a)}D.call(P.prototype),P.prototype.clone=function(){return new P(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new A(this.headers),url:this.url})},P.error=function(){var a=new P(null,{status:0,statusText:""});return a.type="error",a};var T=[301,302,303,307,308];P.redirect=function(a,c){if(T.indexOf(c)===-1)throw new RangeError("Invalid status code");return new P(null,{status:c,headers:{location:a}})},o.DOMException=i.DOMException;try{new o.DOMException}catch{o.DOMException=function(c,m){this.message=c,this.name=m;var b=Error(c);this.stack=b.stack},o.DOMException.prototype=Object.create(Error.prototype),o.DOMException.prototype.constructor=o.DOMException}function g(a,c){return new Promise(function(m,b){var x=new k(a,c);if(x.signal&&x.signal.aborted)return b(new o.DOMException("Aborted","AbortError"));var _=new XMLHttpRequest;function S(){_.abort()}_.onload=function(){var y={status:_.status,statusText:_.statusText,headers:H(_.getAllResponseHeaders()||"")};y.url="responseURL"in _?_.responseURL:y.headers.get("X-Request-URL");var l="response"in _?_.response:_.responseText;m(new P(l,y))},_.onerror=function(){b(new TypeError("Network request failed"))},_.ontimeout=function(){b(new TypeError("Network request failed"))},_.onabort=function(){b(new o.DOMException("Aborted","AbortError"))},_.open(x.method,x.url,!0),x.credentials==="include"?_.withCredentials=!0:x.credentials==="omit"&&(_.withCredentials=!1),"responseType"in _&&f.blob&&(_.responseType="blob"),x.headers.forEach(function(y,l){_.setRequestHeader(l,y)}),x.signal&&(x.signal.addEventListener("abort",S),_.onreadystatechange=function(){_.readyState===4&&x.signal.removeEventListener("abort",S)}),_.send(typeof x._bodyInit>"u"?null:x._bodyInit)})}return g.polyfill=!0,i.fetch||(i.fetch=g,i.Headers=A,i.Request=k,i.Response=P),o.Headers=A,o.Request=k,o.Response=P,o.fetch=g,Object.defineProperty(o,"__esModule",{value:!0}),o})({})})(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var s=n;e=s.fetch,e.default=s.fetch,e.fetch=s.fetch,e.Headers=s.Headers,e.Request=s.Request,e.Response=s.Response,t.exports=e})(zV,Vg);var KV=ue&&ue.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})},qV=ue&&ue.__generator||function(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,s,i,o;return o={next:f(0),throw:f(1),return:f(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function f(h){return function(p){return u([h,p])}}function u(h){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,s&&(i=h[0]&2?s.return:h[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,h[1])).done)return i;switch(s=0,i&&(h=[h[0]&2,i.value]),h[0]){case 0:case 1:i=h;break;case 4:return r.label++,{value:h[1],done:!1};case 5:r.label++,s=h[1],h=[0];continue;case 7:h=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]>>24)&16711935|(D<<24|D>>>8)&4278255360,q=(q<<8|q>>>24)&16711935|(q<<24|q>>>8)&4278255360;var W=C[O];W.high^=q,W.low^=D}for(var k=0;k<24;k++){for(var I=0;I<5;I++){for(var H=0,P=0,T=0;T<5;T++){var W=C[I+5*T];H^=W.high,P^=W.low}var g=A[I];g.high=H,g.low=P}for(var I=0;I<5;I++)for(var a=A[(I+4)%5],c=A[(I+1)%5],m=c.high,b=c.low,H=a.high^(m<<1|b>>>31),P=a.low^(b<<1|m>>>31),T=0;T<5;T++){var W=C[I+5*T];W.high^=H,W.low^=P}for(var x=1;x<25;x++){var H,P,W=C[x],_=W.high,S=W.low,y=d[x];y<32?(H=_<>>32-y,P=S<>>32-y):(H=S<>>64-y,P=_<>>64-y);var l=A[v[x]];l.high=H,l.low=P}var E=A[0],Y=C[0];E.high=Y.high,E.low=Y.low;for(var I=0;I<5;I++)for(var T=0;T<5;T++){var x=I+5*T,W=C[x],L=A[x],F=A[(I+1)%5+5*T],V=A[(I+2)%5+5*T];W.high=L.high^~F.high&V.high,W.low=L.low^~F.low&V.low}var W=C[0],Z=w[k];W.high^=Z.high,W.low^=Z.low}},_doFinalize:function(){var R=this._data,N=R.words;this._nDataBytes*8;var C=R.sigBytes*8,B=this.blockSize*32;N[C>>>5]|=1<<24-C%32,N[(n.ceil((C+1)/B)*B>>>5)-1]|=128,R.sigBytes=N.length*4,this._process();for(var O=this._state,D=this.cfg.outputLength/8,q=D/8,W=[],k=0;k>>24)&16711935|(H<<24|H>>>8)&4278255360,P=(P<<8|P>>>24)&16711935|(P<<24|P>>>8)&4278255360,W.push(P),W.push(H)}return new o.init(W,D)},clone:function(){for(var R=f.clone.call(this),N=R._state=this._state.slice(0),C=0;C<25;C++)N[C]=N[C].clone();return R}});s.SHA3=f._createHelper(M),s.HmacSHA3=f._createHmacHelper(M)}(Math),r.SHA3})})(eW);var Xw={},nW={get exports(){return Xw},set exports(t){Xw=t}};(function(t,e){(function(r,n){t.exports=n(R1())})(ue,function(r){return function(){if(typeof ArrayBuffer=="function"){var n=r,s=n.lib,i=s.WordArray,o=i.init,f=i.init=function(u){if(u instanceof ArrayBuffer&&(u=new Uint8Array(u)),(u instanceof Int8Array||typeof Uint8ClampedArray<"u"&&u instanceof Uint8ClampedArray||u instanceof Int16Array||u instanceof Uint16Array||u instanceof Int32Array||u instanceof Uint32Array||u instanceof Float32Array||u instanceof Float64Array)&&(u=new Uint8Array(u.buffer,u.byteOffset,u.byteLength)),u instanceof Uint8Array){for(var h=u.byteLength,p=[],d=0;d>>2]|=u[d]<<24-d%4*8;o.call(this,p,h)}else o.apply(this,arguments)};f.prototype=i}}(),r.lib.WordArray})})(nW);var T1=ue&&ue.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Xn,"__esModule",{value:!0});Xn.fromDecStringToHex=Xn.fromHexStringToDecimals=Xn.znsChildhash=Xn.znsNamehash=Xn.eip137Childhash=Xn.eip137Namehash=void 0;var uR=T1(Ig),hR=T1(Qw),$m=T1(Gg),iW=T1(Xw),dR=T1(gn);function sW(t){var e=J3(t,"sha3");return mR(e)}Xn.eip137Namehash=sW;function aW(t,e){return pR(t,e,"sha3")}Xn.eip137Childhash=aW;function oW(t){var e=J3(t,"sha256");return mR(e)}Xn.znsNamehash=oW;function fW(t,e){return pR(t,e,"sha256")}Xn.znsChildhash=fW;function pR(t,e,r){var n=r==="sha256"?uR.default:hR.default,s={outputLength:256},i=t.replace(/^0x/,""),o=$m.default.stringify(n(e,s));return"0x".concat($m.default.stringify(n($m.default.parse("".concat(i).concat(o)),s)))}function J3(t,e){if(!t)return iW.default.create(Array.from(new Uint8Array(8)));var r=e==="sha256"?uR.default:hR.default,n={outputLength:256},s=t.split("."),i=s[0],o=s.slice(1),f=r(i,n),u=J3(o.join("."),e);return r(u.concat(f),n)}function mR(t){return"0x".concat($m.default.stringify(t))}function lW(t){if(t.startsWith("0x")){var e=t.slice(2,t.length),r=new dR.default(e,16);return r.toString(10)}return t}Xn.fromHexStringToDecimals=lW;function cW(t){if(!t.startsWith("0x")){var e=new dR.default(t,10),r=e.toString(16);return"0x".concat(r.padStart(64,"0"))}return t}Xn.fromDecStringToHex=cW;var zd={};Object.defineProperty(zd,"__esModule",{value:!0});zd.NamingService=void 0;var uW=function(){function t(){}return t}();zd.NamingService=uW;var ou={};(function(t){var e=ue&&ue.__extends||function(){var o=function(f,u){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(h,p){h.__proto__=p}||function(h,p){for(var d in p)Object.prototype.hasOwnProperty.call(p,d)&&(h[d]=p[d])},o(f,u)};return function(f,u){if(typeof u!="function"&&u!==null)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");o(f,u);function h(){this.constructor=f}f.prototype=u===null?Object.create(u):(h.prototype=u.prototype,new h)}}(),r;Object.defineProperty(t,"__esModule",{value:!0}),t.ConfigurationError=t.ConfigurationErrorCode=void 0;var n;(function(o){o.IncorrectProvider="IncorrectProvider",o.UnsupportedNetwork="UnsupportedNetwork",o.UnspecifiedUrl="UnspecifiedUrl",o.NetworkConfigMissing="NetworkConfigMissing",o.CustomNetworkConfigMissing="CustomNetworkConfigMissing",o.InvalidConfigurationField="InvalidProxyReader"})(n=t.ConfigurationErrorCode||(t.ConfigurationErrorCode={}));var s=(r={},r[n.IncorrectProvider]=function(){return"Provider doesn't implement sendAsync or send method"},r[n.UnsupportedNetwork]=function(o){return"Unsupported network in Resolution ".concat(o.method||""," configuration")},r[n.UnspecifiedUrl]=function(o){return"Unspecified url in Resolution ".concat(o.method," configuration")},r[n.NetworkConfigMissing]=function(o){return"Missing configuration in Resolution ".concat(o.method,". Please specify ").concat(o.config)},r[n.CustomNetworkConfigMissing]=function(o){return"Missing configuration in Resolution ".concat(o.method,". Please specify ").concat(o.config," when using a custom network")},r[n.InvalidConfigurationField]=function(o){return"Invalid '".concat(o.field,"' in Resolution ").concat(o.method)},r),i=function(o){e(f,o);function f(u,h){h===void 0&&(h={});var p=this,d=s[u];return p=o.call(this,d(h))||this,p.code=u,p.method=h.method,p.name="ConfigurationError",Object.setPrototypeOf(p,f.prototype),p}return f}(Error);t.ConfigurationError=i,t.default=i})(ou);var hW=ue&&ue.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,s){n.__proto__=s}||function(n,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(n[i]=s[i])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function n(){this.constructor=e}e.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),Zg=ue&&ue.__assign||function(){return Zg=Object.assign||function(t){for(var e,r=1,n=arguments.length;r0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]7?v[M+2].toUpperCase():v[M+2];return A},p=function(v){var w=(0,r.hexToBytes)(mt.Buffer.from(v,"utf8").toString("hex")),A=mt.Buffer.from(w),M=`Ethereum Signed Message: -`+w.length,R=mt.Buffer.from(M),N=mt.Buffer.concat([R,A]);return"0x"+(0,e.keccak256)(N.toString())};t.hashMessage=p;var d=function(v,w){var A=(0,t.hashMessage)(v),M=u(w),R={v:f(M[0]),r:M[1].slice(2),s:M[2].slice(2)},N=s.recoverPubKey(mt.Buffer.from(A.slice(2),"hex"),R,R.v<2?R.v:1-R.v%2),C="0x"+N.encode("hex",!1).slice(2),B="0x"+(0,e.keccak256)((0,r.hexToBytes)(C));return h("0x"+B.slice(-40))};t.recover=d})(gR);Object.defineProperty(k1,"__esModule",{value:!0});k1.isValidTwitterSignature=void 0;var AW=Hl,xW=sp,EW=gR,MW=Xn,SW="0x12cfb13522F13a78b650a8bCbFCf50b7CB899d82",_W=function(t){var e=t.tokenId,r=t.owner,n=t.twitterHandle,s=t.validationSignature,i=(0,MW.fromHexStringToDecimals)(e),o=[i,r,"social.twitter.username",n].map(function(u){return"0x"+(0,xW.keccak256)(u.startsWith("0x")?(0,AW.hexToBytes)(u):u)}).reduce(function(u,h){return u+h},""),f=(0,EW.recover)(o,s);return f===SW};k1.isValidTwitterSignature=_W;var e6={},t6={};const B1="abi/5.7.0",yr=new $t(B1),Gc={};let c8={calldata:!0,memory:!0,storage:!0},RW={calldata:!0,memory:!0};function nm(t,e){if(t==="bytes"||t==="string"){if(c8[e])return!0}else if(t==="address"){if(e==="payable")return!0}else if((t.indexOf("[")>=0||t==="tuple")&&RW[e])return!0;return(c8[e]||e==="payable")&&yr.throwArgumentError("invalid modifier","name",e),!1}function NW(t,e){let r=t;function n(f){yr.throwArgumentError(`unexpected character at position ${f}`,"param",t)}t=t.replace(/\s/g," ");function s(f){let u={type:"",name:"",parent:f,state:{allowType:!0}};return e&&(u.indexed=!1),u}let i={type:"",name:"",state:{allowType:!0}},o=i;for(let f=0;fJSON.parse(s.format(e)))),JSON.stringify(n)}let r="";return this.baseType==="array"?(r+=this.arrayChildren.format(e),r+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):this.baseType==="tuple"?(e!==kr.sighash&&(r+=this.type),r+="("+this.components.map(n=>n.format(e)).join(e===kr.full?", ":",")+")"):r+=this.type,e!==kr.sighash&&(this.indexed===!0&&(r+=" indexed"),e===kr.full&&this.name&&(r+=" "+this.name)),r}static from(e,r){return typeof e=="string"?$f.fromString(e,r):$f.fromObject(e)}static fromObject(e){return $f.isParamType(e)?e:new $f(Gc,{name:e.name||null,type:Du(e.type),indexed:e.indexed==null?null:!!e.indexed,components:e.components?e.components.map($f.fromObject):null})}static fromString(e,r){function n(s){return $f.fromObject({name:s.name,type:s.type,indexed:s.indexed,components:s.components})}return n(NW(e,!!r))}static isParamType(e){return!!(e!=null&&e._isParamType)}};function wp(t,e){return kW(t).map(r=>za.fromString(r,e))}let I1=class O0{constructor(e,r){e!==Gc&&yr.throwError("use a static from method",$t.errors.UNSUPPORTED_OPERATION,{operation:"new Fragment()"}),eg(this,r),this._isFragment=!0,Object.freeze(this)}static from(e){return O0.isFragment(e)?e:typeof e=="string"?O0.fromString(e):O0.fromObject(e)}static fromObject(e){if(O0.isFragment(e))return e;switch(e.type){case"function":return xp.fromObject(e);case"event":return Yg.fromObject(e);case"constructor":return Ap.fromObject(e);case"error":return Jw.fromObject(e);case"fallback":case"receive":return null}return yr.throwArgumentError("invalid fragment object","value",e)}static fromString(e){return e=e.replace(/\s/g," "),e=e.replace(/\(/g," (").replace(/\)/g,") ").replace(/\s+/g," "),e=e.trim(),e.split(" ")[0]==="event"?Yg.fromString(e.substring(5).trim()):e.split(" ")[0]==="function"?xp.fromString(e.substring(8).trim()):e.split("(")[0].trim()==="constructor"?Ap.fromString(e.trim()):e.split(" ")[0]==="error"?Jw.fromString(e.substring(5).trim()):yr.throwArgumentError("unsupported fragment","value",e)}static isFragment(e){return!!(e&&e._isFragment)}},Yg=class Iu extends I1{format(e){if(e||(e=kr.sighash),kr[e]||yr.throwArgumentError("invalid format type","format",e),e===kr.json)return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map(n=>JSON.parse(n.format(e)))});let r="";return e!==kr.sighash&&(r+="event "),r+=this.name+"("+this.inputs.map(n=>n.format(e)).join(e===kr.full?", ":",")+") ",e!==kr.sighash&&this.anonymous&&(r+="anonymous "),r.trim()}static from(e){return typeof e=="string"?Iu.fromString(e):Iu.fromObject(e)}static fromObject(e){if(Iu.isEventFragment(e))return e;e.type!=="event"&&yr.throwArgumentError("invalid event object","value",e);const r={name:Ep(e.name),anonymous:e.anonymous,inputs:e.inputs?e.inputs.map(za.fromObject):[],type:"event"};return new Iu(Gc,r)}static fromString(e){let r=e.match(Mp);r||yr.throwArgumentError("invalid event string","value",e);let n=!1;return r[3].split(" ").forEach(s=>{switch(s.trim()){case"anonymous":n=!0;break;case"":break;default:yr.warn("unknown modifier: "+s)}}),Iu.fromObject({name:r[1].trim(),anonymous:n,inputs:wp(r[2],!0),type:"event"})}static isEventFragment(e){return e&&e._isFragment&&e.type==="event"}};function vR(t,e){e.gas=null;let r=t.split("@");return r.length!==1?(r.length>2&&yr.throwArgumentError("invalid human-readable ABI signature","value",t),r[1].match(/^[0-9]+$/)||yr.throwArgumentError("invalid human-readable ABI signature gas","value",t),e.gas=Yi.from(r[1]),r[0]):t}function yR(t,e){e.constant=!1,e.payable=!1,e.stateMutability="nonpayable",t.split(" ").forEach(r=>{switch(r.trim()){case"constant":e.constant=!0;break;case"payable":e.payable=!0,e.stateMutability="payable";break;case"nonpayable":e.payable=!1,e.stateMutability="nonpayable";break;case"pure":e.constant=!0,e.stateMutability="pure";break;case"view":e.constant=!0,e.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+r)}})}function bR(t){let e={constant:!1,payable:!0,stateMutability:"payable"};return t.stateMutability!=null?(e.stateMutability=t.stateMutability,e.constant=e.stateMutability==="view"||e.stateMutability==="pure",t.constant!=null&&!!t.constant!==e.constant&&yr.throwArgumentError("cannot have constant function with mutability "+e.stateMutability,"value",t),e.payable=e.stateMutability==="payable",t.payable!=null&&!!t.payable!==e.payable&&yr.throwArgumentError("cannot have payable function with mutability "+e.stateMutability,"value",t)):t.payable!=null?(e.payable=!!t.payable,t.constant==null&&!e.payable&&t.type!=="constructor"&&yr.throwArgumentError("unable to determine stateMutability","value",t),e.constant=!!t.constant,e.constant?e.stateMutability="view":e.stateMutability=e.payable?"payable":"nonpayable",e.payable&&e.constant&&yr.throwArgumentError("cannot have constant payable function","value",t)):t.constant!=null?(e.constant=!!t.constant,e.payable=!e.constant,e.stateMutability=e.constant?"view":"payable"):t.type!=="constructor"&&yr.throwArgumentError("unable to determine stateMutability","value",t),e}let Ap=class Pu extends I1{format(e){if(e||(e=kr.sighash),kr[e]||yr.throwArgumentError("invalid format type","format",e),e===kr.json)return JSON.stringify({type:"constructor",stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:void 0,payable:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map(n=>JSON.parse(n.format(e)))});e===kr.sighash&&yr.throwError("cannot format a constructor for sighash",$t.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});let r="constructor("+this.inputs.map(n=>n.format(e)).join(e===kr.full?", ":",")+") ";return this.stateMutability&&this.stateMutability!=="nonpayable"&&(r+=this.stateMutability+" "),r.trim()}static from(e){return typeof e=="string"?Pu.fromString(e):Pu.fromObject(e)}static fromObject(e){if(Pu.isConstructorFragment(e))return e;e.type!=="constructor"&&yr.throwArgumentError("invalid constructor object","value",e);let r=bR(e);r.constant&&yr.throwArgumentError("constructor cannot be constant","value",e);const n={name:null,type:e.type,inputs:e.inputs?e.inputs.map(za.fromObject):[],payable:r.payable,stateMutability:r.stateMutability,gas:e.gas?Yi.from(e.gas):null};return new Pu(Gc,n)}static fromString(e){let r={type:"constructor"};e=vR(e,r);let n=e.match(Mp);return(!n||n[1].trim()!=="constructor")&&yr.throwArgumentError("invalid constructor string","value",e),r.inputs=wp(n[2].trim(),!1),yR(n[3].trim(),r),Pu.fromObject(r)}static isConstructorFragment(e){return e&&e._isFragment&&e.type==="constructor"}},xp=class Ou extends Ap{format(e){if(e||(e=kr.sighash),kr[e]||yr.throwArgumentError("invalid format type","format",e),e===kr.json)return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:void 0,payable:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map(n=>JSON.parse(n.format(e))),outputs:this.outputs.map(n=>JSON.parse(n.format(e)))});let r="";return e!==kr.sighash&&(r+="function "),r+=this.name+"("+this.inputs.map(n=>n.format(e)).join(e===kr.full?", ":",")+") ",e!==kr.sighash&&(this.stateMutability?this.stateMutability!=="nonpayable"&&(r+=this.stateMutability+" "):this.constant&&(r+="view "),this.outputs&&this.outputs.length&&(r+="returns ("+this.outputs.map(n=>n.format(e)).join(", ")+") "),this.gas!=null&&(r+="@"+this.gas.toString()+" ")),r.trim()}static from(e){return typeof e=="string"?Ou.fromString(e):Ou.fromObject(e)}static fromObject(e){if(Ou.isFunctionFragment(e))return e;e.type!=="function"&&yr.throwArgumentError("invalid function object","value",e);let r=bR(e);const n={type:e.type,name:Ep(e.name),constant:r.constant,inputs:e.inputs?e.inputs.map(za.fromObject):[],outputs:e.outputs?e.outputs.map(za.fromObject):[],payable:r.payable,stateMutability:r.stateMutability,gas:e.gas?Yi.from(e.gas):null};return new Ou(Gc,n)}static fromString(e){let r={type:"function"};e=vR(e,r);let n=e.split(" returns ");n.length>2&&yr.throwArgumentError("invalid function string","value",e);let s=n[0].match(Mp);if(s||yr.throwArgumentError("invalid function signature","value",e),r.name=s[1].trim(),r.name&&Ep(r.name),r.inputs=wp(s[2],!1),yR(s[3].trim(),r),n.length>1){let i=n[1].match(Mp);(i[1].trim()!=""||i[3].trim()!="")&&yr.throwArgumentError("unexpected tokens","value",e),r.outputs=wp(i[2],!1)}else r.outputs=[];return Ou.fromObject(r)}static isFunctionFragment(e){return e&&e._isFragment&&e.type==="function"}};function u8(t){const e=t.format();return(e==="Error(string)"||e==="Panic(uint256)")&&yr.throwArgumentError(`cannot specify user defined ${e} error`,"fragment",t),t}let Jw=class Lu extends I1{format(e){if(e||(e=kr.sighash),kr[e]||yr.throwArgumentError("invalid format type","format",e),e===kr.json)return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map(n=>JSON.parse(n.format(e)))});let r="";return e!==kr.sighash&&(r+="error "),r+=this.name+"("+this.inputs.map(n=>n.format(e)).join(e===kr.full?", ":",")+") ",r.trim()}static from(e){return typeof e=="string"?Lu.fromString(e):Lu.fromObject(e)}static fromObject(e){if(Lu.isErrorFragment(e))return e;e.type!=="error"&&yr.throwArgumentError("invalid error object","value",e);const r={type:e.type,name:Ep(e.name),inputs:e.inputs?e.inputs.map(za.fromObject):[]};return u8(new Lu(Gc,r))}static fromString(e){let r={type:"error"},n=e.match(Mp);return n||yr.throwArgumentError("invalid error signature","value",e),r.name=n[1].trim(),r.name&&Ep(r.name),r.inputs=wp(n[2],!1),u8(Lu.fromObject(r))}static isErrorFragment(e){return e&&e._isFragment&&e.type==="error"}};function Du(t){return t.match(/^uint($|[^1-9])/)?t="uint256"+t.substring(4):t.match(/^int($|[^1-9])/)&&(t="int256"+t.substring(3)),t}const TW=new RegExp("^[a-zA-Z$_][a-zA-Z0-9$_]*$");function Ep(t){return(!t||!t.match(TW))&&yr.throwArgumentError(`invalid identifier "${t}"`,"value",t),t}const Mp=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$");function kW(t){t=t.trim();let e=[],r="",n=0;for(let s=0;sthis.wordSize&&r6.throwError("value out-of-bounds",$t.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:r.length}),r.length%this.wordSize&&(r=ah([this._padding.slice(r.length%this.wordSize),r])),r}writeValue(e){return this._writeData(this._getValue(e))}writeUpdatableValue(){const e=this._data.length;return this._data.push(this._padding),this._dataLength+=this.wordSize,r=>{this._data[e]=this._getValue(r)}}},IW=class eA{constructor(e,r,n,s){yi(this,"_data",kn(e)),yi(this,"wordSize",r||32),yi(this,"_coerceFunc",n),yi(this,"allowLoose",s),this._offset=0}get data(){return Rr(this._data)}get consumed(){return this._offset}static coerce(e,r){let n=e.match("^u?int([0-9]+)$");return n&&parseInt(n[1])<=48&&(r=r.toNumber()),r}coerce(e,r){return this._coerceFunc?this._coerceFunc(e,r):eA.coerce(e,r)}_peekBytes(e,r,n){let s=Math.ceil(r/this.wordSize)*this.wordSize;return this._offset+s>this._data.length&&(this.allowLoose&&n&&this._offset+r<=this._data.length?s=r:r6.throwError("data out-of-bounds",$t.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+s})),this._data.slice(this._offset,this._offset+s)}subReader(e){return new eA(this._data.slice(this._offset+e),this.wordSize,this._coerceFunc,this.allowLoose)}readBytes(e,r){let n=this._peekBytes(0,e,!!r);return this._offset+=n.length,n.slice(0,e)}readValue(){return Yi.from(this.readBytes(this.wordSize))}},PW=class extends Lf{constructor(e){super("address","address",e,!1)}defaultValue(){return"0x0000000000000000000000000000000000000000"}encode(e,r){try{r=lp(r)}catch(n){this._throwError(n.message,r)}return e.writeValue(r)}decode(e){return lp(K0(e.readValue().toHexString(),20))}},OW=class extends Lf{constructor(e){super(e.name,e.type,void 0,e.dynamic),this.coder=e}defaultValue(){return this.coder.defaultValue()}encode(e,r){return this.coder.encode(e,r)}decode(e){return this.coder.decode(e)}};const Zu=new $t(B1);function wR(t,e,r){let n=null;if(Array.isArray(r))n=r;else if(r&&typeof r=="object"){let u={};n=e.map(h=>{const p=h.localName;return p||Zu.throwError("cannot encode object for signature with missing names",$t.errors.INVALID_ARGUMENT,{argument:"values",coder:h,value:r}),u[p]&&Zu.throwError("cannot encode object for signature with duplicate names",$t.errors.INVALID_ARGUMENT,{argument:"values",coder:h,value:r}),u[p]=!0,r[p]})}else Zu.throwArgumentError("invalid tuple value","tuple",r);e.length!==n.length&&Zu.throwArgumentError("types/value length mismatch","tuple",r);let s=new $w(t.wordSize),i=new $w(t.wordSize),o=[];e.forEach((u,h)=>{let p=n[h];if(u.dynamic){let d=i.length;u.encode(i,p);let v=s.writeUpdatableValue();o.push(w=>{v(w+d)})}else u.encode(s,p)}),o.forEach(u=>{u(s.length)});let f=t.appendWriter(s);return f+=t.appendWriter(i),f}function AR(t,e){let r=[],n=t.subReader(0);e.forEach(i=>{let o=null;if(i.dynamic){let f=t.readValue(),u=n.subReader(f.toNumber());try{o=i.decode(u)}catch(h){if(h.code===$t.errors.BUFFER_OVERRUN)throw h;o=h,o.baseType=i.name,o.name=i.localName,o.type=i.type}}else try{o=i.decode(t)}catch(f){if(f.code===$t.errors.BUFFER_OVERRUN)throw f;o=f,o.baseType=i.name,o.name=i.localName,o.type=i.type}o!=null&&r.push(o)});const s=e.reduce((i,o)=>{const f=o.localName;return f&&(i[f]||(i[f]=0),i[f]++),i},{});e.forEach((i,o)=>{let f=i.localName;if(!f||s[f]!==1||(f==="length"&&(f="_length"),r[f]!=null))return;const u=r[o];u instanceof Error?Object.defineProperty(r,f,{enumerable:!0,get:()=>{throw u}}):r[f]=u});for(let i=0;i{throw o}})}return Object.freeze(r)}let LW=class extends Lf{constructor(e,r,n){const s=e.type+"["+(r>=0?r:"")+"]",i=r===-1||e.dynamic;super("array",s,n,i),this.coder=e,this.length=r}defaultValue(){const e=this.coder.defaultValue(),r=[];for(let n=0;ne._data.length&&Zu.throwError("insufficient data length",$t.errors.BUFFER_OVERRUN,{length:e._data.length,count:r}));let n=[];for(let s=0;s{o.dynamic&&(n=!0),s.push(o.type)});const i="tuple("+s.join(",")+")";super("tuple",i,r,n),this.coders=e}defaultValue(){const e=[];this.coders.forEach(n=>{e.push(n.defaultValue())});const r=this.coders.reduce((n,s)=>{const i=s.localName;return i&&(n[i]||(n[i]=0),n[i]++),n},{});return this.coders.forEach((n,s)=>{let i=n.localName;!i||r[i]!==1||(i==="length"&&(i="_length"),e[i]==null&&(e[i]=e[s]))}),Object.freeze(e)}encode(e,r){return wR(e,this.coders,r)}decode(e){return e.coerce(this.name,AR(e,this.coders))}};const sm=new $t(B1),KW=new RegExp(/^bytes([0-9]*)$/),qW=new RegExp(/^(u?int)([0-9]*)$/);let ER=class{constructor(e){yi(this,"coerceFunc",e||null)}_getCoder(e){switch(e.baseType){case"address":return new PW(e.name);case"bool":return new DW(e.name);case"string":return new zW(e.name);case"bytes":return new FW(e.name);case"array":return new LW(this._getCoder(e.arrayChildren),e.arrayLength,e.name);case"tuple":return new im((e.components||[]).map(n=>this._getCoder(n)),e.name);case"":return new HW(e.name)}let r=e.type.match(qW);if(r){let n=parseInt(r[2]||"256");return(n===0||n>256||n%8!==0)&&sm.throwArgumentError("invalid "+r[1]+" bit length","param",e),new jW(n/8,r[1]==="int",e.name)}if(r=e.type.match(KW),r){let n=parseInt(r[1]);return(n===0||n>32)&&sm.throwArgumentError("invalid bytes length","param",e),new UW(n,e.name)}return sm.throwArgumentError("invalid type","type",e.type)}_getWordSize(){return 32}_getReader(e,r){return new IW(e,this._getWordSize(),this.coerceFunc,r)}_getWriter(){return new $w(this._getWordSize())}getDefaultValue(e){const r=e.map(s=>this._getCoder(za.from(s)));return new im(r,"_").defaultValue()}encode(e,r){e.length!==r.length&&sm.throwError("types/values length mismatch",$t.errors.INVALID_ARGUMENT,{count:{types:e.length,values:r.length},value:{types:e,values:r}});const n=e.map(o=>this._getCoder(za.from(o))),s=new im(n,"_"),i=this._getWriter();return s.encode(i,r),i.data}decode(e,r,n){const s=e.map(o=>this._getCoder(za.from(o)));return new im(s,"_").decode(this._getReader(kn(r),n))}};const MR=new ER,bn=new $t(B1);let SR=class extends Uv{},_R=class extends Uv{},GW=class extends Uv{},tA=class extends Uv{static isIndexed(e){return!!(e&&e._isIndexed)}};const VW={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:!0},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"]}};function h8(t,e){const r=new Error(`deferred error during ABI decoding triggered accessing ${t}`);return r.error=e,r}let WW=class{constructor(e){let r=[];typeof e=="string"?r=JSON.parse(e):r=e,yi(this,"fragments",r.map(n=>I1.from(n)).filter(n=>n!=null)),yi(this,"_abiCoder",Z1(new.target,"getAbiCoder")()),yi(this,"functions",{}),yi(this,"errors",{}),yi(this,"events",{}),yi(this,"structs",{}),this.fragments.forEach(n=>{let s=null;switch(n.type){case"constructor":if(this.deploy){bn.warn("duplicate definition - constructor");return}yi(this,"deploy",n);return;case"function":s=this.functions;break;case"event":s=this.events;break;case"error":s=this.errors;break;default:return}let i=n.format();if(s[i]){bn.warn("duplicate definition - "+i);return}s[i]=n}),this.deploy||yi(this,"deploy",Ap.from({payable:!1,type:"constructor"})),yi(this,"_isInterface",!0)}format(e){e||(e=kr.full),e===kr.sighash&&bn.throwArgumentError("interface does not support formatting sighash","format",e);const r=this.fragments.map(n=>n.format(e));return e===kr.json?JSON.stringify(r.map(n=>JSON.parse(n))):r}static getAbiCoder(){return MR}static getAddress(e){return lp(e)}static getSighash(e){return z7(Y1(e.format()),0,4)}static getEventTopic(e){return Y1(e.format())}getFunction(e){if(xi(e)){for(const n in this.functions)if(e===this.getSighash(n))return this.functions[n];bn.throwArgumentError("no matching function","sighash",e)}if(e.indexOf("(")===-1){const n=e.trim(),s=Object.keys(this.functions).filter(i=>i.split("(")[0]===n);return s.length===0?bn.throwArgumentError("no matching function","name",n):s.length>1&&bn.throwArgumentError("multiple matching functions","name",n),this.functions[s[0]]}const r=this.functions[xp.fromString(e).format()];return r||bn.throwArgumentError("no matching function","signature",e),r}getEvent(e){if(xi(e)){const n=e.toLowerCase();for(const s in this.events)if(n===this.getEventTopic(s))return this.events[s];bn.throwArgumentError("no matching event","topichash",n)}if(e.indexOf("(")===-1){const n=e.trim(),s=Object.keys(this.events).filter(i=>i.split("(")[0]===n);return s.length===0?bn.throwArgumentError("no matching event","name",n):s.length>1&&bn.throwArgumentError("multiple matching events","name",n),this.events[s[0]]}const r=this.events[Yg.fromString(e).format()];return r||bn.throwArgumentError("no matching event","signature",e),r}getError(e){if(xi(e)){const n=Z1(this.constructor,"getSighash");for(const s in this.errors){const i=this.errors[s];if(e===n(i))return this.errors[s]}bn.throwArgumentError("no matching error","sighash",e)}if(e.indexOf("(")===-1){const n=e.trim(),s=Object.keys(this.errors).filter(i=>i.split("(")[0]===n);return s.length===0?bn.throwArgumentError("no matching error","name",n):s.length>1&&bn.throwArgumentError("multiple matching errors","name",n),this.errors[s[0]]}const r=this.errors[xp.fromString(e).format()];return r||bn.throwArgumentError("no matching error","signature",e),r}getSighash(e){if(typeof e=="string")try{e=this.getFunction(e)}catch(r){try{e=this.getError(e)}catch{throw r}}return Z1(this.constructor,"getSighash")(e)}getEventTopic(e){return typeof e=="string"&&(e=this.getEvent(e)),Z1(this.constructor,"getEventTopic")(e)}_decodeParams(e,r){return this._abiCoder.decode(e,r)}_encodeParams(e,r){return this._abiCoder.encode(e,r)}encodeDeploy(e){return this._encodeParams(this.deploy.inputs,e||[])}decodeErrorResult(e,r){typeof e=="string"&&(e=this.getError(e));const n=kn(r);return Rr(n.slice(0,4))!==this.getSighash(e)&&bn.throwArgumentError(`data signature does not match error ${e.name}.`,"data",Rr(n)),this._decodeParams(e.inputs,n.slice(4))}encodeErrorResult(e,r){return typeof e=="string"&&(e=this.getError(e)),Rr(ah([this.getSighash(e),this._encodeParams(e.inputs,r||[])]))}decodeFunctionData(e,r){typeof e=="string"&&(e=this.getFunction(e));const n=kn(r);return Rr(n.slice(0,4))!==this.getSighash(e)&&bn.throwArgumentError(`data signature does not match function ${e.name}.`,"data",Rr(n)),this._decodeParams(e.inputs,n.slice(4))}encodeFunctionData(e,r){return typeof e=="string"&&(e=this.getFunction(e)),Rr(ah([this.getSighash(e),this._encodeParams(e.inputs,r||[])]))}decodeFunctionResult(e,r){typeof e=="string"&&(e=this.getFunction(e));let n=kn(r),s=null,i="",o=null,f=null,u=null;switch(n.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(e.outputs,n)}catch{}break;case 4:{const h=Rr(n.slice(0,4)),p=VW[h];if(p)o=this._abiCoder.decode(p.inputs,n.slice(4)),f=p.name,u=p.signature,p.reason&&(s=o[0]),f==="Error"?i=`; VM Exception while processing transaction: reverted with reason string ${JSON.stringify(o[0])}`:f==="Panic"&&(i=`; VM Exception while processing transaction: reverted with panic code ${o[0]}`);else try{const d=this.getError(h);o=this._abiCoder.decode(d.inputs,n.slice(4)),f=d.name,u=d.format()}catch{}break}}return bn.throwError("call revert exception"+i,$t.errors.CALL_EXCEPTION,{method:e.format(),data:Rr(r),errorArgs:o,errorName:f,errorSignature:u,reason:s})}encodeFunctionResult(e,r){return typeof e=="string"&&(e=this.getFunction(e)),Rr(this._abiCoder.encode(e.outputs,r||[]))}encodeFilterTopics(e,r){typeof e=="string"&&(e=this.getEvent(e)),r.length>e.inputs.length&&bn.throwError("too many arguments for "+e.format(),$t.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:r});let n=[];e.anonymous||n.push(this.getEventTopic(e));const s=(i,o)=>i.type==="string"?Y1(o):i.type==="bytes"?fp(Rr(o)):(i.type==="bool"&&typeof o=="boolean"&&(o=o?"0x01":"0x00"),i.type.match(/^u?int/)&&(o=Yi.from(o).toHexString()),i.type==="address"&&this._abiCoder.encode(["address"],[o]),K0(Rr(o),32));for(r.forEach((i,o)=>{let f=e.inputs[o];if(!f.indexed){i!=null&&bn.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+f.name,i);return}i==null?n.push(null):f.baseType==="array"||f.baseType==="tuple"?bn.throwArgumentError("filtering with tuples or arrays not supported","contract."+f.name,i):Array.isArray(i)?n.push(i.map(u=>s(f,u))):n.push(s(f,i))});n.length&&n[n.length-1]===null;)n.pop();return n}encodeEventLog(e,r){typeof e=="string"&&(e=this.getEvent(e));const n=[],s=[],i=[];return e.anonymous||n.push(this.getEventTopic(e)),r.length!==e.inputs.length&&bn.throwArgumentError("event arguments/values mismatch","values",r),e.inputs.forEach((o,f)=>{const u=r[f];if(o.indexed)if(o.type==="string")n.push(Y1(u));else if(o.type==="bytes")n.push(fp(u));else{if(o.baseType==="tuple"||o.baseType==="array")throw new Error("not implemented");n.push(this._abiCoder.encode([o.type],[u]))}else s.push(o),i.push(u)}),{data:this._abiCoder.encode(s,i),topics:n}}decodeEventLog(e,r,n){if(typeof e=="string"&&(e=this.getEvent(e)),n!=null&&!e.anonymous){let v=this.getEventTopic(e);(!xi(n[0],32)||n[0].toLowerCase()!==v)&&bn.throwError("fragment/topic mismatch",$t.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:v,value:n[0]}),n=n.slice(1)}let s=[],i=[],o=[];e.inputs.forEach((v,w)=>{v.indexed?v.type==="string"||v.type==="bytes"||v.baseType==="tuple"||v.baseType==="array"?(s.push(za.fromObject({type:"bytes32",name:v.name})),o.push(!0)):(s.push(v),o.push(!1)):(i.push(v),o.push(!1))});let f=n!=null?this._abiCoder.decode(s,ah(n)):null,u=this._abiCoder.decode(i,r,!0),h=[],p=0,d=0;e.inputs.forEach((v,w)=>{if(v.indexed)if(f==null)h[w]=new tA({_isIndexed:!0,hash:null});else if(o[w])h[w]=new tA({_isIndexed:!0,hash:f[d++]});else try{h[w]=f[d++]}catch(A){h[w]=A}else try{h[w]=u[p++]}catch(A){h[w]=A}if(v.name&&h[v.name]==null){const A=h[w];A instanceof Error?Object.defineProperty(h,v.name,{enumerable:!0,get:()=>{throw h8(`property ${JSON.stringify(v.name)}`,A)}}):h[v.name]=A}});for(let v=0;v{throw h8(`index ${v}`,w)}})}return Object.freeze(h)}parseTransaction(e){let r=this.getFunction(e.data.substring(0,10).toLowerCase());return r?new _R({args:this._abiCoder.decode(r.inputs,"0x"+e.data.substring(10)),functionFragment:r,name:r.name,signature:r.format(),sighash:this.getSighash(r),value:Yi.from(e.value||"0")}):null}parseLog(e){let r=this.getEvent(e.topics[0]);return!r||r.anonymous?null:new SR({eventFragment:r,name:r.name,signature:r.format(),topic:this.getEventTopic(r),args:this.decodeEventLog(r,e.data,e.topics)})}parseError(e){const r=Rr(e);let n=this.getError(r.substring(0,10).toLowerCase());return n?new GW({args:this._abiCoder.decode(n.inputs,"0x"+r.substring(10)),errorFragment:n,name:n.name,signature:n.format(),sighash:this.getSighash(n)}):null}static isInterface(e){return!!(e&&e._isInterface)}};const ZW=Object.freeze(Object.defineProperty({__proto__:null,AbiCoder:ER,ConstructorFragment:Ap,ErrorFragment:Jw,EventFragment:Yg,FormatTypes:kr,Fragment:I1,FunctionFragment:xp,Indexed:tA,Interface:WW,LogDescription:SR,ParamType:za,TransactionDescription:_R,checkResultErrors:BW,defaultAbiCoder:MR},Symbol.toStringTag,{value:"Module"})),YW=fT(ZW);var am=ue&&ue.__awaiter||function(t,e,r,n){function s(i){return i instanceof r?i:new r(function(o){o(i)})}return new(r||(r=Promise))(function(i,o){function f(p){try{h(n.next(p))}catch(d){o(d)}}function u(p){try{h(n.throw(p))}catch(d){o(d)}}function h(p){p.done?i(p.value):s(p.value).then(f,u)}h((n=n.apply(t,e||[])).next())})},om=ue&&ue.__generator||function(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,s,i,o;return o={next:f(0),throw:f(1),return:f(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function f(h){return function(p){return u([h,p])}}function u(h){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,s&&(i=h[0]&2?s.return:h[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,h[1])).done)return i;switch(s=0,i&&(h=[h[0]&2,i.value]),h[0]){case 0:case 1:i=h;break;case 4:return r.label++,{value:h[1],done:!1};case 5:r.label++,s=h[1],h=[0];continue;case 7:h=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]0&&i[i.length-1])&&(h[0]===6||h[0]===2)){r=0;continue}if(h[0]===3&&(!i||h[1]>i[0]&&h[1]-1}function Ut(ie,he){var be=this.__data__,lt=Ir(be,ie);return lt<0?(++this.size,be.push([ie,he])):be[lt][1]=he,this}De.prototype.clear=Be,De.prototype.delete=kt,De.prototype.get=Ge,De.prototype.has=Ie,De.prototype.set=Ut;function Ue(ie){var he=-1,be=ie==null?0:ie.length;for(this.clear();++he1?be[Xt-1]:void 0,Fr=Xt>2?be[2]:void 0;for(zt=ie.length>3&&typeof zt=="function"?(Xt--,zt):void 0,Fr&&Jd(be[0],be[1],Fr)&&(zt=Xt<3?void 0:zt,Xt=1),he=Object(he);++lt-1&&ie%1==0&&ie0){if(++he>=s)return arguments[0]}else he=0;return ie.apply(void 0,arguments)}}function hu(ie){if(ie!=null){try{return Me.call(ie)}catch{}try{return ie+""}catch{}}return""}function Hf(ie,he){return ie===he||ie!==ie&&he!==he}var Ko=jr(function(){return arguments}())?jr:function(ie){return ya(ie)&&ge.call(ie,"callee")&&!xt.call(ie,"callee")},Yl=Array.isArray;function Ql(ie){return ie!=null&&Ln(ie.length)&&!hi(ie)}function ga(ie){return ya(ie)&&Ql(ie)}var du=Ve||wa;function hi(ie){if(!va(ie))return!1;var he=mr(ie);return he==w||he==A||he==h||he==B}function Ln(ie){return typeof ie=="number"&&ie>-1&&ie%1==0&&ie<=o}function va(ie){var he=typeof ie;return ie!=null&&(he=="object"||he=="function")}function ya(ie){return ie!=null&&typeof ie=="object"}function ba(ie){if(!ya(ie)||mr(ie)!=C)return!1;var he=qe(ie);if(he===null)return!0;var be=ge.call(he,"constructor")&&he.constructor;return typeof be=="function"&&be instanceof be&&Me.call(be)==we}var pu=j?oe(j):or;function s0(ie){return Qd(ie,mu(ie))}function mu(ie){return Ql(ie)?Vt(ie,!0):Qr(ie)}var Xl=Xd(function(ie,he,be){Mr(ie,he,be)});function Jl(ie){return function(){return ie}}function gu(ie){return ie}function wa(){return!1}t.exports=Xl})(nY,Qg);const iY=Qg;var rA={},sY={get exports(){return rA},set exports(t){rA=t}};(function(t){var e=Object.prototype.hasOwnProperty,r="~";function n(){}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(r=!1));function s(u,h,p){this.fn=u,this.context=h,this.once=p||!1}function i(u,h,p,d,v){if(typeof p!="function")throw new TypeError("The listener must be a function");var w=new s(p,d||u,v),A=r?r+h:h;return u._events[A]?u._events[A].fn?u._events[A]=[u._events[A],w]:u._events[A].push(w):(u._events[A]=w,u._eventsCount++),u}function o(u,h){--u._eventsCount===0?u._events=new n:delete u._events[h]}function f(){this._events=new n,this._eventsCount=0}f.prototype.eventNames=function(){var h=[],p,d;if(this._eventsCount===0)return h;for(d in p=this._events)e.call(p,d)&&h.push(r?d.slice(1):d);return Object.getOwnPropertySymbols?h.concat(Object.getOwnPropertySymbols(p)):h},f.prototype.listeners=function(h){var p=r?r+h:h,d=this._events[p];if(!d)return[];if(d.fn)return[d.fn];for(var v=0,w=d.length,A=new Array(w);v - - - - - - - - - - - - - - - - - - - - - - - - -`,oY=` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`,fY=` - - - -`,a6=` - - - -`,x0=` - - - - - - - - -`,lY=` - - - -`,cY=` - - - -`,uY=` - - - -`,b8=` - - - - -`,hY=` - - - -`,dY=` - - - -`,pY=` - - - - - - - -`,mY=` - - - - - - - - - -`,gY=` - - - - - - - - -`,vY=` - - - -`,yY=` - - -`,o6=` - - - -`,IR=` - - - -`,bY=` - - - -`;function wY(){if(typeof window<"u"){const t=EB.getParser(window.navigator.userAgent),e=t.getOS(),r=t.getBrowser(),{type:n}=t.getPlatform();return{type:n,os:e,browser:r}}else return{type:null,os:null,browser:null}}const AY=t=>t!=null;function tg(t){switch(t){case"0x1":case"0x3":case"0x4":case"0x5":return!0;default:return!1}}function f6(t){return t.includes("11?`${t.slice(0,4)}...${t.slice(-6)}`:t}async function mse(t){try{return await navigator.clipboard.writeText(t)}catch(e){console.error("Failed to copy: ",e)}}const PR=t=>typeof t=="number"?`0x${t.toString(16)}`:t;function xY(t){return t.map(({id:e,...r})=>({id:PR(e),...r}))}function gse(t){return`0x${(t*1e9).toString(16)}`}const vse={"0x1":"Ethereum","0x3":"Ropsten","0x4":"Rinkeby","0x5":"Goerli","0x2a":"Kovan","0x38":"Binance","0x89":"Polygon","0xfa":"Fantom","0xa":"Optimism","0x45":"Optimism Kovan","0xa86a":"Avalanche","0xa4ec":"Celo","0x64":"Gnosis","0x63564C40":"Harmony One","0xa4b1":"Arbitrum"},w8={main:"0x1",ropsten:"0x3",rinkeby:"0x4",goerli:"0x5",kovan:"0x2a",xdai:"0x64","bsc-main":"0x38","matic-main":"0x89","fantom-main":"0xfa","matic-mumbai":"0x80001"},EY={"0x1":{icon:x0,color:"#627EEA"},"0x3":{icon:x0,color:"#627EEA"},"0x4":{icon:x0,color:"#627EEA"},"0x5":{icon:x0,color:"#627EEA"},"0x2a":{icon:x0,color:"#627EEA"},"0x38":{icon:cY,color:"#F3BA2F"},"0x89":{icon:lY,color:"#8247E5"},"0xfa":{icon:uY,color:"#1969FF"},"0xa":{icon:b8,color:"#FF0420"},"0x45":{icon:b8,color:"#FF0420"},"0xa86a":{icon:hY,color:"#E84142"},"0xa4ec":{icon:dY,color:"#FBCC5C"},"0x64":{icon:pY,color:"#04795B"},"0x63564C40":{icon:mY,color:"#ffffff"},"0xa4b1":{icon:gY,color:"#33394B"}},yse={icon:a6,color:"#33394B"};function bse(t){return t?EY[t.toLowerCase()]:void 0}function wse(t,e){return!!e.find(({id:r,namespace:n})=>r===t.id&&n===t.namespace)}const Ase={pending:{backgroundColor:"var(--onboard-primary-700, var(--primary-700))",borderColor:"#6370E5",eventIcon:fY},success:{backgroundColor:"#052E17",borderColor:"var(--onboard-success-300, var(--success-300))",eventIcon:vY},error:{backgroundColor:"#FDB1B11A",borderColor:"var(--onboard-danger-300, var(--danger-300))",eventIcon:yY},hint:{backgroundColor:"var(--onboard-gray-500, var(--gray-500))",borderColor:"var(--onboard-gray-500, var(--gray-500))",iconColor:"var(--onboard-gray-100, var(--gray-100))",eventIcon:o6}},MY=t=>new Promise(e=>setTimeout(e,t));function OR(t){try{return localStorage.getItem(t)}catch{return null}}function LR(t,e){try{localStorage.setItem(t,e)}catch{return}}function SY(t){try{localStorage.removeItem(t)}catch{return}}let Kn={svelteInstance:null,appMetadata:null,apiKey:null,device:wY(),initialWalletInit:[],gas:null,containerElements:{accountCenter:null,connectModal:null},transactionPreview:null};function A8(t){Kn={...Kn,...t}}const tl={wallets:[],walletModules:[],chains:[],accountCenter:{enabled:!0,position:"topRight",expanded:!1,minimal:Kn.device.type==="mobile"},notify:{enabled:!0,transactionHandler:()=>{},position:"topRight",replacement:{gasPriceProbability:{speedup:80,cancel:95}}},notifications:[],locale:"",connect:{showSidebar:!0,disableClose:!1}},V0={TERMS_AGREEMENT:"onboard.js:agreement",LAST_CONNECTED_WALLET:"onboard.js:last_connected_wallet"},Li=768,DR="add_chains",FR="reset_store",UR="add_wallet",HR="update_wallet",jR="remove_wallet",zR="update_account",KR="update_account_center",qR="update_connect_modal",GR="set_wallet_modules",VR="set_locale",WR="update_notify",l6="add_notification",ZR="remove_notification",YR="update_balance";function _Y(t,e){const{type:r,payload:n}=e;switch(r){case DR:return{...t,chains:[...t.chains,...n]};case UR:{const s=n,i=t.wallets.find(({label:o})=>o===s.label);return{...t,wallets:[i||n,...t.wallets.filter(({label:o})=>o!==s.label)]}}case HR:{const s=n,{id:i,...o}=s,f=t.wallets.map(u=>u.label===i?{...u,...o}:u);return{...t,wallets:f}}case jR:{const s=n;return{...t,wallets:t.wallets.filter(({label:i})=>i!==s.id)}}case zR:{const s=n,{id:i,address:o,...f}=s,u=t.wallets.map(h=>(h.label===i&&(h.accounts=h.accounts.map(p=>p.address===o?{...p,...f}:p)),h));return{...t,wallets:u}}case YR:return{...t,wallets:n};case qR:{const s=n;return{...t,connect:{...t.connect,...s}}}case KR:{const s=n;return{...t,accountCenter:{...t.accountCenter,...s}}}case WR:{const s=n;return{...t,notify:{...t.notify,...s}}}case l6:{const s=n,i=[...t.notifications],o=i.findIndex(({id:f})=>f===s.id);return o!==-1?i[o]=s:i.unshift(s),{...t,notifications:i}}case ZR:{const s=n;return{...t,notifications:t.notifications.filter(i=>i.id!==s)}}case GR:return{...t,walletModules:n};case VR:return tu.set(n),{...t,locale:n};case FR:return tl;default:throw new Error(`Unknown type: ${r} in appStore reducer`)}}const Ny=new s1(tl),Xg=new Bf;Xg.subscribe(Ny);function Ji(t){const e=Ny.getValue();Xg.next(_Y(e,t))}function RY(t){if(!t)return Xg.asObservable();if(!Object.keys(Ny.getValue()).includes(String(t)))throw new Error(`key: ${t} does not exist on this store`);return Xg.asObservable().pipe(vB(t),WA(t),sd(AY))}function NY(){return Ny.getValue()}const rr={select:RY,get:NY};function et(){}const O1=t=>t;function CY(t,e){for(const r in e)t[r]=e[r];return t}function TY(t){return!!t&&(typeof t=="object"||typeof t=="function")&&typeof t.then=="function"}function QR(t){return t()}function x8(){return Object.create(null)}function Df(t){t.forEach(QR)}function zl(t){return typeof t=="function"}function $n(t,e){return t!=t?e==e:t!==e||t&&typeof t=="object"||typeof t=="function"}let pm;function Jg(t,e){return pm||(pm=document.createElement("a")),pm.href=e,t===pm.href}function kY(t){return Object.keys(t).length===0}function BY(t,...e){if(t==null)return et;const r=t.subscribe(...e);return r.unsubscribe?()=>r.unsubscribe():r}function Pi(t,e,r){t.$$.on_destroy.push(BY(e,r))}function c6(t,e,r,n){if(t){const s=XR(t,e,r,n);return t[0](s)}}function XR(t,e,r,n){return t[1]&&n?CY(r.ctx.slice(),t[1](n(e))):r.ctx}function u6(t,e,r,n){if(t[2]&&n){const s=t[2](n(r));if(e.dirty===void 0)return s;if(typeof s=="object"){const i=[],o=Math.max(e.dirty.length,s.length);for(let f=0;f32){const e=[],r=t.ctx.length/32;for(let n=0;nwindow.performance.now():()=>Date.now(),p6=JR?t=>requestAnimationFrame(t):et;const ph=new Set;function $R(t){ph.forEach(e=>{e.c(t)||(ph.delete(e),e.f())}),ph.size!==0&&p6($R)}function Ty(t){let e;return ph.size===0&&p6($R),{promise:new Promise(r=>{ph.add(e={c:t,f:r})}),abort(){ph.delete(e)}}}function Ce(t,e){t.appendChild(e)}function ei(t,e,r){const n=m6(t);if(!n.getElementById(e)){const s=Xe("style");s.id=e,s.textContent=r,eN(n,s)}}function m6(t){if(!t)return document;const e=t.getRootNode?t.getRootNode():t.ownerDocument;return e&&e.host?e:t.ownerDocument}function IY(t){const e=Xe("style");return eN(m6(t),e),e.sheet}function eN(t,e){return Ce(t.head||t,e),e.sheet}function it(t,e,r){t.insertBefore(e,r||null)}function rt(t){t.parentNode&&t.parentNode.removeChild(t)}function tN(t,e){for(let r=0;rt.removeEventListener(e,r,n)}function OY(t){return function(e){return e.stopPropagation(),t.call(this,e)}}function ve(t,e,r){r==null?t.removeAttribute(e):t.getAttribute(e)!==r&&t.setAttribute(e,r)}function LY(t){return Array.from(t.childNodes)}function $r(t,e){e=""+e,t.wholeText!==e&&(t.data=e)}function Ao(t,e,r,n){r===null?t.style.removeProperty(e):t.style.setProperty(e,r,n?"important":"")}function xse(t,e){for(let r=0;r>>0}function UY(t,e){const r={stylesheet:IY(e),rules:{}};return $g.set(t,r),r}function Sp(t,e,r,n,s,i,o,f=0){const u=16.666/n;let h=`{ -`;for(let R=0;R<=1;R+=u){const N=e+(r-e)*i(R);h+=R*100+`%{${o(N,1-N)}} -`}const p=h+`100% {${o(r,1-r)}} -}`,d=`__svelte_${FY(p)}_${f}`,v=m6(t),{stylesheet:w,rules:A}=$g.get(v)||UY(v,t);A[d]||(A[d]=!0,w.insertRule(`@keyframes ${d} ${p}`,w.cssRules.length));const M=t.style.animation||"";return t.style.animation=`${M?`${M}, `:""}${d} ${n}ms linear ${s}ms 1 both`,ev+=1,d}function _p(t,e){const r=(t.style.animation||"").split(", "),n=r.filter(e?i=>i.indexOf(e)<0:i=>i.indexOf("__svelte")===-1),s=r.length-n.length;s&&(t.style.animation=n.join(", "),ev-=s,ev||HY())}function HY(){p6(()=>{ev||($g.forEach(t=>{const{ownerNode:e}=t.stylesheet;e&&rt(e)}),$g.clear())})}function Ese(t,e,r,n){if(!e)return et;const s=t.getBoundingClientRect();if(e.left===s.left&&e.right===s.right&&e.top===s.top&&e.bottom===s.bottom)return et;const{delay:i=0,duration:o=300,easing:f=O1,start:u=Cy()+i,end:h=u+o,tick:p=et,css:d}=r(t,{from:e,to:s},n);let v=!0,w=!1,A;function M(){d&&(A=Sp(t,0,1,o,i,f,d)),i||(w=!0)}function R(){d&&_p(t,A),v=!1}return Ty(N=>{if(!w&&N>=u&&(w=!0),w&&N>=h&&(p(1,0),R()),!v)return!1;if(w){const C=N-u,B=0+1*f(C/o);p(B,1-B)}return!0}),M(),p(0,1),R}function Mse(t){const e=getComputedStyle(t);if(e.position!=="absolute"&&e.position!=="fixed"){const{width:r,height:n}=e,s=t.getBoundingClientRect();t.style.position="absolute",t.style.width=r,t.style.height=n,jY(t,s)}}function jY(t,e){const r=t.getBoundingClientRect();if(e.left!==r.left||e.top!==r.top){const n=getComputedStyle(t),s=n.transform==="none"?"":n.transform;t.style.transform=`${s} translate(${e.left-r.left}px, ${e.top-r.top}px)`}}let Rp;function yf(t){Rp=t}function g6(){if(!Rp)throw new Error("Function called outside component initialization");return Rp}function zY(t){g6().$$.on_mount.push(t)}function rN(t){g6().$$.on_destroy.push(t)}function KY(t,e){const r=t.$$.callbacks[e.type];r&&r.slice().forEach(n=>n.call(this,e))}const Fu=[],tv=[],rg=[],nA=[],qY=Promise.resolve();let iA=!1;function GY(){iA||(iA=!0,qY.then(v6))}function Xi(t){rg.push(t)}function VY(t){nA.push(t)}const D2=new Set;let Nu=0;function v6(){if(Nu!==0)return;const t=Rp;do{try{for(;Nu{E0=null})),E0}function Lc(t,e,r){t.dispatchEvent(DY(`${e?"intro":"outro"}${r}`))}const ng=new Set;let Ro;function cn(){Ro={r:0,c:[],p:Ro}}function un(){Ro.r||Df(Ro.c),Ro=Ro.p}function Je(t,e){t&&t.i&&(ng.delete(t),t.i(e))}function st(t,e,r,n){if(t&&t.o){if(ng.has(t))return;ng.add(t),Ro.c.push(()=>{ng.delete(t),n&&(r&&t.d(1),n())}),t.o(e)}else n&&n()}const b6={duration:0};function w6(t,e,r){const n={direction:"in"};let s=e(t,r,n),i=!1,o,f,u=0;function h(){o&&_p(t,o)}function p(){const{delay:v=0,duration:w=300,easing:A=O1,tick:M=et,css:R}=s||b6;R&&(o=Sp(t,0,1,w,v,A,R,u++)),M(0,1);const N=Cy()+v,C=N+w;f&&f.abort(),i=!0,Xi(()=>Lc(t,!0,"start")),f=Ty(B=>{if(i){if(B>=C)return M(1,0),Lc(t,!0,"end"),h(),i=!1;if(B>=N){const O=A((B-N)/w);M(O,1-O)}}return i})}let d=!1;return{start(){d||(d=!0,_p(t),zl(s)?(s=s(n),y6().then(p)):p())},invalidate(){d=!1},end(){i&&(h(),i=!1)}}}function Sse(t,e,r){const n={direction:"out"};let s=e(t,r,n),i=!0,o;const f=Ro;f.r+=1;function u(){const{delay:h=0,duration:p=300,easing:d=O1,tick:v=et,css:w}=s||b6;w&&(o=Sp(t,1,0,p,h,d,w));const A=Cy()+h,M=A+p;Xi(()=>Lc(t,!1,"start")),Ty(R=>{if(i){if(R>=M)return v(0,1),Lc(t,!1,"end"),--f.r||Df(f.c),!1;if(R>=A){const N=d((R-A)/p);v(1-N,N)}}return i})}return zl(s)?y6().then(()=>{s=s(n),u()}):u(),{end(h){h&&s.tick&&s.tick(1,0),i&&(o&&_p(t,o),i=!1)}}}function M8(t,e,r,n){const s={direction:"both"};let i=e(t,r,s),o=n?0:1,f=null,u=null,h=null;function p(){h&&_p(t,h)}function d(w,A){const M=w.b-o;return A*=Math.abs(M),{a:o,b:w.b,d:M,duration:A,start:w.start,end:w.start+A,group:w.group}}function v(w){const{delay:A=0,duration:M=300,easing:R=O1,tick:N=et,css:C}=i||b6,B={start:Cy()+A,b:w};w||(B.group=Ro,Ro.r+=1),f||u?u=B:(C&&(p(),h=Sp(t,o,w,M,A,R,C)),w&&N(0,1),f=d(B,M),Xi(()=>Lc(t,w,"start")),Ty(O=>{if(u&&O>u.start&&(f=d(u,M),u=null,Lc(t,f.b,"start"),C&&(p(),h=Sp(t,o,f.b,f.duration,0,R,i.css))),f){if(O>=f.end)N(o=f.b,1-o),Lc(t,f.b,"end"),u||(f.b?p():--f.group.r||Df(f.group.c)),f=null;else if(O>=f.start){const D=O-f.start;o=f.a+f.d*R(D/f.duration),N(o,1-o)}}return!!(f||u)}))}return{run(w){zl(i)?y6().then(()=>{i=i(s),v(w)}):v(w)},end(){p(),f=u=null}}}function Vc(t,e){const r=e.token={};function n(s,i,o,f){if(e.token!==r)return;e.resolved=f;let u=e.ctx;o!==void 0&&(u=u.slice(),u[o]=f);const h=s&&(e.current=s)(u);let p=!1;e.block&&(e.blocks?e.blocks.forEach((d,v)=>{v!==i&&d&&(cn(),st(d,1,1,()=>{e.blocks[v]===d&&(e.blocks[v]=null)}),un())}):e.block.d(1),h.c(),Je(h,1),h.m(e.mount(),e.anchor),p=!0),e.block=h,e.blocks&&(e.blocks[i]=h),p&&v6()}if(TY(t)){const s=g6();if(t.then(i=>{yf(s),n(e.then,1,e.value,i),yf(null)},i=>{if(yf(s),n(e.catch,2,e.error,i),yf(null),!e.hasCatch)throw i}),e.current!==e.pending)return n(e.pending,0),!0}else{if(e.current!==e.then)return n(e.then,1,e.value,t),!0;e.resolved=t}}function Gd(t,e,r){const n=e.slice(),{resolved:s}=t;t.current===t.then&&(n[t.value]=s),t.current===t.catch&&(n[t.error]=s),t.block.p(n,r)}function _se(t,e){t.d(1),e.delete(t.key)}function ZY(t,e){st(t,1,1,()=>{e.delete(t.key)})}function Rse(t,e){t.f(),ZY(t,e)}function Nse(t,e,r,n,s,i,o,f,u,h,p,d){let v=t.length,w=i.length,A=v;const M={};for(;A--;)M[t[A].key]=A;const R=[],N=new Map,C=new Map;for(A=w;A--;){const q=d(s,i,A),W=r(q);let k=o.get(W);k?n&&k.p(q,e):(k=h(W,q),k.c()),N.set(W,R[A]=k),W in M&&C.set(W,Math.abs(A-M[W]))}const B=new Set,O=new Set;function D(q){Je(q,1),q.m(f,p),o.set(q.key,q),p=q.first,w--}for(;v&&w;){const q=R[w-1],W=t[v-1],k=q.key,I=W.key;q===W?(p=q.first,v--,w--):N.has(I)?!o.has(k)||B.has(k)?D(q):O.has(I)?v--:C.get(k)>C.get(I)?(O.add(k),D(q)):(B.add(I),v--):(u(W,o),v--)}for(;v--;){const q=t[v];N.has(q.key)||u(q,o)}for(;w;)D(R[w-1]);return R}function YY(t,e,r){const n=t.$$.props[e];n!==void 0&&(t.$$.bound[n]=r,r(t.$$.ctx[n]))}function lr(t){t&&t.c()}function ir(t,e,r,n){const{fragment:s,after_update:i}=t.$$;s&&s.m(e,r),n||Xi(()=>{const o=t.$$.on_mount.map(QR).filter(zl);t.$$.on_destroy?t.$$.on_destroy.push(...o):Df(o),t.$$.on_mount=[]}),i.forEach(Xi)}function sr(t,e){const r=t.$$;r.fragment!==null&&(Df(r.on_destroy),r.fragment&&r.fragment.d(e),r.on_destroy=r.fragment=null,r.ctx=[])}function QY(t,e){t.$$.dirty[0]===-1&&(Fu.push(t),GY(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<{const A=w.length?w[0]:v;return h.ctx&&s(h.ctx[d],h.ctx[d]=A)&&(!h.skip_bound&&h.bound[d]&&h.bound[d](A),p&&QY(t,d)),v}):[],h.update(),p=!0,Df(h.before_update),h.fragment=n?n(h.ctx):!1,e.target){if(e.hydrate){const d=LY(e.target);h.fragment&&h.fragment.l(d),d.forEach(rt)}else h.fragment&&h.fragment.c();e.intro&&Je(t.$$.fragment),ir(t,e.target,e.anchor,e.customElement),v6()}yf(u)}class ri{$destroy(){sr(this,1),this.$destroy=et}$on(e,r){if(!zl(r))return et;const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(r),()=>{const s=n.indexOf(r);s!==-1&&n.splice(s,1)}}$set(e){this.$$set&&!kY(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const A6=new Bf,x6=new Bf,Xs=new s1({inProgress:!1,actionRequired:""}),Md=new s1(null),ky=rr.select("wallets").pipe(sw(1));A6.pipe(V9(ky),WA("1")).subscribe(t=>{t.forEach(({label:e})=>{x6.next(e)}),GQ()});const W0=new s1([]);function XY(t){const e=W0.getValue(),r=e.findIndex(({hash:n})=>n===t.hash);if(r!==-1){const n=e.map((s,i)=>i===r?t:s);W0.next(n)}else W0.next([...e,t])}function Cse(t){const e=W0.getValue();W0.next(e.filter(r=>r.hash!==t))}const S8=lB(()=>{const t=new Bf;return rN(()=>{t.next()}),t.asObservable().pipe(VA(1))}),Qu={default:{"--w3o-background-color":"unset","--w3o-foreground-color":"unset","--w3o-text-color":"unset","--w3o-border-color":"unset","--w3o-action-color":"unset","--w3o-border-radius":"unset"},light:{"--w3o-background-color":"#ffffff","--w3o-foreground-color":"#EFF1FC","--w3o-text-color":"#1a1d26","--w3o-border-color":"#d0d4f7","--w3o-action-color":"#6370E5","--w3o-border-radius":"16px"},dark:{"--w3o-background-color":"#1A1D26","--w3o-foreground-color":"#242835","--w3o-text-color":"#EFF1FC","--w3o-border-color":"#33394B","--w3o-action-color":"#929bed","--w3o-border-radius":"16px"}},JY=t=>typeof t=="string"&&t==="system"?eQ():$Y(t),$Y=t=>{if(typeof t=="string"&&t in Qu)return Qu[t];if(typeof t=="object")return t},L0=t=>{Object.keys(t).forEach(e=>{document.documentElement.style.setProperty(e,t[e])})},eQ=()=>{const t=window.matchMedia("(prefers-color-scheme: dark)");t.matches?L0(Qu.dark):L0(Qu.light),nw(t,"change").pipe(rp(A6)).subscribe(e=>{e.matches?L0(Qu.dark):L0(Qu.light)})},_8=de.object().unknown(),tQ=de.object({namespace:DA.required(),id:LA.required()}),rQ=de.any().allow(de.object({name:de.string().required(),avatar:de.string(),contentHash:de.any().allow(de.string(),null),getText:de.function().arity(1).required()}),null),nQ=de.any().allow(de.object({name:de.string().required()}),null),iQ=de.any().allow(de.object({eth:de.number()}).unknown(),null),sQ=de.object({address:de.string().required(),ens:rQ,uns:nQ,balance:iQ}),aQ=de.array().items(bT).unique((t,e)=>t.id===e.id).error(t=>t[0].code==="array.unique"?new Error(`There is a duplicate Chain ID in your Onboard Chains array: ${t}`):new Error(`${t}`)),oQ=de.array().items(sQ),nN=de.object({label:de.string(),icon:de.string(),provider:_8,instance:_8,accounts:oQ,chains:de.array().items(tQ)}).required().error(new Error("wallet must be defined")),fQ=de.array().items(nN),lQ=de.object({name:de.string().required(),url:de.string().uri().required()}),cQ=de.object({version:de.string().required(),termsUrl:de.string().uri(),privacyUrl:de.string().uri()}),uQ=de.object({name:de.string().required(),description:de.string().required(),icon:de.string(),logo:de.string(),gettingStartedGuide:de.string(),email:de.string(),appUrl:de.string(),explore:de.string(),recommendedInjectedWallets:de.array().items(lQ),agreement:cQ});de.object({label:de.string().required(),getInfo:de.function().arity(1).required(),getInterface:de.function().arity(1).required()});const iN=de.array().items(de.function()).required(),hQ=de.string(),E6=de.string().valid("topRight","bottomRight","bottomLeft","topLeft"),R8=[70,80,90,95,99],rv=de.object({transactionHandler:de.function(),enabled:de.boolean(),position:E6,replacement:de.object({gasPriceProbability:de.object({speedup:de.number().valid(...R8),cancel:de.number().valid(...R8)})})}),sN=de.object({desktop:rv,mobile:rv}),N8=de.object({enabled:de.boolean(),position:E6,minimal:de.boolean(),containerElement:de.string()}),dQ=de.object({enabled:de.boolean(),position:E6,expanded:de.boolean(),minimal:de.boolean(),containerElement:de.string()}),aN=de.object({showSidebar:de.boolean(),disableClose:de.boolean(),autoConnectLastWallet:de.boolean()}),pQ=de.object({accountCenter:de.string(),connectModal:de.string()}),mQ=de.object({"--w3o-background-color":de.string(),"--w3o-foreground-color":de.string(),"--w3o-text-color":de.string(),"--w3o-border-color":de.string(),"--w3o-action-color":de.string(),"--w3o-border-radius":de.string()}),gQ=de.string().valid("default","dark","light","system"),oN=de.alternatives().try(mQ,gQ),vQ=de.object({wallets:iN,chains:aQ.required(),appMetadata:uQ,i18n:de.object().unknown(),apiKey:de.string(),accountCenter:de.object({desktop:N8,mobile:N8}),notify:[sN,rv],gas:de.object({get:de.function().required(),stream:de.function().required()}),connect:aN,containerElements:pQ,transactionPreview:de.object({patchProvider:de.function().required(),init:de.function().required(),previewTransaction:de.function()}),theme:oN}),yQ=de.object({autoSelect:de.alternatives().try(de.object({label:de.string().required(),disableModals:de.boolean()}),de.string()).required()}),bQ=de.object({label:de.string().required()}).required(),wQ=de.object({chainId:LA.required(),chainNamespace:DA,wallet:de.string()}),fN=de.object({key:de.string().required(),type:de.string().allow("pending","error","success","hint"),eventCode:de.string(),message:de.string().required(),id:de.string().required(),autoDismiss:de.number(),onClick:de.function(),link:de.string()}),AQ=de.object({sendTransaction:de.function(),estimateGas:de.function(),gasPrice:de.function(),balance:de.alternatives(de.string(),de.number()),txDetails:de.object({value:de.alternatives(de.string(),de.number()),to:de.string(),from:de.string()}),txApproveReminderTimeout:de.number()}),xQ=de.object({key:de.string(),type:de.string().allow("pending","error","success","hint"),eventCode:de.string(),message:de.string(),id:de.string(),autoDismiss:de.number(),onClick:de.function(),link:de.string()}),EQ=de.object({id:de.string().required(),key:de.string().required(),type:de.string().allow("pending","error","success","hint").required(),eventCode:de.string().required(),message:de.string().required(),autoDismiss:de.number().required(),network:de.string().required(),startTime:de.number(),onClick:de.function(),link:de.string()}),MQ=de.any().allow(fN,de.boolean().allow(!1));function M6(t){return qn(nN,t)}function SQ(t){return qn(vQ,t)}function _Q(t){return qn(yQ,t)}function RQ(t){return qn(bQ,t)}function lN(t,e){return qn(de.string().required().label(e||"value"),t)}function NQ(t){return qn(wQ,t)}function CQ(t){return qn(dQ,t)}function TQ(t){return qn(aN,t)}function kQ(t){return qn(iN,t)}function BQ(t){return qn(hQ,t)}function cN(t){return qn(rv,t)}function IQ(t){return qn(sN,t)}function PQ(t){return qn(MQ,t)}function OQ(t){return qn(EQ,t)}function LQ(t){return qn(AQ,t)}function DQ(t){return qn(fN,t)}function C8(t){return qn(xQ,t)}function FQ(t){return qn(fQ,t)}function UQ(t){return qn(oN,t)}function HQ(t){const e={type:DR,payload:t.map(({namespace:r="evm",id:n,rpcUrl:s,...i})=>({...i,namespace:r,id:n.toLowerCase(),rpcUrl:s.trim()}))};Ji(e)}function sA(t){const e=M6(t);if(e)throw console.error(e),e;Ji({type:UR,payload:t})}function ig(t,e){const r=M6(e);if(r)throw console.error(r),r;const n={type:HR,payload:{id:t,...e}};Ji(n)}function jQ(t){const e=lN(t,"wallet id");if(e)throw e;Ji({type:jR,payload:{id:t}})}function zQ(t,e){const r=M6(t)||e&&lN(e,"address");if(r)throw r;if(e){const n=t.accounts.find(s=>s.address===e);n&&(t.accounts=[n,...t.accounts.filter(({address:s})=>s!==n.address)])}sA(t)}function sg(t,e,r){const n={type:zR,payload:{id:t,address:e,...r}};Ji(n)}function uN(t){const e=CQ(t);if(e)throw e;Ji({type:KR,payload:t})}function KQ(t){const e=TQ(t);if(e)throw e;Ji({type:qR,payload:t})}function ag(t){const e=cN(t);if(e)throw e;Ji({type:WR,payload:t})}function Uu(t){const e=OQ(t);if(e)throw e;Ji({type:l6,payload:t})}function F2(t){const e=DQ(t);if(e)throw e;Ji({type:l6,payload:t})}function qQ(t){const e=C8(t);if(e)throw e;const r=`customNotification-${w7()}`,n={...t,id:r,key:r};F2(n);const s=()=>hN(n.id),i=o=>{const f=C8(t);if(f)throw f;const u={...o,id:n.id,key:n.key};return F2(u),{dismiss:s,update:i}};return F2(n),{dismiss:s,update:i}}function hN(t){if(typeof t!="string")throw new Error("Notification id must be of type string");Ji({type:ZR,payload:t})}function GQ(){Ji({type:FR})}function dN(t){const e=kQ(t);if(e)throw e;const r=ZQ(t),n=YQ(r);Ji({type:GR,payload:n})}function VQ(t){const e=BQ(t);if(e)throw e;Ji({type:VR,payload:t})}function WQ(t){const e=FQ(t);if(e)throw e;Ji({type:YR,payload:t})}function ZQ(t){const{device:e}=Kn;return t.reduce((r,n)=>{const s=n({device:e});return s&&r.push(...Array.isArray(s)?s:[s]),r},[])}function YQ(t){return t.filter((e,r)=>e&&t.findIndex(n=>n&&n.label===e.label)===r)}function pN(t){const e=UQ(t);if(e)throw e;const r=JY(t);r&&L0(r)}async function QQ(t){if(t){const s=_Q(t);if(s)throw s}const{chains:e}=rr.get();if(!e.length)throw new Error("At least one chain must be set before attempting to connect a wallet");const{autoSelect:r}=t||{autoSelect:{label:"",disableModals:!1}};r&&(typeof r=="string"||r.label)&&await MY(50),rr.get().walletModules.length||dN(Kn.initialWalletInit),Xs.next({autoSelect:typeof r=="string"?{label:r,disableModals:!1}:r,inProgress:!0});const n=Xs.pipe(sd(({inProgress:s,actionRequired:i})=>s===!1&&!i),V9(ky),WA(1));return kv(n)}var XQ={selectingWallet:{header:"Available Wallets",sidebar:{heading:"",subheading:"Connect your wallet",paragraph:"Connecting your wallet is like “logging in” to Web3. Select your wallet from the options to get started."},recommendedWalletsPart1:"{app} only supports",recommendedWalletsPart2:"on this platform. Please use or install one of the supported wallets to continue",installWallet:"You do not have any wallets installed that {app} supports, please use a supported wallet",agreement:{agree:"I agree to the",terms:"Terms & Conditions",and:"and",privacy:"Privacy Policy"}},connectingWallet:{header:"{connectionRejected, select, false {Connecting to {wallet}...} other {Connection Rejected}}",sidebar:{subheading:"Approve Connection",paragraph:"Please approve the connection in your wallet and authorize access to continue."},mainText:"Connecting...",paragraph:"Make sure to select all accounts that you want to grant access to.",previousConnection:"{wallet} already has a pending connection request, please open the {wallet} app to login and connect.",rejectedText:"Connection Rejected!",rejectedCTA:"Click here to try again",primaryButton:"Back to wallets"},connectedWallet:{header:"Connection Successful",sidebar:{subheading:"Connection Successful!",paragraph:"Your wallet is now connected to {app}"},mainText:"Connected"}},JQ={actionRequired:{heading:"Action required in {wallet}",paragraph:"Please switch the active account in your wallet.",linkText:"Learn more.",buttonText:"Okay"},switchChain:{heading:"Switch Chain",paragraph1:"{app} requires that you switch your wallet to the {nextNetworkName} network to continue.",paragraph2:"*Some wallets may not support changing networks. If you can not change networks in your wallet you may consider switching to a different wallet."},confirmDisconnectAll:{heading:"Disconnect all Wallets",description:"Are you sure that you would like to disconnect all your wallets?",confirm:"Confirm",cancel:"Cancel"}},$Q={connectAnotherWallet:"Connect another Wallet",disconnectAllWallets:"Disconnect all Wallets",currentNetwork:"Current Network",appInfo:"App Info",learnMore:"Learn More",gettingStartedGuide:"Getting Started Guide",smartContracts:"Smart Contract(s)",explore:"Explore",backToApp:"Back to dapp",poweredBy:"powered by",addAccount:"Add Account",setPrimaryAccount:"Set Primary Account",disconnectWallet:"Disconnect Wallet",copyAddress:"Copy Wallet address"},eX={transaction:{txRequest:"Your transaction is waiting for you to confirm",nsfFail:"You have insufficient funds for this transaction",txUnderpriced:"The gas price for your transaction is too low, try a higher gas price",txRepeat:"This could be a repeat transaction",txAwaitingApproval:"You have a previous transaction waiting for you to confirm",txConfirmReminder:"Please confirm your transaction to continue",txSendFail:"You rejected the transaction",txSent:"Your transaction has been sent to the network",txStallPending:"Your transaction has stalled before it was sent, please try again",txStuck:"Your transaction is stuck due to a nonce gap",txPool:"Your transaction has started",txStallConfirmed:"Your transaction has stalled and hasn't been confirmed",txSpeedUp:"Your transaction has been sped up",txCancel:"Your transaction is being canceled",txFailed:"Your transaction has failed",txConfirmed:"Your transaction has succeeded",txError:"Oops something went wrong, please try again",txReplaceError:"There was an error replacing your transaction, please try again"},watched:{txPool:"Your account is {verb} {formattedValue} {asset} {preposition} {counterpartyShortened}",txSpeedUp:"Transaction for {formattedValue} {asset} {preposition} {counterpartyShortened} has been sped up",txCancel:"Transaction for {formattedValue} {asset} {preposition} {counterpartyShortened} has been canceled",txConfirmed:"Your account successfully {verb} {formattedValue} {asset} {preposition} {counterpartyShortened}",txFailed:"Your account failed to {verb} {formattedValue} {asset} {preposition} {counterpartyShortened}",txStuck:"Your transaction is stuck due to a nonce gap"},time:{minutes:"min",seconds:"sec"}},vr={connect:XQ,modals:JQ,accountCenter:$Q,notify:eX};const U2={};function tX(t){return t?(U2[t.rpcUrl]||(U2[t.rpcUrl]=new OF(t.providerConnectionInfo&&t.providerConnectionInfo.url?t.providerConnectionInfo:t.rpcUrl)),U2[t.rpcUrl]):null}function rX(t){const e={method:"eth_requestAccounts"};return t.request(e)}function nX(t){const e={method:"eth_selectAccounts"};return t.request(e)}function iX(t){return t.request({method:"eth_chainId"})}function mN(t){const{provider:e,disconnected$:r}=t;return GA(i=>{e.on("accountsChanged",i)},i=>{e.removeListener("accountsChanged",i)}).pipe(rp(r))}function sX(t){const{provider:e,disconnected$:r}=t;return GA(i=>{e.on("chainChanged",i)},i=>{e.removeListener("chainChanged",i)}).pipe(rp(r))}function aX(t,e){const r=x6.pipe(sd(i=>i===e),VA(1)),n=mN({provider:t,disconnected$:r}).pipe(iw());n.subscribe(async([i])=>{try{await lX(e)}catch(p){console.warn("Web3Onboard: Error whilst trying to sync connected accounts:",p)}if(!i){bN({label:e});return}const{wallets:o}=rr.get(),{accounts:f}=o.find(p=>p.label===e),[[u],h]=uP(f,p=>p.address===i);if(ig(e,{accounts:[u||{address:i,ens:null,uns:null,balance:null},...h]}),rr.get().notify.enabled&&!u){const p=await iv();if(p){const d=rr.get().wallets.find(v=>v.label===e);try{p.subscribe({id:i,chainId:d.chains[0].id,type:"account"})}catch{}}}}),n.pipe(e4(async([i])=>{if(!i)return;const{wallets:o,chains:f}=rr.get(),{chains:u,accounts:h}=o.find(R=>R.label===e),[p]=u,d=f.find(({namespace:R,id:N})=>R==="evm"&&N===p.id),v=nv(i,d),w=h.find(R=>R.address===i),A=w&&w.ens?Promise.resolve(w.ens):tg(p.id)?aA(i,d):Promise.resolve(null),M=w&&w.uns?Promise.resolve(w.uns):oA(i,d);return Promise.all([Promise.resolve(i),v,A,M])})).subscribe(i=>{if(!i)return;const[o,f,u,h]=i;sg(e,o,{balance:f,ens:u,uns:h})});const s=sX({provider:t,disconnected$:r}).pipe(iw());s.subscribe(async i=>{const{wallets:o}=rr.get(),{chains:f,accounts:u}=o.find(d=>d.label===e),[h]=f;if(i===h.id)return;if(rr.get().notify.enabled){const d=await iv();if(d){const v=rr.get().wallets.find(w=>w.label===e);v.accounts.forEach(({address:w})=>{d.unsubscribe({id:w,chainId:v.chains[0].id,timeout:6e4})}),v.accounts.forEach(({address:w})=>{try{d.subscribe({id:w,chainId:i,type:"account"})}catch{}})}}const p=u.map(({address:d})=>({address:d,ens:null,uns:null,balance:null}));ig(e,{chains:[{namespace:"evm",id:i}],accounts:p})}),s.pipe(e4(async i=>{const{wallets:o,chains:f}=rr.get(),{accounts:u}=o.find(p=>p.label===e),h=f.find(({namespace:p,id:d})=>p==="evm"&&d===i);return Promise.all(u.map(async({address:p})=>{const d=nv(p,h),v=tg(i)?aA(p,h):Promise.resolve(null),w=tg(i)?oA(p,h):Promise.resolve(null),[A,M,R]=await Promise.all([d,v,w]);return{address:p,balance:A,ens:M,uns:R}}))})).subscribe(i=>{i&&ig(e,{accounts:i})}),r.subscribe(()=>{t.disconnect&&t.disconnect()})}async function aA(t,e){if(!e)return null;const r=tX(e);try{const n=await r.lookupAddress(t);let s=null;if(n){const i=await r.getResolver(n);if(i){const[o,f]=await Promise.all([i.getContentHash(),i.getAvatar()]),u=i.getText.bind(i);s={name:n,avatar:f,contentHash:o,getText:u}}}return s}catch(n){return console.error(n),null}}async function oA(t,e){if(!XF(t)||!e)return null;const r=new BM.Resolution;try{const n=await r.reverse(t);let s=null;return n&&(s={name:n}),s}catch(n){return console.error(n),null}}async function nv(t,e){if(!e)return null;const{wallets:r}=rr.get();try{const i=await r.find(o=>!!o.provider).provider.request({method:"eth_getBalance",params:[t,"latest"]});return i?{[e.token||"eth"]:gT(i)}:null}catch(n){return console.error(n),null}}function gN(t,e){return t.request({method:"wallet_switchEthereumChain",params:[{chainId:e}]})}function oX(t,e){return t.request({method:"wallet_addEthereumChain",params:[{chainId:e.id,chainName:e.label,nativeCurrency:{name:e.label,symbol:e.token,decimals:18},rpcUrls:[e.publicRpcUrl||e.rpcUrl],blockExplorerUrls:e.blockExplorerUrl?[e.blockExplorerUrl]:void 0}]})}async function fX(t){try{const e=await t.request({method:"wallet_getPermissions"});return Array.isArray(e)?e:[]}catch{return[]}}async function lX(t){const e=rr.get().wallets.find(s=>s.label===t),n=(await fX(e.provider)).find(({parentCapability:s})=>s==="eth_accounts");if(n){const{value:s}=n.caveats.find(({type:i})=>i==="restrictReturnedAccounts")||{value:null};if(s){const i=e.accounts.filter(({address:o})=>s.includes(o));ig(e.label,{...e,accounts:i})}}}async function vN(t){const{wallets:e,chains:r}=rr.get(),n=await Promise.all(e.map(async s=>{const i=r.find(({id:f})=>f===s.chains[0].id),o=await Promise.all(s.accounts.map(async f=>{if(!t||t.some(u=>u.toLowerCase()===f.address.toLowerCase())){const u=await nv(f.address,i);return{...f,balance:u}}return f}));return{...s,accounts:o}}));WQ(n)}function cX(t){const e=rr.get().notify.transactionHandler(t),r=PQ(e);if(r)throw r;t.eventCode==="txConfirmed"&&vN([t.watchedAddress,t.counterparty]);const n=uX(t,e);Uu(n),XY(t)}function uX(t,e){const{id:r,hash:n,startTime:s,eventCode:i,direction:o,counterparty:f,value:u,asset:h,network:p}=t,d=yN(i),v=`${r||n}-${typeof e=="object"&&e.eventCode||i}`,w=f&&f.substring(0,4)+"..."+f.substring(f.length-4),A=new Hc(u||0).div(new Hc("1000000000000000000")).toString(10),M=f&&u?{messageId:`notify.watched['${i}']`,values:{verb:i==="txConfirmed"?o==="incoming"?"received":"sent":o==="incoming"?"receiving":"sending",formattedValue:A,preposition:o==="incoming"?"from":"to",counterpartyShortened:w,asset:h}}:{messageId:`notify.transaction['${i}']`,values:{formattedValue:A,asset:h}},R=HB(Pf),O=vr.notify[f?"watched":"transaction"][i],D=R(M.messageId,{values:M.values,default:O});let q={id:r||n,type:d,key:v,network:p,startTime:s||Date.now(),eventCode:i,message:D,autoDismiss:hX(typeof e=="object"&&e.type||d)};return typeof e=="object"&&(q={...q,...e}),q}function yN(t){switch(t){case"txSent":case"txPool":return"pending";case"txSpeedUp":case"txCancel":case"txRequest":case"txRepeat":case"txAwaitingApproval":case"txConfirmReminder":case"txStuck":return"hint";case"txError":case"txSendFail":case"txFailed":case"txDropped":case"nsfFail":case"txUnderpriced":return"error";case"txConfirmed":return"success";default:return"hint"}}function hX(t){switch(t){case"success":case"hint":return 4e3;default:return 0}}let mm,gm;async function iv(){const{apiKey:t}=Kn;if(!t)return null;if(!mm){const{default:e}=await vt(()=>import("./index-fff385ce.js"),["assets/index-fff385ce.js","assets/tslib.es6-c2094241.js"]);mm=e.multichain({apiKey:Kn.apiKey}),mm.transactions$.subscribe(cX)}return mm}async function dX(){const{apiKey:t}=Kn;if(!t)return null;if(!gm){const{default:e}=await vt(()=>import("./index-fff385ce.js"),["assets/index-fff385ce.js","assets/tslib.es6-c2094241.js"]);return gm=new e({dappId:Kn.apiKey,networkId:1}),gm}return gm}async function bN(t){const e=RQ(t);if(e)throw e;const{label:r}=t;if(rr.get().notify.enabled){const n=await iv();if(n){const s=rr.get().wallets.find(i=>i.label===r);s.accounts.forEach(({address:i})=>{n.unsubscribe({id:i,chainId:s.chains[0].id,timeout:6e4})})}}return x6.next(r),jQ(r),rr.get().wallets}async function pX(t){const e=NQ(t);if(e)throw e;const{wallets:r,chains:n}=rr.get(),{chainId:s,chainNamespace:i="evm",wallet:o}=t,f=PR(s),u=n.find(({namespace:d,id:v})=>d===i&&v===f);if(!u)throw new Error(`Chain with chainId: ${s} and chainNamespace: ${i} has not been set and must be added when Onboard is initialized.`);const h=o?r.find(({label:d})=>d===o):r[0];if(!h)throw new Error(o?`Wallet with label ${o} is not connected`:"A wallet must be connected before a chain can be set");const[p]=h.chains;if(p.namespace===i&&p.id===f)return!0;try{return await gN(h.provider,f),!0}catch(d){const{code:v}=d,w=Md.pipe(sd(A=>A===null),a1(()=>!1));if(v===Mo.CHAIN_NOT_ADDED||v===Mo.UNRECOGNIZED_CHAIN_ID)return mX(h,u,w,f);if(v===Mo.UNSUPPORTED_METHOD)return Md.next({chain:u}),kv(w)}return!1}const mX=async(t,e,r,n)=>{try{return await oX(t.provider,e),await gN(t.provider,n),!0}catch(s){const{code:i}=s;return i===Mo.ACCOUNT_ACCESS_REJECTED?!1:(Md.next({chain:e}),kv(r))}};function gX(t){if(t){const{en:e}=t,r=iY(vr,e||{});Bm("en",r),Object.keys(t).filter(s=>s!=="en").forEach(s=>{const i=t[s];i&&Bm(s,i)})}else Bm("en",vr);QI({fallbackLocale:"en",initialLocale:XI()})}var vX=` - - - -`;function yX(t){ei(t,"svelte-1ubf722",".close-button.svelte-1ubf722.svelte-1ubf722{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;height:2rem;width:2rem;border-radius:2rem;cursor:pointer;color:var(--onboard-close-button-color, inherit)}.close-button.svelte-1ubf722.svelte-1ubf722:hover::before{opacity:0.2}.close-button.svelte-1ubf722:hover .svg-box.svelte-1ubf722{opacity:1}.close-button.svelte-1ubf722.svelte-1ubf722::before{content:'';position:absolute;height:inherit;width:inherit;opacity:0.1;background:currentColor;transition:300ms ease-in-out opacity}.svg-box.svelte-1ubf722.svelte-1ubf722{position:absolute;height:1.5rem;width:1.5rem;opacity:0.6;transition:300ms ease-in-out opacity}")}function bX(t){let e,r;return{c(){e=Xe("div"),r=Xe("div"),ve(r,"class","svg-box svelte-1ubf722"),ve(e,"class","close-button svelte-1ubf722")},m(n,s){it(n,e,s),Ce(e,r),r.innerHTML=vX},p:et,i:et,o:et,d(n){n&&rt(e)}}}class wN extends ri{constructor(e){super(),ti(this,e,null,bX,$n,{},yX)}}function wX(t){const e=t-1;return e*e*e+1}function Tse(t){return Math.pow(t-1,3)*(1-t)+1}function Np(t,{delay:e=0,duration:r=400,easing:n=O1}={}){const s=+getComputedStyle(t).opacity;return{delay:e,duration:r,easing:n,css:i=>`opacity: ${i*s}`}}function kse(t,{delay:e=0,duration:r=400,easing:n=wX,x:s=0,y:i=0,opacity:o=0}={}){const f=getComputedStyle(t),u=+f.opacity,h=f.transform==="none"?"":f.transform,p=u*(1-o);return{delay:e,duration:r,easing:n,css:(d,v)=>` - transform: ${h} translate(${(1-d)*s}px, ${(1-d)*i}px); - opacity: ${u-p*v}`}}function AX(t){ei(t,"svelte-12kbyxa",`section.svelte-12kbyxa{top:0;left:0;pointer-events:none;z-index:var(--onboard-modal-z-index, var(--modal-z-index))}.background.svelte-12kbyxa{background:var(--onboard-modal-backdrop, var(--modal-backdrop));pointer-events:all}.full-screen-background.svelte-12kbyxa{width:100vw;height:100vh}.max-height.svelte-12kbyxa{max-height:calc(100vh - 2rem)}.modal-position.svelte-12kbyxa{top:var(--onboard-modal-top, var(--modal-top));bottom:var(--onboard-modal-bottom, var(--modal-bottom));left:var(--onboard-modal-left, var(--modal-left));right:var(--onboard-modal-right, var(--modal-right))}.modal-overflow.svelte-12kbyxa{overflow:hidden}.modal-styling.svelte-12kbyxa{--border-radius:var(--onboard-modal-border-radius, - var(--w3o-border-radius, 1rem) - );border-radius:var(--border-radius) var(--border-radius) 0 0;box-shadow:var(--onboard-modal-box-shadow, var(--box-shadow-0));max-width:100vw}.modal.svelte-12kbyxa{overflow-y:auto;background:var(--onboard-modal-background, white);color:var(--onboard-modal-color, initial)}.width-100.svelte-12kbyxa{width:100%}.modal-container-mobile.svelte-12kbyxa{bottom:0}@media all and (min-width: 768px){.modal-styling.svelte-12kbyxa{border-radius:var(--border-radius)}.modal-container-mobile.svelte-12kbyxa{bottom:unset;margin:1rem}.width-100.svelte-12kbyxa{width:unset}}`)}function xX(t){let e,r,n,s,i,o,f,u,h,p;const d=t[3].default,v=c6(d,t,t[2],null);return{c(){e=Xe("section"),r=Xe("div"),n=Xe("div"),s=Xe("div"),i=Xe("div"),o=Xe("div"),v&&v.c(),ve(o,"class","modal relative svelte-12kbyxa"),ve(i,"class","modal-overflow modal-styling relative flex justify-center svelte-12kbyxa"),ve(i,"style",`${t[1]?"max-width: 100%;":""}`),ve(s,"class","flex relative max-height svelte-12kbyxa"),bt(s,"width-100",t[1]),ve(n,"class","modal-container-mobile modal-position flex svelte-12kbyxa"),bt(n,"absolute",!t[1]),bt(n,"width-100",t[1]),ve(r,"class","background flex items-center justify-center relative svelte-12kbyxa"),bt(r,"full-screen-background",!t[1]),ve(e,"class","svelte-12kbyxa"),bt(e,"fixed",!t[1])},m(w,A){it(w,e,A),Ce(e,r),Ce(r,n),Ce(n,s),Ce(s,i),Ce(i,o),v&&v.m(o,null),u=!0,h||(p=[gs(s,"click",OY(t[4])),gs(r,"click",function(){zl(t[0])&&t[0].apply(this,arguments)})],h=!0)},p(w,[A]){t=w,v&&v.p&&(!u||A&4)&&h6(v,d,t,t[2],u?u6(d,t[2],A,null):d6(t[2]),null)},i(w){u||(Je(v,w),Xi(()=>{f||(f=M8(e,Np,{},!0)),f.run(1)}),u=!0)},o(w){st(v,w),f||(f=M8(e,Np,{},!1)),f.run(0),u=!1},d(w){w&&rt(e),v&&v.d(w),w&&f&&f.end(),h=!1,Df(p)}}}function EX(t,e,r){let{$$slots:n={},$$scope:s}=e;const i=!!Kn.containerElements.connectModal,o=document.documentElement;zY(()=>{i||(o.style.position="sticky",o.style.overflow="hidden")}),rN(()=>{i||(o.style.position="",o.style.removeProperty("overflow"))});let{close:f}=e;function u(h){KY.call(this,t,h)}return t.$$set=h=>{"close"in h&&r(0,f=h.close),"$$scope"in h&&r(2,s=h.$$scope)},[f,i,s,n,u]}class S6 extends ri{constructor(e){super(),ti(this,e,EX,xX,$n,{close:0},AX)}}function MX(t){ei(t,"svelte-tz7ru1",".container.svelte-tz7ru1{padding:var(--onboard-spacing-4, var(--spacing-4));font-size:var(--onboard-font-size-6, var(--font-size-6));line-height:24px}input.svelte-tz7ru1{height:1rem;width:1rem;margin-right:0.5rem}")}function SX(t){let e,r,n,s,i,o=t[1]("connect.selectingWallet.agreement.agree")+"",f,u,h=" ",p,d,v,w,A,M=t[2]&&_X(t),R=t[3]&&RX(t);return{c(){e=Xe("div"),r=Xe("label"),n=Xe("input"),s=gt(),i=Xe("span"),f=wr(o),u=gt(),p=wr(h),d=gt(),M&&M.c(),v=gt(),R&&R.c(),ve(n,"class"," svelte-tz7ru1"),ve(n,"type","checkbox"),ve(r,"class","flex"),ve(e,"class","container flex items-center svelte-tz7ru1")},m(N,C){it(N,e,C),Ce(e,r),Ce(r,n),n.checked=t[0],Ce(r,s),Ce(r,i),Ce(i,f),Ce(i,u),Ce(i,p),Ce(i,d),M&&M.m(i,null),Ce(i,v),R&&R.m(i,null),w||(A=gs(n,"change",t[5]),w=!0)},p(N,C){C&1&&(n.checked=N[0]),C&2&&o!==(o=N[1]("connect.selectingWallet.agreement.agree")+"")&&$r(f,o),N[2]&&M.p(N,C),N[3]&&R.p(N,C)},d(N){N&&rt(e),M&&M.d(),R&&R.d(),w=!1,A()}}}function _X(t){let e,r=t[1]("connect.selectingWallet.agreement.terms")+"",n,s=t[3]?" "+t[1]("connect.selectingWallet.agreement.and")+" ":".",i;return{c(){e=Xe("a"),n=wr(r),i=wr(s),ve(e,"href",t[2]),ve(e,"target","_blank")},m(o,f){it(o,e,f),Ce(e,n),it(o,i,f)},p(o,f){f&2&&r!==(r=o[1]("connect.selectingWallet.agreement.terms")+"")&&$r(n,r),f&2&&s!==(s=o[3]?" "+o[1]("connect.selectingWallet.agreement.and")+" ":".")&&$r(i,s)},d(o){o&&rt(e),o&&rt(i)}}}function RX(t){let e,r=t[1]("connect.selectingWallet.agreement.privacy")+"",n,s;return{c(){e=Xe("a"),n=wr(r),s=wr("."),ve(e,"href",t[3]),ve(e,"target","_blank")},m(i,o){it(i,e,o),Ce(e,n),it(i,s,o)},p(i,o){o&2&&r!==(r=i[1]("connect.selectingWallet.agreement.privacy")+"")&&$r(n,r)},d(i){i&&rt(e),i&&rt(s)}}}function NX(t){let e,r=t[4]&&SX(t);return{c(){r&&r.c(),e=rn()},m(n,s){r&&r.m(n,s),it(n,e,s)},p(n,[s]){n[4]&&r.p(n,s)},i:et,o:et,d(n){r&&r.d(n),n&&rt(e)}}}function CX(t,e,r){let n;Pi(t,Pf,M=>r(1,n=M));let{agreed:s}=e;const{terms:i,privacy:o,version:f}=JSON.parse(OR(V0.TERMS_AGREEMENT)||"{}"),u={termsUrl:"",privacyUrl:"",version:""},{appMetadata:h}=Kn,{termsUrl:p,privacyUrl:d,version:v}=h&&h.agreement||u,w=!!(p&&!i||d&&!o||v&&v!==f);s=!w;function A(){s=this.checked,r(0,s)}return t.$$set=M=>{"agreed"in M&&r(0,s=M.agreed)},t.$$.update=()=>{t.$$.dirty&1&&(s?LR(V0.TERMS_AGREEMENT,JSON.stringify({version:v,terms:!!p,privacy:!!d})):s===!1&&SY(V0.TERMS_AGREEMENT))},[s,n,p,d,w,A]}class TX extends ri{constructor(e){super(),ti(this,e,CX,NX,$n,{agreed:0},MX)}}function kX(t){ei(t,"svelte-2btye1",".icon.svelte-2btye1{color:var(--onboard-white, var(--white));border-radius:50px;bottom:-0.25rem;right:-0.25rem}.yellow.svelte-2btye1{background:var(--onboard-warning-500, var(--warning-500))}")}function BX(t){let e,r,n;return{c(){e=Xe("div"),ve(e,"class",r=E8(`${t[2]} icon flex absolute`)+" svelte-2btye1"),ve(e,"style",n=`width: ${t[0]}px; height: ${t[0]}px; padding: ${t[0]/6}px;`),bt(e,"yellow",t[1]==="yellow")},m(s,i){it(s,e,i),e.innerHTML=bY},p(s,[i]){i&4&&r!==(r=E8(`${s[2]} icon flex absolute`)+" svelte-2btye1")&&ve(e,"class",r),i&1&&n!==(n=`width: ${s[0]}px; height: ${s[0]}px; padding: ${s[0]/6}px;`)&&ve(e,"style",n),i&6&&bt(e,"yellow",s[1]==="yellow")},i:et,o:et,d(s){s&&rt(e)}}}function IX(t,e,r){let{size:n}=e,{color:s="yellow"}=e,{class:i="test"}=e;return t.$$set=o=>{"size"in o&&r(0,n=o.size),"color"in o&&r(1,s=o.color),"class"in o&&r(2,i=o.class)},[n,s,i]}class PX extends ri{constructor(e){super(),ti(this,e,IX,BX,$n,{size:0,color:1,class:2},kX)}}function OX(t){ei(t,"svelte-1bikw7k",".icon.svelte-1bikw7k{color:var(--onboard-white, var(--white));border-radius:50px}.green.svelte-1bikw7k{background:var(--onboard-success-600, var(--success-600))}.blue.svelte-1bikw7k{background:var(--onboard-primary-1, var(--primary-1))}")}function LX(t){let e,r;return{c(){e=Xe("div"),ve(e,"class","icon flex svelte-1bikw7k"),ve(e,"style",r=`width: ${t[0]}px; height: ${t[0]}px; padding: ${t[0]/5}px;`),bt(e,"green",t[1]==="green"),bt(e,"blue",t[1]==="blue")},m(n,s){it(n,e,s),e.innerHTML=IR},p(n,[s]){s&1&&r!==(r=`width: ${n[0]}px; height: ${n[0]}px; padding: ${n[0]/5}px;`)&&ve(e,"style",r),s&2&&bt(e,"green",n[1]==="green"),s&2&&bt(e,"blue",n[1]==="blue")},i:et,o:et,d(n){n&&rt(e)}}}function DX(t,e,r){let{size:n}=e,{color:s="green"}=e;return t.$$set=i=>{"size"in i&&r(0,n=i.size),"color"in i&&r(1,s=i.color)},[n,s]}class AN extends ri{constructor(e){super(),ti(this,e,DX,LX,$n,{size:0,color:1},OX)}}function FX(t){ei(t,"svelte-1le5672",".loading-container.svelte-1le5672.svelte-1le5672{font-family:inherit;font-size:inherit;color:inherit}span.svelte-1le5672.svelte-1le5672{font-family:inherit;font-size:0.889em;margin-top:1rem}.loading.svelte-1le5672.svelte-1le5672{display:inline-block}.loading.svelte-1le5672 div.svelte-1le5672{font-size:inherit;display:block;position:absolute;border:3px solid;border-radius:50%;animation:svelte-1le5672-bn-loading 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;border-color:currentColor transparent transparent transparent}.loading.svelte-1le5672 .loading-first.svelte-1le5672{animation-delay:-0.45s}.loading.svelte-1le5672 .loading-second.svelte-1le5672{animation-delay:-0.3s}.loading.svelte-1le5672 .loading-third.svelte-1le5672{animation-delay:-0.15s}@keyframes svelte-1le5672-bn-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}")}function T8(t){let e,r;return{c(){e=Xe("span"),r=wr(t[0]),ve(e,"class","svelte-1le5672")},m(n,s){it(n,e,s),Ce(e,r)},p(n,s){s&1&&$r(r,n[0])},d(n){n&&rt(e)}}}function UX(t){let e,r,n,s,i,o,f,u,h,p,d,v,w=t[0]&&T8(t);return{c(){e=Xe("div"),r=Xe("div"),n=Xe("div"),i=gt(),o=Xe("div"),u=gt(),h=Xe("div"),v=gt(),w&&w.c(),ve(n,"class","loading-first svelte-1le5672"),ve(n,"style",s=`height: ${t[1]}; width: ${t[1]};`),ve(o,"class","loading-second svelte-1le5672"),ve(o,"style",f=`height: ${t[1]}; width: ${t[1]};`),ve(h,"class","loading-third svelte-1le5672"),ve(h,"style",p=`height: ${t[1]}; width: ${t[1]};`),ve(r,"class","loading relative svelte-1le5672"),ve(r,"style",d=`height: ${t[1]}; width: ${t[1]};`),ve(e,"class","loading-container flex flex-column justify-center items-center absolute svelte-1le5672")},m(A,M){it(A,e,M),Ce(e,r),Ce(r,n),Ce(r,i),Ce(r,o),Ce(r,u),Ce(r,h),Ce(e,v),w&&w.m(e,null)},p(A,[M]){M&2&&s!==(s=`height: ${A[1]}; width: ${A[1]};`)&&ve(n,"style",s),M&2&&f!==(f=`height: ${A[1]}; width: ${A[1]};`)&&ve(o,"style",f),M&2&&p!==(p=`height: ${A[1]}; width: ${A[1]};`)&&ve(h,"style",p),M&2&&d!==(d=`height: ${A[1]}; width: ${A[1]};`)&&ve(r,"style",d),A[0]?w?w.p(A,M):(w=T8(A),w.c(),w.m(e,null)):w&&(w.d(1),w=null)},i:et,o:et,d(A){A&&rt(e),w&&w.d()}}}function HX(t,e,r){let{description:n=""}=e,{size:s="2rem"}=e;return t.$$set=i=>{"description"in i&&r(0,n=i.description),"size"in i&&r(1,s=i.size)},[n,s]}class jX extends ri{constructor(e){super(),ti(this,e,HX,UX,$n,{description:0,size:1},FX)}}function zX(t){ei(t,"svelte-i129jl",`.icon.svelte-i129jl{height:100%}.border-custom.svelte-i129jl{border:1px solid var(--border-color)}.border-yellow.svelte-i129jl{border:1px solid var(--onboard-warning-500, var(--warning-500))}.border-gray.svelte-i129jl{border:1px solid var(--onboard-gray-400, var(--gray-400))}.border-green.svelte-i129jl{border:1px solid var(--onboard-success-500, var(--success-500))}.border-dark-green.svelte-i129jl{border:1px solid var(--onboard-success-700, var(--success-700))}.border-blue.svelte-i129jl{border:1px solid - var( - --onboard-wallet-app-icon-border-color, - var(--onboard-primary-300, var(--primary-300)) - )}.border-dark-blue.svelte-i129jl{border:1px solid - var( - --onboard-wallet-app-icon-border-color, - var(--onboard-primary-600, var(--primary-600)) - )}.border-transparent.svelte-i129jl{border:1px solid transparent}.border-black.svelte-i129jl{border:1px solid var(--onboard-gray-600, var(--gray-600))}.background-gray.svelte-i129jl{background:var( - --onboard-wallet-app-icon-background-gray, - var(--onboard-gray-500, var(--gray-500)) - )}.background-light-gray.svelte-i129jl{background:var( - --onboard-wallet-app-icon-background-light-gray, - var(--onboard-gray-100, var(--gray-100)) - )}.background-light-blue.svelte-i129jl{background:var( - --onboard-wallet-app-icon-background-light-blue, - var(--onboard-primary-100, var(--primary-100)) - )}.background-green.svelte-i129jl{background:var( - --onboard-wallet-app-icon-background-green, - var(--onboard-success-100, var(--success-100)) - )}.background-white.svelte-i129jl{background:var( - --onboard-wallet-app-icon-background-white, - var(--onboard-white, var(--white)) - )}.background-transparent.svelte-i129jl{background:var( - --onboard-wallet-app-icon-background-transparent, - transparent - )}@keyframes svelte-i129jl-pulse{from{opacity:0}to{opacity:1}}.placeholder-icon.svelte-i129jl{width:100%;height:100%;background:var(--onboard-gray-100, var(--gray-100));border-radius:32px;animation:svelte-i129jl-pulse infinite 750ms alternate ease-in-out}.spinner-container.svelte-i129jl{color:var(--onboard-primary-300, var(--primary-300))}img.svelte-i129jl{max-width:100%;height:auto}.pending-status-icon{z-index:1;fill:white;box-shadow:0px 2px 12px 0px rgba(0, 0, 0, 0.1)}.status-icon-container.svelte-i129jl{right:-0.25rem;bottom:-0.25rem;position:absolute}`)}const KX=t=>({}),k8=t=>({});function qX(t){let e,r,n,s={ctx:t,current:null,token:null,hasCatch:!1,pending:QX,then:WX,catch:VX,value:13,blocks:[,,,]};return Vc(r=t[1],s),{c(){e=rn(),s.block.c()},m(i,o){it(i,e,o),s.block.m(i,s.anchor=o),s.mount=()=>e.parentNode,s.anchor=e,n=!0},p(i,o){t=i,s.ctx=t,o&2&&r!==(r=t[1])&&Vc(r,s)||Gd(s,t,o)},i(i){n||(Je(s.block),n=!0)},o(i){for(let o=0;o<3;o+=1){const f=s.blocks[o];st(f)}n=!1},d(i){i&&rt(e),s.block.d(i),s.token=null,s=null}}}function GX(t){let e,r,n;return r=new jX({props:{size:"2rem"}}),{c(){e=Xe("div"),lr(r.$$.fragment),ve(e,"class","spinner-container svelte-i129jl")},m(s,i){it(s,e,i),ir(r,e,null),n=!0},p:et,i(s){n||(Je(r.$$.fragment,s),n=!0)},o(s){st(r.$$.fragment,s),n=!1},d(s){s&&rt(e),sr(r)}}}function VX(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function WX(t){let e,r,n,s,i,o;function f(d,v){return v&2&&(r=null),r==null&&(r=!!f6(d[13])),r?YX:ZX}let u=f(t,-1),h=u(t),p=t[2]&&t[9]<=Li&&B8();return{c(){e=Xe("div"),h.c(),s=gt(),p&&p.c(),i=rn(),ve(e,"class","icon flex justify-center items-center svelte-i129jl")},m(d,v){it(d,e,v),h.m(e,null),it(d,s,v),p&&p.m(d,v),it(d,i,v),o=!0},p(d,v){u===(u=f(d,v))&&h?h.p(d,v):(h.d(1),h=u(d),h&&(h.c(),h.m(e,null))),d[2]&&d[9]<=Li?p?v&516&&Je(p,1):(p=B8(),p.c(),Je(p,1),p.m(i.parentNode,i)):p&&(cn(),st(p,1,1,()=>{p=null}),un())},i(d){o||(n||Xi(()=>{n=w6(e,Np,{}),n.start()}),Je(p),o=!0)},o(d){st(p),o=!1},d(d){d&&rt(e),h.d(),d&&rt(s),p&&p.d(d),d&&rt(i)}}}function ZX(t){let e,r;return{c(){e=Xe("img"),Jg(e.src,r=t[13])||ve(e,"src",r),ve(e,"alt","logo"),ve(e,"class","svelte-i129jl")},m(n,s){it(n,e,s)},p(n,s){s&2&&!Jg(e.src,r=n[13])&&ve(e,"src",r)},d(n){n&&rt(e)}}}function YX(t){let e,r=t[13]+"",n;return{c(){e=new qd(!1),n=rn(),e.a=n},m(s,i){e.m(r,s,i),it(s,n,i)},p(s,i){i&2&&r!==(r=s[13]+"")&&e.p(r)},d(s){s&&rt(n),s&&e.d()}}}function B8(t){let e,r,n;return r=new PX({props:{class:"pending-status-icon",size:20}}),{c(){e=Xe("div"),lr(r.$$.fragment),ve(e,"class","status-icon-container svelte-i129jl")},m(s,i){it(s,e,i),ir(r,e,null),n=!0},i(s){n||(Je(r.$$.fragment,s),n=!0)},o(s){st(r.$$.fragment,s),n=!1},d(s){s&&rt(e),sr(r)}}}function QX(t){let e;return{c(){e=Xe("div"),ve(e,"class","placeholder-icon svelte-i129jl")},m(r,n){it(r,e,n)},p:et,i:et,o:et,d(r){r&&rt(e)}}}function XX(t){let e,r,n,s,i,o,f,u;Xi(t[12]);const h=[GX,qX],p=[];function d(A,M){return A[2]&&A[9]>=Li?0:1}r=d(t),n=p[r]=h[r](t);const v=t[11].status,w=c6(v,t,t[10],k8);return{c(){e=Xe("div"),n.c(),s=gt(),w&&w.c(),ve(e,"class","relative svelte-i129jl"),ve(e,"style",i=`${t[6]==="custom"?`background-color: ${t[7]}`:""}; padding: ${t[3]-1}px; width: ${t[0]}px; height: ${t[0]}px; border-radius: ${t[8]}px; color: ${t[4]};`),bt(e,"border-custom",t[5]==="custom"),bt(e,"border-yellow",t[5]==="yellow"),bt(e,"border-gray",t[5]==="gray"),bt(e,"border-green",t[5]==="green"),bt(e,"border-dark-green",t[5]==="darkGreen"),bt(e,"border-blue",t[5]==="blue"),bt(e,"border-dark-blue",t[5]==="darkBlue"),bt(e,"border-transparent",t[5]==="transparent"),bt(e,"border-black",t[5]==="black"),bt(e,"background-gray",t[6]==="gray"),bt(e,"background-light-gray",t[6]==="lightGray"),bt(e,"background-light-blue",t[6]==="lightBlue"),bt(e,"background-green",t[6]==="green"),bt(e,"background-white",t[6]==="white"),bt(e,"background-transparent",t[6]==="transparent")},m(A,M){it(A,e,M),p[r].m(e,null),Ce(e,s),w&&w.m(e,null),o=!0,f||(u=gs(window,"resize",t[12]),f=!0)},p(A,[M]){let R=r;r=d(A),r===R?p[r].p(A,M):(cn(),st(p[R],1,1,()=>{p[R]=null}),un(),n=p[r],n?n.p(A,M):(n=p[r]=h[r](A),n.c()),Je(n,1),n.m(e,s)),w&&w.p&&(!o||M&1024)&&h6(w,v,A,A[10],o?u6(v,A[10],M,KX):d6(A[10]),k8),(!o||M&473&&i!==(i=`${A[6]==="custom"?`background-color: ${A[7]}`:""}; padding: ${A[3]-1}px; width: ${A[0]}px; height: ${A[0]}px; border-radius: ${A[8]}px; color: ${A[4]};`))&&ve(e,"style",i),(!o||M&32)&&bt(e,"border-custom",A[5]==="custom"),(!o||M&32)&&bt(e,"border-yellow",A[5]==="yellow"),(!o||M&32)&&bt(e,"border-gray",A[5]==="gray"),(!o||M&32)&&bt(e,"border-green",A[5]==="green"),(!o||M&32)&&bt(e,"border-dark-green",A[5]==="darkGreen"),(!o||M&32)&&bt(e,"border-blue",A[5]==="blue"),(!o||M&32)&&bt(e,"border-dark-blue",A[5]==="darkBlue"),(!o||M&32)&&bt(e,"border-transparent",A[5]==="transparent"),(!o||M&32)&&bt(e,"border-black",A[5]==="black"),(!o||M&64)&&bt(e,"background-gray",A[6]==="gray"),(!o||M&64)&&bt(e,"background-light-gray",A[6]==="lightGray"),(!o||M&64)&&bt(e,"background-light-blue",A[6]==="lightBlue"),(!o||M&64)&&bt(e,"background-green",A[6]==="green"),(!o||M&64)&&bt(e,"background-white",A[6]==="white"),(!o||M&64)&&bt(e,"background-transparent",A[6]==="transparent")},i(A){o||(Je(n),Je(w,A),o=!0)},o(A){st(n),st(w,A),o=!1},d(A){A&&rt(e),p[r].d(),w&&w.d(A),f=!1,u()}}}function JX(t,e,r){let{$$slots:n={},$$scope:s}=e,{size:i}=e,{icon:o}=e,{loading:f=!1}=e,{padding:u=i/6}=e,{color:h="black"}=e,{border:p="transparent"}=e,{background:d="transparent"}=e,{customBackgroundColor:v=""}=e,{radius:w=12}=e,A;function M(){r(9,A=window.innerWidth)}return t.$$set=R=>{"size"in R&&r(0,i=R.size),"icon"in R&&r(1,o=R.icon),"loading"in R&&r(2,f=R.loading),"padding"in R&&r(3,u=R.padding),"color"in R&&r(4,h=R.color),"border"in R&&r(5,p=R.border),"background"in R&&r(6,d=R.background),"customBackgroundColor"in R&&r(7,v=R.customBackgroundColor),"radius"in R&&r(8,w=R.radius),"$$scope"in R&&r(10,s=R.$$scope)},[i,o,f,u,h,p,d,v,w,A,s,n,M]}class Cp extends ri{constructor(e){super(),ti(this,e,JX,XX,$n,{size:0,icon:1,loading:2,padding:3,color:4,border:5,background:6,customBackgroundColor:7,radius:8},zX)}}function $X(t){ei(t,"svelte-105a3pw",".container.svelte-105a3pw{padding:var(--onboard-spacing-5, var(--spacing-5));color:var(--onboard-warning-700, var(--warning-700));font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:16px;border:1px solid var(--onboard-warning-400, var(--warning-400));background:var(--onboard-warning-100, var(--warning-100));margin:0;border-radius:12px}.icon.svelte-105a3pw{color:var(--onboard-warning-700, var(--warning-700));width:1rem;height:1rem;margin-left:var(--onboard-spacing-5, var(--spacing-5))}p.svelte-105a3pw{margin:0;width:fit-content}")}function eJ(t){let e,r,n,s,i,o;const f=t[1].default,u=c6(f,t,t[0],null);return{c(){e=Xe("div"),r=Xe("p"),u&&u.c(),n=gt(),s=Xe("div"),ve(r,"class","svelte-105a3pw"),ve(s,"class","icon svelte-105a3pw"),ve(e,"class","container flex justify-between svelte-105a3pw")},m(h,p){it(h,e,p),Ce(e,r),u&&u.m(r,null),Ce(e,n),Ce(e,s),s.innerHTML=o6,o=!0},p(h,[p]){u&&u.p&&(!o||p&1)&&h6(u,f,h,h[0],o?u6(f,h[0],p,null):d6(h[0]),null)},i(h){o||(Je(u,h),i||Xi(()=>{i=w6(e,Np,{}),i.start()}),o=!0)},o(h){st(u,h),o=!1},d(h){h&&rt(e),u&&u.d(h)}}}function tJ(t,e,r){let{$$slots:n={},$$scope:s}=e;return t.$$set=i=>{"$$scope"in i&&r(0,s=i.$$scope)},[s,n]}class xN extends ri{constructor(e){super(),ti(this,e,tJ,eJ,$n,{},$X)}}function rJ(t){ei(t,"svelte-1kfgpsl",`.container.svelte-1kfgpsl{padding:var(--onboard-spacing-4, var(--spacing-4));color:var( - --onboard-connect-accent-text-color, - var(--onboard-gray-700, var(--gray-700)) - )}.connecting-container.svelte-1kfgpsl{padding:var(--onboard-spacing-4, var(--spacing-4));border-radius:var(--onboard-border-radius-1, var(--border-radius-1));background:var(--onboard-success-100, var(--success-100));border:1px solid var(--onboard-success-600, var(--success-600));width:100%}.text.svelte-1kfgpsl{right:var(--onboard-spacing-5, var(--spacing-5))}.tick.svelte-1kfgpsl{color:var(--onboard-success-700, var(--success-700))}`)}function nJ(t){let e,r,n,s,i,o,f,u,h,p,d,v,w,A=t[1]("connect.connectedWallet.mainText",{default:vr.connect.connectedWallet.mainText})+"",M,R,N,C;return i=new Cp({props:{size:40,padding:8,background:t[2]&&t[2].icon?"lightBlue":"lightGray",border:"darkGreen",icon:t[2]&&t[2].icon||a6}}),u=new AN({props:{size:17}}),d=new Cp({props:{size:40,padding:8,border:"darkGreen",background:"white",icon:t[0].icon}}),{c(){e=Xe("div"),r=Xe("div"),n=Xe("div"),s=Xe("div"),lr(i.$$.fragment),o=gt(),f=Xe("div"),lr(u.$$.fragment),h=gt(),p=Xe("div"),lr(d.$$.fragment),v=gt(),w=Xe("div"),M=wr(A),R=gt(),N=Xe("div"),ve(f,"class","relative"),Ao(f,"right","1rem"),Ao(f,"top","4px"),Ao(f,"z-index","1"),ve(p,"class","relative"),Ao(p,"right","1.75rem"),ve(s,"class","flex justify-center items-end relative"),ve(w,"class","text relative svelte-1kfgpsl"),ve(n,"class","flex items-center"),ve(N,"class","tick flex items-center svelte-1kfgpsl"),Ao(N,"width","24px"),ve(r,"class","connecting-container flex justify-between items-center svelte-1kfgpsl"),ve(e,"class","container svelte-1kfgpsl")},m(B,O){it(B,e,O),Ce(e,r),Ce(r,n),Ce(n,s),ir(i,s,null),Ce(s,o),Ce(s,f),ir(u,f,null),Ce(s,h),Ce(s,p),ir(d,p,null),Ce(n,v),Ce(n,w),Ce(w,M),Ce(r,R),Ce(r,N),N.innerHTML=IR,C=!0},p(B,[O]){const D={};O&1&&(D.icon=B[0].icon),d.$set(D),(!C||O&2)&&A!==(A=B[1]("connect.connectedWallet.mainText",{default:vr.connect.connectedWallet.mainText})+"")&&$r(M,A)},i(B){C||(Je(i.$$.fragment,B),Je(u.$$.fragment,B),Je(d.$$.fragment,B),C=!0)},o(B){st(i.$$.fragment,B),st(u.$$.fragment,B),st(d.$$.fragment,B),C=!1},d(B){B&&rt(e),sr(i),sr(u),sr(d)}}}function iJ(t,e,r){let n;Pi(t,Pf,o=>r(1,n=o));let{selectedWallet:s}=e;const{appMetadata:i}=Kn;return t.$$set=o=>{"selectedWallet"in o&&r(0,s=o.selectedWallet)},[s,n,i]}class sJ extends ri{constructor(e){super(),ti(this,e,iJ,nJ,$n,{selectedWallet:0},rJ)}}function aJ(t){ei(t,"svelte-j1ywa3",`.container.svelte-j1ywa3{padding:var(--onboard-spacing-4, var(--spacing-4))}.connecting-container.svelte-j1ywa3{width:100%;padding:var(--onboard-spacing-4, var(--spacing-4));transition:background-color 100ms ease-in-out, - border-color 100ms ease-in-out;border-radius:24px;background:var(--onboard-primary-100, var(--primary-100));border:1px solid;border-color:var(--onboard-primary-300, var(--primary-300));color:var(--onboard-gray-600, var(--gray-600))}.connecting-container.warning.svelte-j1ywa3{background:var(--onboard-warning-100, var(--warning-100));border-color:var(--onboard-warning-400, var(--warning-400))}.text.svelte-j1ywa3{line-height:16px;margin-bottom:var(--onboard-spacing-5, var(--spacing-5))}.text.text-rejected.svelte-j1ywa3{line-height:24px;margin-bottom:0}.subtext.svelte-j1ywa3{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:16px}.rejected-cta.svelte-j1ywa3{color:var(--onboard-primary-500, var(--primary-500))}.onboard-button-primary.svelte-j1ywa3{bottom:var(--onboard-spacing-3, var(--spacing-3))}.ml.svelte-j1ywa3{margin-left:var(--onboard-spacing-4, var(--spacing-4))}@media all and (max-width: 520px){.connecting-container.svelte-j1ywa3{border-radius:var(--onboard-border-radius-4, var(--border-radius-4))}.container.svelte-j1ywa3{padding-bottom:0}.wallet-badges.svelte-j1ywa3{display:none}.connecting-wallet-info.svelte-j1ywa3{margin:0}.onboard-button-primary.svelte-j1ywa3{display:none}}`)}function oJ(t){let e,r=t[6](`connect.connectingWallet.${t[5]?"previousConnection":"paragraph"}`,{default:vr.connect.connectingWallet.paragraph,values:{wallet:t[1].label}})+"",n;return{c(){e=Xe("div"),n=wr(r),ve(e,"class","subtext svelte-j1ywa3")},m(s,i){it(s,e,i),Ce(e,n)},p(s,i){i&98&&r!==(r=s[6](`connect.connectingWallet.${s[5]?"previousConnection":"paragraph"}`,{default:vr.connect.connectingWallet.paragraph,values:{wallet:s[1].label}})+"")&&$r(n,r)},d(s){s&&rt(e)}}}function fJ(t){let e,r=t[6]("connect.connectingWallet.rejectedCTA",{default:vr.connect.connectingWallet.rejectedCTA})+"",n,s,i;return{c(){e=Xe("div"),n=wr(r),ve(e,"class","rejected-cta pointer subtext svelte-j1ywa3")},m(o,f){it(o,e,f),Ce(e,n),s||(i=gs(e,"click",function(){zl(t[0])&&t[0].apply(this,arguments)}),s=!0)},p(o,f){t=o,f&64&&r!==(r=t[6]("connect.connectingWallet.rejectedCTA",{default:vr.connect.connectingWallet.rejectedCTA})+"")&&$r(n,r)},d(o){o&&rt(e),s=!1,i()}}}function lJ(t){let e,r,n,s,i,o,f,u,h,p,d,v=t[6](`connect.connectingWallet.${t[4]?"rejectedText":"mainText"}`,{default:t[4]?vr.connect.connectingWallet.rejectedText:vr.connect.connectingWallet.mainText})+"",w,A,M,R,N=t[6]("connect.connectingWallet.primaryButton",{default:vr.connect.connectingWallet.primaryButton})+"",C,B,O,D;i=new Cp({props:{size:40,padding:8,icon:t[7]&&t[7].icon||a6,border:t[4]||t[5]?"yellow":"blue",background:"lightGray"}}),u=new Cp({props:{size:40,padding:8,border:t[4]||t[5]?"yellow":"blue",background:"white",icon:t[1].icon}});function q(I,H){return I[4]?fJ:oJ}let W=q(t),k=W(t);return{c(){e=Xe("div"),r=Xe("div"),n=Xe("div"),s=Xe("div"),lr(i.$$.fragment),o=gt(),f=Xe("div"),lr(u.$$.fragment),h=gt(),p=Xe("div"),d=Xe("div"),w=wr(v),A=gt(),k.c(),M=gt(),R=Xe("button"),C=wr(N),ve(f,"class","relative"),Ao(f,"right","0.5rem"),ve(s,"class","flex justify-center relative wallet-badges svelte-j1ywa3"),ve(d,"class","text svelte-j1ywa3"),bt(d,"text-rejected",t[4]),ve(p,"class","flex flex-column justify-center ml connecting-wallet-info svelte-j1ywa3"),ve(n,"class","flex"),ve(r,"class","connecting-container flex justify-between items-center svelte-j1ywa3"),bt(r,"warning",t[4]||t[5]),ve(R,"class","onboard-button-primary absolute svelte-j1ywa3"),ve(e,"class","container flex flex-column items-center svelte-j1ywa3")},m(I,H){it(I,e,H),Ce(e,r),Ce(r,n),Ce(n,s),ir(i,s,null),Ce(s,o),Ce(s,f),ir(u,f,null),Ce(n,h),Ce(n,p),Ce(p,d),Ce(d,w),Ce(p,A),k.m(p,null),Ce(e,M),Ce(e,R),Ce(R,C),B=!0,O||(D=gs(R,"click",t[8]),O=!0)},p(I,[H]){const P={};H&48&&(P.border=I[4]||I[5]?"yellow":"blue"),i.$set(P);const T={};H&48&&(T.border=I[4]||I[5]?"yellow":"blue"),H&2&&(T.icon=I[1].icon),u.$set(T),(!B||H&80)&&v!==(v=I[6](`connect.connectingWallet.${I[4]?"rejectedText":"mainText"}`,{default:I[4]?vr.connect.connectingWallet.rejectedText:vr.connect.connectingWallet.mainText})+"")&&$r(w,v),(!B||H&16)&&bt(d,"text-rejected",I[4]),W===(W=q(I))&&k?k.p(I,H):(k.d(1),k=W(I),k&&(k.c(),k.m(p,null))),(!B||H&48)&&bt(r,"warning",I[4]||I[5]),(!B||H&64)&&N!==(N=I[6]("connect.connectingWallet.primaryButton",{default:vr.connect.connectingWallet.primaryButton})+"")&&$r(C,N)},i(I){B||(Je(i.$$.fragment,I),Je(u.$$.fragment,I),B=!0)},o(I){st(i.$$.fragment,I),st(u.$$.fragment,I),B=!1},d(I){I&&rt(e),sr(i),sr(u),k.d(),O=!1,D()}}}function cJ(t,e,r){let n;Pi(t,Pf,v=>r(6,n=v));let{connectWallet:s}=e,{selectedWallet:i}=e,{deselectWallet:o}=e,{setStep:f}=e,{connectionRejected:u}=e,{previousConnectionRequest:h}=e;const{appMetadata:p}=Kn,d=()=>{o(i.label),f("selectingWallet")};return t.$$set=v=>{"connectWallet"in v&&r(0,s=v.connectWallet),"selectedWallet"in v&&r(1,i=v.selectedWallet),"deselectWallet"in v&&r(2,o=v.deselectWallet),"setStep"in v&&r(3,f=v.setStep),"connectionRejected"in v&&r(4,u=v.connectionRejected),"previousConnectionRequest"in v&&r(5,h=v.previousConnectionRequest)},[s,i,o,f,u,h,n,p,d]}class uJ extends ri{constructor(e){super(),ti(this,e,cJ,lJ,$n,{connectWallet:0,selectedWallet:1,deselectWallet:2,setStep:3,connectionRejected:4,previousConnectionRequest:5},aJ)}}function hJ(t){ei(t,"svelte-1uy2ffh",".outer-container.svelte-1uy2ffh{padding:var(--onboard-spacing-4, var(--spacing-4))}.link.svelte-1uy2ffh{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:16px;color:var(--onboard-primary-500, var(--primary-500));text-decoration:none}")}function I8(t,e,r){const n=t.slice();return n[2]=e[r].name,n[3]=e[r].url,n[5]=r,n}function dJ(t){let e=t[0]("connect.selectingWallet.installWallet",{default:vr.connect.selectingWallet.installWallet,values:{app:t[2]||"this app"}})+"",r;return{c(){r=wr(e)},m(n,s){it(n,r,s)},p(n,s){s&1&&e!==(e=n[0]("connect.selectingWallet.installWallet",{default:vr.connect.selectingWallet.installWallet,values:{app:n[2]||"this app"}})+"")&&$r(r,e)},d(n){n&&rt(r)}}}function pJ(t){let e=t[0]("connect.selectingWallet.recommendedWalletsPart1",{default:vr.connect.selectingWallet.recommendedWalletsPart1,values:{app:t[2]||"This app"}})+"",r,n,s,i=t[0]("connect.selectingWallet.recommendedWalletsPart2",{default:vr.connect.selectingWallet.recommendedWalletsPart2})+"",o,f=t[1],u=[];for(let h=0;hr(0,n=o));const{recommendedInjectedWallets:s,name:i}=Kn.appMetadata||{};return[n,s,i]}class yJ extends ri{constructor(e){super(),ti(this,e,vJ,gJ,$n,{},hJ)}}function bJ(t){ei(t,"svelte-1vlog3j","button.svelte-1vlog3j:disabled{opacity:0.5}button.wallet-button-styling.svelte-1vlog3j{position:relative;align-items:flex-start;flex:1;padding:0;background:none;color:var(--onboard-wallet-button-color, inherit)}.wallet-button-container.svelte-1vlog3j{display:flex}.wallet-button-container-inner.svelte-1vlog3j{position:relative;display:flex;flex-flow:column;align-items:center;gap:0.5rem;padding:0.75rem;width:5rem}.name.svelte-1vlog3j{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:1rem;text-overflow:ellipsis;max-width:5rem;max-height:2rem;overflow:hidden}.status-icon.svelte-1vlog3j{position:absolute;top:3.5rem;left:3.5rem}@media screen and (min-width: 768px){button.wallet-button-styling.svelte-1vlog3j{transition:background-color 250ms ease-in-out;background:var(--onboard-wallet-button-background, none);border:1px solid transparent;border-color:var(--onboard-wallet-button-border-color, var(--border-color));border-radius:var(--onboard-wallet-button-border-radius, var(--border-radius-1))}button.wallet-button-styling.svelte-1vlog3j:hover{background:var(--onboard-wallet-button-background-hover, var(--foreground-color));color:var(--onboard-wallet-button-color-hover)}.wallet-button-container-inner.svelte-1vlog3j{flex:1;flex-flow:row nowrap;gap:1rem;padding:1rem}button.connected.svelte-1vlog3j{border-color:var(--onboard-success-500, var(--success-500))}.name.svelte-1vlog3j{font-size:1rem;line-height:1.25rem;text-align:initial;max-width:inherit;max-height:3rem}.status-icon.svelte-1vlog3j{top:0;bottom:0;left:auto;right:1rem;margin:auto;height:20px}}")}function O8(t){let e,r,n;return r=new AN({props:{size:20}}),{c(){e=Xe("div"),lr(r.$$.fragment),ve(e,"class","status-icon svelte-1vlog3j")},m(s,i){it(s,e,i),ir(r,e,null),n=!0},i(s){n||(Je(r.$$.fragment,s),n=!0)},o(s){st(r.$$.fragment,s),n=!1},d(s){s&&rt(e),sr(r)}}}function wJ(t){let e,r,n,s,i,o,f,u,h,p,d,v;Xi(t[7]),s=new Cp({props:{size:t[6]>=Li?48:56,icon:t[0],loading:t[4],border:t[3]?"green":"custom",background:"transparent"}});let w=t[3]&&O8();return{c(){e=Xe("div"),r=Xe("button"),n=Xe("div"),lr(s.$$.fragment),i=gt(),o=Xe("div"),f=wr(t[1]),u=gt(),w&&w.c(),ve(o,"class","name svelte-1vlog3j"),ve(n,"class","wallet-button-container-inner svelte-1vlog3j"),ve(r,"class","wallet-button-styling svelte-1vlog3j"),r.disabled=t[5],bt(r,"connected",t[3]),ve(e,"class","wallet-button-container svelte-1vlog3j")},m(A,M){it(A,e,M),Ce(e,r),Ce(r,n),ir(s,n,null),Ce(n,i),Ce(n,o),Ce(o,f),Ce(n,u),w&&w.m(n,null),p=!0,d||(v=[gs(window,"resize",t[7]),gs(r,"click",function(){zl(t[2])&&t[2].apply(this,arguments)})],d=!0)},p(A,[M]){t=A;const R={};M&64&&(R.size=t[6]>=Li?48:56),M&1&&(R.icon=t[0]),M&16&&(R.loading=t[4]),M&8&&(R.border=t[3]?"green":"custom"),s.$set(R),(!p||M&2)&&$r(f,t[1]),t[3]?w?M&8&&Je(w,1):(w=O8(),w.c(),Je(w,1),w.m(n,null)):w&&(cn(),st(w,1,1,()=>{w=null}),un()),(!p||M&32)&&(r.disabled=t[5]),(!p||M&8)&&bt(r,"connected",t[3])},i(A){p||(Je(s.$$.fragment,A),Je(w),h||Xi(()=>{h=w6(r,Np,{}),h.start()}),p=!0)},o(A){st(s.$$.fragment,A),st(w),p=!1},d(A){A&&rt(e),sr(s),w&&w.d(),d=!1,Df(v)}}}function AJ(t,e,r){let{icon:n}=e,{label:s}=e,{onClick:i}=e,{connected:o}=e,{connecting:f}=e,{disabled:u}=e,h;function p(){r(6,h=window.innerWidth)}return t.$$set=d=>{"icon"in d&&r(0,n=d.icon),"label"in d&&r(1,s=d.label),"onClick"in d&&r(2,i=d.onClick),"connected"in d&&r(3,o=d.connected),"connecting"in d&&r(4,f=d.connecting),"disabled"in d&&r(5,u=d.disabled)},[n,s,i,o,f,u,h,p]}class xJ extends ri{constructor(e){super(),ti(this,e,AJ,wJ,$n,{icon:0,label:1,onClick:2,connected:3,connecting:4,disabled:5},bJ)}}function EJ(t){ei(t,"svelte-gl8lq2",".wallets-container.svelte-gl8lq2{display:flex;gap:0.5rem;overflow-x:scroll;overflow-y:hidden;padding:0.75rem 0.5rem;border-bottom:1px solid var(--border-color);-ms-overflow-style:none;scrollbar-width:none}.wallets-container.svelte-gl8lq2::-webkit-scrollbar{display:none}.warning-container.svelte-gl8lq2{margin:1rem 1rem 0}@media all and (min-width: 768px){.wallets-container.svelte-gl8lq2{display:grid;grid-template-columns:repeat(var(--onboard-wallet-columns, 2), 1fr);padding:1rem;border:none}}")}function L8(t,e,r){const n=t.slice();return n[8]=e[r],n}function D8(t){let e,r,n;return r=new xN({props:{$$slots:{default:[MJ]},$$scope:{ctx:t}}}),{c(){e=Xe("div"),lr(r.$$.fragment),ve(e,"class","warning-container svelte-gl8lq2")},m(s,i){it(s,e,i),ir(r,e,null),n=!0},p(s,i){const o={};i&2056&&(o.$$scope={dirty:i,ctx:s}),r.$set(o)},i(s){n||(Je(r.$$.fragment,s),n=!0)},o(s){st(r.$$.fragment,s),n=!1},d(s){s&&rt(e),sr(r)}}}function MJ(t){let e,r;return{c(){e=new qd(!1),r=rn(),e.a=r},m(n,s){e.m(t[3],n,s),it(n,r,s)},p(n,s){s&8&&e.p(n[3])},d(n){n&&rt(r),n&&e.d()}}}function F8(t){let e,r;function n(){return t[7](t[8])}return e=new xJ({props:{connected:t[5](t[8].label),connecting:t[2]===t[8].label,label:t[8].label,icon:t[8].icon,onClick:n,disabled:t[4]<=Li&&t[2]&&t[2]!==t[8].label}}),{c(){lr(e.$$.fragment)},m(s,i){ir(e,s,i),r=!0},p(s,i){t=s;const o={};i&1&&(o.connected=t[5](t[8].label)),i&5&&(o.connecting=t[2]===t[8].label),i&1&&(o.label=t[8].label),i&1&&(o.icon=t[8].icon),i&3&&(o.onClick=n),i&21&&(o.disabled=t[4]<=Li&&t[2]&&t[2]!==t[8].label),e.$set(o)},i(s){r||(Je(e.$$.fragment,s),r=!0)},o(s){st(e.$$.fragment,s),r=!1},d(s){sr(e,s)}}}function SJ(t){let e,r,n,s,i,o;Xi(t[6]);let f=t[3]&&D8(t),u=t[0],h=[];for(let d=0;dst(h[d],1,1,()=>{h[d]=null});return{c(){e=Xe("div"),f&&f.c(),r=gt(),n=Xe("div");for(let d=0;d{f=null}),un()),v&55){u=d[0];let w;for(w=0;ww.label===d)}function h(){r(4,f=window.innerWidth)}const p=d=>s(d);return t.$$set=d=>{"wallets"in d&&r(0,n=d.wallets),"selectWallet"in d&&r(1,s=d.selectWallet),"connectingWalletLabel"in d&&r(2,i=d.connectingWalletLabel),"connectingErrorMessage"in d&&r(3,o=d.connectingErrorMessage)},[n,s,i,o,f,u,h,p]}class RJ extends ri{constructor(e){super(),ti(this,e,_J,SJ,$n,{wallets:0,selectWallet:1,connectingWalletLabel:2,connectingErrorMessage:3},EJ)}}function NJ(t){ei(t,"svelte-19knrcd",`.sidebar.svelte-19knrcd{--background-color:var( - --onboard-connect-sidebar-background, - var(--w3o-foreground-color, none) - );--text-color:var(--onboard-connect-sidebar-color, inherit);--border-color:var(--onboard-connect-sidebar-border-color, inherit);display:flex;flex-flow:column;gap:1rem;padding:1rem;align-items:center}.inner-container.svelte-19knrcd{display:flex;flex-flow:column;align-items:center;align-self:stretch;gap:0.5rem;padding:1.5rem;text-align:center;border:1px solid transparent;border-radius:12px;border-color:var(--border-color);background:var(--background-color);color:var(--text-color)}.icon-container.svelte-19knrcd{display:flex;height:3.5rem;width:auto;min-width:3.5rem;max-width:100%}.heading.svelte-19knrcd{font-size:var(--onboard-font-size-3, var(--font-size-3));margin:0 0 var(--onboard-spacing-5, var(--spacing-5)) 0}.subheading.svelte-19knrcd{line-height:1rem}.description.svelte-19knrcd{line-height:1.25rem;font-size:var(--onboard-font-size-6, var(--font-size-6))}img.svelte-19knrcd{max-width:100%;height:auto}.indicators.svelte-19knrcd{margin-top:1rem}.indicator.svelte-19knrcd{box-sizing:content-box;width:8px;height:8px;border-radius:8px;background:var( - --onboard-connect-sidebar-progress-background, - var(--onboard-gray-700, var(--gray-700)) - );transition:background 250ms ease-in-out}.indicator.on.svelte-19knrcd{background:var( - --onboard-connect-sidebar-progress-color, - var(--action-color) - );border:2px solid - var( - --onboard-connect-sidebar-progress-background, - var(--onboard-gray-700, var(--gray-700)) - )}.join.svelte-19knrcd{box-sizing:content-box;z-index:1;right:4px;height:2px;background:var( - --onboard-connect-sidebar-progress-background, - var(--onboard-gray-700, var(--gray-700)) - );transition:background 250ms ease-in-out}.join.active.svelte-19knrcd{background:var( - --onboard-connect-sidebar-progress-color, - var(--action-color) - )}@media all and (min-width: 768px){.sidebar.svelte-19knrcd{max-width:280px;border-right:1px solid;border-color:var(--border-color);background:var(--background-color)}.inner-container.svelte-19knrcd{border:none;text-align:initial;flex:1;align-items:flex-start;gap:1rem}}`)}function U8(t){let e,r,n=t[2](`connect.${t[0]}.sidebar.heading`,{default:""}),s;function i(h,p){return h[4]||h[3]?TJ:CJ}let f=i(t)(t),u=n&&H8(t);return{c(){e=Xe("div"),f.c(),r=gt(),u&&u.c(),s=rn(),ve(e,"class","icon-container svelte-19knrcd")},m(h,p){it(h,e,p),f.m(e,null),it(h,r,p),u&&u.m(h,p),it(h,s,p)},p(h,p){f.p(h,p),p&5&&(n=h[2](`connect.${h[0]}.sidebar.heading`,{default:""})),n?u?u.p(h,p):(u=H8(h),u.c(),u.m(s.parentNode,s)):u&&(u.d(1),u=null)},d(h){h&&rt(e),f.d(),h&&rt(r),u&&u.d(h),h&&rt(s)}}}function CJ(t){let e,r;return{c(){e=new qd(!1),r=rn(),e.a=r},m(n,s){e.m(BR,n,s),it(n,r,s)},p:et,d(n){n&&rt(r),n&&e.d()}}}function TJ(t){let e;function r(i,o){return f6(i[4]||i[3])?BJ:kJ}let s=r(t)(t);return{c(){s.c(),e=rn()},m(i,o){s.m(i,o),it(i,e,o)},p(i,o){s.p(i,o)},d(i){s.d(i),i&&rt(e)}}}function kJ(t){let e,r;return{c(){e=Xe("img"),Jg(e.src,r=t[4]||t[3])||ve(e,"src",r),ve(e,"alt","logo"),ve(e,"class","svelte-19knrcd")},m(n,s){it(n,e,s)},p:et,d(n){n&&rt(e)}}}function BJ(t){let e,r=(t[4]||t[3])+"",n;return{c(){e=new qd(!1),n=wr("​"),e.a=n},m(s,i){e.m(r,s,i),it(s,n,i)},p:et,d(s){s&&e.d(),s&&rt(n)}}}function H8(t){let e,r=t[2](`connect.${t[0]}.sidebar.heading`,{default:t[8]})+"",n;return{c(){e=Xe("div"),n=wr(r),ve(e,"class","heading svelte-19knrcd")},m(s,i){it(s,e,i),Ce(e,n)},p(s,i){i&5&&r!==(r=s[2](`connect.${s[0]}.sidebar.heading`,{default:s[8]})+"")&&$r(n,r)},d(s){s&&rt(e)}}}function IJ(t){let e,r,n,s,i=t[2](`connect.${t[0]}.sidebar.subheading`,{default:t[6]})+"",o,f,u,h=t[2](`connect.${t[0]}.sidebar.paragraph`,{values:{app:t[5]},default:t[7]})+"",p,d,v,w,A,M,R,N,C,B,O,D,q,W,k,I,H,P;Xi(t[9]);let T=t[1]>=Li&&U8(t);return{c(){e=Xe("div"),r=Xe("div"),T&&T.c(),n=gt(),s=Xe("div"),o=wr(i),f=gt(),u=Xe("div"),p=wr(h),d=gt(),v=Xe("div"),w=Xe("div"),A=gt(),M=Xe("div"),N=gt(),C=Xe("div"),B=gt(),O=Xe("div"),q=gt(),W=Xe("div"),k=gt(),I=Xe("div"),ve(s,"class","subheading svelte-19knrcd"),ve(u,"class","description svelte-19knrcd"),ve(w,"class","indicator relative svelte-19knrcd"),bt(w,"on",!0),ve(M,"class","join relative svelte-19knrcd"),ve(M,"style",R=`${t[0]!=="selectingWallet"?"right: 4px; width: 52px;":"right: 2px; width: 54px;"}`),bt(M,"active",t[0]!=="selectingWallet"),ve(C,"class","indicator relative svelte-19knrcd"),ve(C,"style","right: 8px;"),bt(C,"on",t[0]!=="selectingWallet"),ve(O,"class","join relative svelte-19knrcd"),ve(O,"style",D=`${t[0]==="connectedWallet"?"right: 12px; width: 52px;":"right: 10px; width: 54px;"}`),bt(O,"active",t[0]==="connectedWallet"),ve(W,"style","right: 16px;"),ve(W,"class","indicator relative svelte-19knrcd"),bt(W,"on",t[0]==="connectedWallet"),ve(v,"class","indicators flex items-center svelte-19knrcd"),ve(r,"class","inner-container svelte-19knrcd"),ve(e,"class","sidebar svelte-19knrcd")},m(g,a){it(g,e,a),Ce(e,r),T&&T.m(r,null),Ce(r,n),Ce(r,s),Ce(s,o),Ce(r,f),Ce(r,u),Ce(u,p),Ce(r,d),Ce(r,v),Ce(v,w),Ce(v,A),Ce(v,M),Ce(v,N),Ce(v,C),Ce(v,B),Ce(v,O),Ce(v,q),Ce(v,W),Ce(e,k),Ce(e,I),I.innerHTML=oY,H||(P=gs(window,"resize",t[9]),H=!0)},p(g,[a]){g[1]>=Li?T?T.p(g,a):(T=U8(g),T.c(),T.m(r,n)):T&&(T.d(1),T=null),a&5&&i!==(i=g[2](`connect.${g[0]}.sidebar.subheading`,{default:g[6]})+"")&&$r(o,i),a&5&&h!==(h=g[2](`connect.${g[0]}.sidebar.paragraph`,{values:{app:g[5]},default:g[7]})+"")&&$r(p,h),a&1&&R!==(R=`${g[0]!=="selectingWallet"?"right: 4px; width: 52px;":"right: 2px; width: 54px;"}`)&&ve(M,"style",R),a&1&&bt(M,"active",g[0]!=="selectingWallet"),a&1&&bt(C,"on",g[0]!=="selectingWallet"),a&1&&D!==(D=`${g[0]==="connectedWallet"?"right: 12px; width: 52px;":"right: 10px; width: 54px;"}`)&&ve(O,"style",D),a&1&&bt(O,"active",g[0]==="connectedWallet"),a&1&&bt(W,"on",g[0]==="connectedWallet")},i:et,o:et,d(g){g&&rt(e),T&&T.d(),H=!1,P()}}}function PJ(t,e,r){let n;Pi(t,Pf,M=>r(2,n=M));let{step:s}=e;const{appMetadata:i}=Kn,{icon:o,logo:f,name:u="This app"}=i||{},h=vr.connect[s].sidebar,{subheading:p,paragraph:d}=h,{heading:v}=h;let w;function A(){r(1,w=window.innerWidth)}return t.$$set=M=>{"step"in M&&r(0,s=M.step)},[s,w,n,o,f,u,p,d,v,A]}class OJ extends ri{constructor(e){super(),ti(this,e,PJ,IJ,$n,{step:0},NJ)}}function LJ(t){ei(t,"svelte-1qwmck3",`.container.svelte-1qwmck3{--background-color:var( - --onboard-main-scroll-container-background, - var(--w3o-background-color) - );--foreground-color:var(--w3o-foreground-color);--text-color:var(--onboard-connect-text-color, var(--w3o-text-color));--border-color:var(--w3o-border-color, var(--gray-200));--action-color:var(--w3o-action-color, var(--primary-500));font-family:var(--onboard-font-family-normal, var(--font-family-normal));font-size:var(--onboard-font-size-5, 1rem);background:var(--background-color);color:var(--text-color);border-color:var(--border-color);line-height:24px;overflow:hidden;position:relative;display:flex;height:min-content;flex-flow:column-reverse}.content.svelte-1qwmck3{width:var(--onboard-connect-content-width, 100%)}.header.svelte-1qwmck3{display:flex;padding:1rem;border-bottom:1px solid transparent;background:var(--onboard-connect-header-background);color:var(--onboard-connect-header-color);border-color:var(--border-color)}.header-heading.svelte-1qwmck3{line-height:1rem}.button-container.svelte-1qwmck3{right:0.5rem;top:0.5rem}.mobile-header.svelte-1qwmck3{display:flex;gap:0.5rem;height:4.5rem;padding:1rem;border-bottom:1px solid;border-color:var(--border-color)}.mobile-subheader.svelte-1qwmck3{opacity:0.6;font-size:0.875rem;font-weight:400;line-height:1rem;margin-top:0.25rem}.icon-container.svelte-1qwmck3{display:flex;flex:0 0 auto;height:2.5rem;width:2.5rem;min-width:2.5rem;justify-content:center;align-items:center}.disabled.svelte-1qwmck3{opacity:0.2;pointer-events:none;overflow:hidden}.icon-container svg{display:block;height:100%;width:auto}.w-full.svelte-1qwmck3{width:100%}.scroll-container.svelte-1qwmck3{overflow-y:auto;transition:opacity 250ms ease-in-out;scrollbar-width:none}.scroll-container.svelte-1qwmck3::-webkit-scrollbar{display:none}@media all and (min-width: 768px){.container.svelte-1qwmck3{margin:0;flex-flow:row;height:var(--onboard-connect-content-height, 440px)}.content.svelte-1qwmck3{width:var(--onboard-connect-content-width, 488px)}.mobile-subheader.svelte-1qwmck3{display:none}.icon-container.svelte-1qwmck3{display:none}}`)}function j8(t){let e,r;return e=new S6({props:{close:!t[15].disableClose&&t[19],$$slots:{default:[WJ]},$$scope:{ctx:t}}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,s){const i={};s[0]&16382|s[1]&4&&(i.$$scope={dirty:s,ctx:n}),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function DJ(t){let e,r;return e=new OJ({props:{step:t[5]}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,s){const i={};s[0]&32&&(i.step=n[5]),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function FJ(t){let e,r,n=t[13](`connect.${t[5]}.header`,{default:vr.connect[t[5]].header,values:{connectionRejected:t[1],wallet:t[3]&&t[3].label}})+"",s,i,o=t[5]==="selectingWallet"?`(${t[12]})`:"",f;return{c(){e=Xe("div"),r=Xe("div"),s=wr(n),i=gt(),f=wr(o),ve(r,"class","header-heading svelte-1qwmck3"),ve(e,"class","header relative flex items-center svelte-1qwmck3")},m(u,h){it(u,e,h),Ce(e,r),Ce(r,s),Ce(r,i),Ce(r,f)},p(u,h){h[0]&8234&&n!==(n=u[13](`connect.${u[5]}.header`,{default:vr.connect[u[5]].header,values:{connectionRejected:u[1],wallet:u[3]&&u[3].label}})+"")&&$r(s,n),h[0]&4128&&o!==(o=u[5]==="selectingWallet"?`(${u[12]})`:"")&&$r(f,o)},d(u){u&&rt(e)}}}function UJ(t){let e,r,n,s,i,o=t[13](t[5]==="connectingWallet"&&t[3]?`connect.${t[5]}.header`:`connect.${t[5]}.sidebar.subheading`,{default:t[5]==="connectingWallet"&&t[3]?vr.connect[t[5]].header:vr.connect[t[5]].sidebar.subheading,values:{connectionRejected:t[1],wallet:t[3]&&t[3].label}})+"",f,u,h,p=t[5]==="selectingWallet"?`${t[12]} available wallets`:"1 account selected",d;function v(M,R){return M[14]?jJ:HJ}let A=v(t)(t);return{c(){e=Xe("div"),r=Xe("div"),A.c(),n=gt(),s=Xe("div"),i=Xe("div"),f=wr(o),u=gt(),h=Xe("div"),d=wr(p),ve(r,"class","icon-container svelte-1qwmck3"),ve(i,"class","header-heading svelte-1qwmck3"),ve(h,"class","mobile-subheader svelte-1qwmck3"),ve(s,"class","flex flex-column justify-center w-full svelte-1qwmck3"),ve(e,"class","mobile-header svelte-1qwmck3")},m(M,R){it(M,e,R),Ce(e,r),A.m(r,null),Ce(e,n),Ce(e,s),Ce(s,i),Ce(i,f),Ce(s,u),Ce(s,h),Ce(h,d)},p(M,R){A.p(M,R),R[0]&8234&&o!==(o=M[13](M[5]==="connectingWallet"&&M[3]?`connect.${M[5]}.header`:`connect.${M[5]}.sidebar.subheading`,{default:M[5]==="connectingWallet"&&M[3]?vr.connect[M[5]].header:vr.connect[M[5]].sidebar.subheading,values:{connectionRejected:M[1],wallet:M[3]&&M[3].label}})+"")&&$r(f,o),R[0]&4128&&p!==(p=M[5]==="selectingWallet"?`${M[12]} available wallets`:"1 account selected")&&$r(d,p)},d(M){M&&rt(e),A.d()}}}function HJ(t){let e,r;return{c(){e=new qd(!1),r=rn(),e.a=r},m(n,s){e.m(BR,n,s),it(n,r,s)},p:et,d(n){n&&rt(r),n&&e.d()}}}function jJ(t){let e;function r(i,o){return f6(i[14])?KJ:zJ}let s=r(t)(t);return{c(){s.c(),e=rn()},m(i,o){s.m(i,o),it(i,e,o)},p(i,o){s.p(i,o)},d(i){s.d(i),i&&rt(e)}}}function zJ(t){let e,r;return{c(){e=Xe("img"),Jg(e.src,r=t[14])||ve(e,"src",r),ve(e,"alt","logo")},m(n,s){it(n,e,s)},p:et,d(n){n&&rt(e)}}}function KJ(t){let e,r;return{c(){e=new qd(!1),r=rn(),e.a=r},m(n,s){e.m(t[14],n,s),it(n,r,s)},p:et,d(n){n&&rt(r),n&&e.d()}}}function qJ(t){let e,r,n,s,i;return r=new wN({}),{c(){e=Xe("div"),lr(r.$$.fragment),ve(e,"class","button-container absolute svelte-1qwmck3")},m(o,f){it(o,e,f),ir(r,e,null),n=!0,s||(i=gs(e,"click",t[19]),s=!0)},p:et,i(o){n||(Je(r.$$.fragment,o),n=!0)},o(o){st(r.$$.fragment,o),n=!1},d(o){o&&rt(e),sr(r),s=!1,i()}}}function z8(t){let e,r,n,s;const i=[VJ,GJ],o=[];function f(u,h){return u[2].length?0:1}return e=f(t),r=o[e]=i[e](t),{c(){r.c(),n=rn()},m(u,h){o[e].m(u,h),it(u,n,h),s=!0},p(u,h){let p=e;e=f(u),e===p?o[e].p(u,h):(cn(),st(o[p],1,1,()=>{o[p]=null}),un(),r=o[e],r?r.p(u,h):(r=o[e]=i[e](u),r.c()),Je(r,1),r.m(n.parentNode,n))},i(u){s||(Je(r),s=!0)},o(u){st(r),s=!1},d(u){o[e].d(u),u&&rt(n)}}}function GJ(t){let e,r;return e=new yJ({}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p:et,i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function VJ(t){let e,r,n,s,i,o;function f(h){t[23](h)}let u={};return t[7]!==void 0&&(u.agreed=t[7]),e=new TX({props:u}),tv.push(()=>YY(e,"agreed",f)),i=new RJ({props:{selectWallet:t[17],wallets:t[2],connectingWalletLabel:t[8],connectingErrorMessage:t[9]}}),{c(){lr(e.$$.fragment),n=gt(),s=Xe("div"),lr(i.$$.fragment),ve(s,"class","svelte-1qwmck3"),bt(s,"disabled",!t[7])},m(h,p){ir(e,h,p),it(h,n,p),it(h,s,p),ir(i,s,null),o=!0},p(h,p){const d={};!r&&p[0]&128&&(r=!0,d.agreed=h[7],VY(()=>r=!1)),e.$set(d);const v={};p[0]&4&&(v.wallets=h[2]),p[0]&256&&(v.connectingWalletLabel=h[8]),p[0]&512&&(v.connectingErrorMessage=h[9]),i.$set(v),(!o||p[0]&128)&&bt(s,"disabled",!h[7])},i(h){o||(Je(e.$$.fragment,h),Je(i.$$.fragment,h),o=!0)},o(h){st(e.$$.fragment,h),st(i.$$.fragment,h),o=!1},d(h){sr(e,h),h&&rt(n),h&&rt(s),sr(i)}}}function K8(t){let e,r;return e=new uJ({props:{connectWallet:t[20],connectionRejected:t[1],previousConnectionRequest:t[6],setStep:t[21],deselectWallet:t[18],selectedWallet:t[3]}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,s){const i={};s[0]&2&&(i.connectionRejected=n[1]),s[0]&64&&(i.previousConnectionRequest=n[6]),s[0]&8&&(i.selectedWallet=n[3]),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function q8(t){let e,r;return e=new sJ({props:{selectedWallet:t[3]}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,s){const i={};s[0]&8&&(i.selectedWallet=n[3]),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function WJ(t){let e,r,n,s,i,o,f,u,h,p=t[15].showSidebar&&DJ(t);function d(C,B){return C[4]<=Li?UJ:FJ}let v=d(t),w=v(t),A=!t[15].disableClose&&qJ(t),M=(t[5]==="selectingWallet"||t[4]<=Li)&&z8(t),R=t[11]&&K8(t),N=t[5]==="connectedWallet"&&t[3]&&t[4]>=Li&&q8(t);return{c(){e=Xe("div"),p&&p.c(),r=gt(),n=Xe("div"),w.c(),s=gt(),A&&A.c(),i=gt(),o=Xe("div"),M&&M.c(),f=gt(),R&&R.c(),u=gt(),N&&N.c(),ve(o,"class","scroll-container svelte-1qwmck3"),ve(n,"class","content flex flex-column svelte-1qwmck3"),ve(e,"class","container svelte-1qwmck3")},m(C,B){it(C,e,B),p&&p.m(e,null),Ce(e,r),Ce(e,n),w.m(n,null),Ce(n,s),A&&A.m(n,null),Ce(n,i),Ce(n,o),M&&M.m(o,null),Ce(o,f),R&&R.m(o,null),Ce(o,u),N&&N.m(o,null),t[24](o),h=!0},p(C,B){C[15].showSidebar&&p.p(C,B),v===(v=d(C))&&w?w.p(C,B):(w.d(1),w=v(C),w&&(w.c(),w.m(n,s))),C[15].disableClose||A.p(C,B),C[5]==="selectingWallet"||C[4]<=Li?M?(M.p(C,B),B[0]&48&&Je(M,1)):(M=z8(C),M.c(),Je(M,1),M.m(o,f)):M&&(cn(),st(M,1,1,()=>{M=null}),un()),C[11]?R?(R.p(C,B),B[0]&2048&&Je(R,1)):(R=K8(C),R.c(),Je(R,1),R.m(o,u)):R&&(cn(),st(R,1,1,()=>{R=null}),un()),C[5]==="connectedWallet"&&C[3]&&C[4]>=Li?N?(N.p(C,B),B[0]&56&&Je(N,1)):(N=q8(C),N.c(),Je(N,1),N.m(o,null)):N&&(cn(),st(N,1,1,()=>{N=null}),un())},i(C){h||(Je(p),Je(A),Je(M),Je(R),Je(N),h=!0)},o(C){st(p),st(A),st(M),st(R),st(N),h=!1},d(C){C&&rt(e),p&&p.d(),w.d(),A&&A.d(),M&&M.d(),R&&R.d(),N&&N.d(),t[24](null)}}}function ZJ(t){let e,r,n,s;Xi(t[22]);let i=!t[0].disableModals&&j8(t);return{c(){i&&i.c(),e=rn()},m(o,f){i&&i.m(o,f),it(o,e,f),r=!0,n||(s=gs(window,"resize",t[22]),n=!0)},p(o,f){o[0].disableModals?i&&(cn(),st(i,1,1,()=>{i=null}),un()):i?(i.p(o,f),f[0]&1&&Je(i,1)):(i=j8(o),i.c(),Je(i,1),i.m(e.parentNode,e))},i(o){r||(Je(i),r=!0)},o(o){st(i),r=!1},d(o){i&&i.d(o),o&&rt(e),n=!1,s()}}}function YJ(t,e,r){let n,s,i,o;Pi(t,Pf,S=>r(13,o=S));let{autoSelect:f}=e;const{appMetadata:u}=Kn,{icon:h}=u||{},{walletModules:p,connect:d}=rr.get(),v=new Bf;let w=!1,A=!1,M=[],R,N,C,B,O,D;const q=new s1("selectingWallet");Pi(t,q,S=>r(5,i=S)),Xs.pipe(G9((S,y)=>S.autoSelect&&y.autoSelect&&S.autoSelect.disableModals===y.autoSelect.disableModals),sd(({autoSelect:S})=>S&&S.disableModals===!1),rp(S8)).subscribe(()=>{R&&g()});async function W({label:S,icon:y,getInterface:l}){r(8,C=S);try{const E=rr.get().wallets.find(Z=>Z.label===S);if(E){sA(E);try{await nX(E.provider),setTimeout(()=>c("connectedWallet"),1)}catch(Z){const{code:ee}=Z;(ee===Mo.UNSUPPORTED_METHOD||ee===Mo.DOES_NOT_EXIST)&&Xs.next({inProgress:!1,actionRequired:E.label})}r(3,R=E);return}const{chains:Y}=rr.get(),{provider:L,instance:F}=await l({chains:Y,BigNumber:$A,EventEmitter:aY,appMetadata:u}),V=await y;r(3,R={label:S,icon:V,provider:L,instance:F,accounts:[],chains:[{namespace:"evm",id:"0x1"}]}),r(9,B=""),m(),setTimeout(()=>c("connectingWallet"),1)}catch(E){const{message:Y}=E;r(9,B=Y),r(8,C=""),m()}}function k(){r(3,R=null)}function I(S){r(3,R={...R,...S})}async function H(S){const{getIcon:y,getInterface:l,label:E}=S,Y=y();W({label:E,icon:Y,getInterface:l})}async function P(){r(2,M=p.map(({getIcon:S,getInterface:y,label:l})=>({label:l,icon:S(),getInterface:y})))}function T(){Xs.next({inProgress:!1})}async function g(){r(1,w=!1);const{provider:S,label:y}=R;v.next();try{const[l]=await Promise.race([rX(S),kv(v.pipe($6([])))]);if(!l)return;rr.get().connect.autoConnectLastWallet&&LR(V0.LAST_CONNECTED_WALLET,y);const E=await iX(S);if(rr.get().notify.enabled){const L=await iv();if(L)try{L.subscribe({id:l,chainId:E,type:"account"})}catch{}}const Y={accounts:[{address:l,ens:null,uns:null,balance:null}],chains:[{namespace:"evm",id:E}]};sA({...R,...Y}),aX(S,y),I(Y),c("connectedWallet"),m()}catch(l){const{code:E}=l;if(m(),E===Mo.ACCOUNT_ACCESS_REJECTED){r(1,w=!0),f.disableModals?Xs.next({inProgress:!1}):f.label&&r(0,f.label="",f);return}if(E===Mo.ACCOUNT_ACCESS_ALREADY_REQUESTED){if(r(6,A=!0),f.disableModals){Xs.next({inProgress:!1});return}mN({provider:R.provider,disconnected$:Xs.pipe(sd(({inProgress:Y})=>!Y),$6(""))}).pipe(VA(1)).subscribe(([Y])=>{Y&&g()});return}}}async function a(){const{accounts:S,chains:y}=R,l=rr.get().chains,[E]=y,Y=l.find(({namespace:ee,id:ce})=>ee===E.namespace&&ce===E.id),{address:L}=S[0];let{balance:F,ens:V,uns:Z}=S[0];F===null&&nv(L,Y).then(ee=>{sg(R.label,L,{balance:ee})}),V===null&&tg(E.id)&&aA(L,Y).then(ee=>{sg(R.label,L,{ens:ee})}),Z===null&&oA(L,Y).then(ee=>{sg(R.label,L,{uns:ee})}),setTimeout(()=>Xs.next({inProgress:!1}),1500)}q.pipe(rp(S8)).subscribe(S=>{switch(S){case"selectingWallet":{if(f.label){const y=p.find(({label:l})=>l.toLowerCase()===f.label.toLowerCase());y?H(y):f.disableModals&&Xs.next({inProgress:!1})}else r(8,C=""),P();break}case"connectingWallet":{g();break}case"connectedWallet":{r(8,C=""),a();break}}});function c(S){v.next(),q.next(S)}function m(){D&&D.scrollTo(0,0)}function b(){r(4,O=window.innerWidth)}function x(S){N=S,r(7,N)}function _(S){tv[S?"unshift":"push"](()=>{D=S,r(10,D)})}return t.$$set=S=>{"autoSelect"in S&&r(0,f=S.autoSelect)},t.$$.update=()=>{t.$$.dirty[0]&4&&r(12,n=M.length-rr.get().wallets.length),t.$$.dirty[0]&58&&r(11,s=i==="connectingWallet"&&R&&O>=Li||O<=Li&&w&&i==="connectingWallet"&&R)},[f,w,M,R,O,i,A,N,C,B,D,s,n,o,h,d,q,W,k,T,g,c,b,x,_]}class QJ extends ri{constructor(e){super(),ti(this,e,YJ,ZJ,$n,{autoSelect:0},LJ,[-1,-1])}}function XJ(t){ei(t,"svelte-12yam41",".container.svelte-12yam41{padding:var(--onboard-spacing-4, var(--spacing-4));font-family:var(--onboard-font-family-normal, var(--font-family-normal));line-height:16px;font-size:var(--onboard-font-size-5, var(--font-size-5))}.close.svelte-12yam41{top:var(--onboard-spacing-5, var(--spacing-5));right:var(--onboard-spacing-5, var(--spacing-5));padding:0.5rem}h4.svelte-12yam41{font-size:var(--onboard-font-size-3, var(--font-size-3));margin:var(--onboard-spacing-4, var(--spacing-4)) 0}p.svelte-12yam41{margin:0 0 var(--onboard-spacing-4, var(--spacing-4)) 0;max-width:488px}")}function JJ(t){let e,r,n=t[0]("modals.switchChain.heading",{default:vr.modals.switchChain.heading})+"",s,i,o,f=t[0]("modals.switchChain.paragraph1",{default:vr.modals.switchChain.paragraph1,values:{app:t[1]&&t[1].name||"This app",nextNetworkName:t[2]}})+"",u,h,p,d=t[0]("modals.switchChain.paragraph2",{default:vr.modals.switchChain.paragraph2})+"",v,w,A,M,R,N,C;return M=new wN({}),{c(){e=Xe("div"),r=Xe("h4"),s=wr(n),i=gt(),o=Xe("p"),u=wr(f),h=gt(),p=Xe("p"),v=wr(d),w=gt(),A=Xe("div"),lr(M.$$.fragment),ve(r,"class","svelte-12yam41"),ve(o,"class","svelte-12yam41"),ve(p,"class","svelte-12yam41"),ve(A,"class","close absolute svelte-12yam41"),ve(e,"class","container relative svelte-12yam41")},m(B,O){it(B,e,O),Ce(e,r),Ce(r,s),Ce(e,i),Ce(e,o),Ce(o,u),Ce(e,h),Ce(e,p),Ce(p,v),Ce(e,w),Ce(e,A),ir(M,A,null),R=!0,N||(C=gs(A,"click",t[3]),N=!0)},p(B,O){(!R||O&1)&&n!==(n=B[0]("modals.switchChain.heading",{default:vr.modals.switchChain.heading})+"")&&$r(s,n),(!R||O&1)&&f!==(f=B[0]("modals.switchChain.paragraph1",{default:vr.modals.switchChain.paragraph1,values:{app:B[1]&&B[1].name||"This app",nextNetworkName:B[2]}})+"")&&$r(u,f),(!R||O&1)&&d!==(d=B[0]("modals.switchChain.paragraph2",{default:vr.modals.switchChain.paragraph2})+"")&&$r(v,d)},i(B){R||(Je(M.$$.fragment,B),R=!0)},o(B){st(M.$$.fragment,B),R=!1},d(B){B&&rt(e),sr(M),N=!1,C()}}}function $J(t){let e,r;return e=new S6({props:{close:t[3],$$slots:{default:[JJ]},$$scope:{ctx:t}}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,[s]){const i={};s&33&&(i.$$scope={dirty:s,ctx:n}),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function e$(t,e,r){let n,s;Pi(t,Md,u=>r(4,n=u)),Pi(t,Pf,u=>r(0,s=u));const{appMetadata:i}=Kn,o=n.chain.label;function f(){Md.next(null)}return[s,i,o,f]}class t$ extends ri{constructor(e){super(),ti(this,e,e$,$J,$n,{},XJ)}}function r$(t){ei(t,"svelte-z54y2j",".icon.svelte-z54y2j{border-radius:50px;color:var(--onboard-primary-500, var(--primary-500))}")}function n$(t){let e,r;return{c(){e=Xe("div"),ve(e,"class","icon flex svelte-z54y2j"),ve(e,"style",r=`width: ${t[0]}px; height: ${t[0]}px;`)},m(n,s){it(n,e,s),e.innerHTML=o6},p(n,[s]){s&1&&r!==(r=`width: ${n[0]}px; height: ${n[0]}px;`)&&ve(e,"style",r)},i:et,o:et,d(n){n&&rt(e)}}}function i$(t,e,r){let{size:n=20}=e;return t.$$set=s=>{"size"in s&&r(0,n=s.size)},[n]}class s$ extends ri{constructor(e){super(),ti(this,e,i$,n$,$n,{size:0},r$)}}function a$(t){ei(t,"svelte-1pfpbt8",`.content.svelte-1pfpbt8{padding:1rem;width:300px;font-family:var(--onboard-font-family-normal, var(--font-family-normal));font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:24px;background:var( - --onboard-action-required-modal-background, - var(--onboard-white, var(--white)) - )}.icon-container.svelte-1pfpbt8{width:3rem;height:3rem;background:var(--onboard-primary-100, var(--primary-100));border-radius:24px}h4.svelte-1pfpbt8{margin:1.5rem 0 0.5rem 0;font-weight:700}.action-required-heading.svelte-1pfpbt8,.action-required-info.svelte-1pfpbt8{color:var( - --onboard-action-required-text-color, - var(--onboard-black, inherit) - )}.action-required-btn.svelte-1pfpbt8{color:var( - --onboard-action-required-btn-text-color, - var(--onboard-black, inherit) - )}p.svelte-1pfpbt8{margin:0;font-weight:400}a.svelte-1pfpbt8{font-weight:700}button.svelte-1pfpbt8{margin-top:1.5rem;font-weight:700}`)}function G8(t){let e,r=t[1]("modals.actionRequired.linkText")+"",n;return{c(){e=Xe("a"),n=wr(r),ve(e,"href","https://metamask.zendesk.com/hc/en-us/articles/360061346311-Switching-accounts-in-MetaMask"),ve(e,"target","_blank"),ve(e,"rel","noreferrer noopener"),ve(e,"class","svelte-1pfpbt8")},m(s,i){it(s,e,i),Ce(e,n)},p(s,i){i&2&&r!==(r=s[1]("modals.actionRequired.linkText")+"")&&$r(n,r)},d(s){s&&rt(e)}}}function o$(t){let e,r,n,s,i,o=t[1]("modals.actionRequired.heading",{values:{wallet:t[0]}})+"",f,u,h,p=t[1]("modals.actionRequired.paragraph")+"",d,v,w,A,M=t[1]("modals.actionRequired.buttonText")+"",R,N,C,B;n=new s$({});let O=t[0]==="MetaMask"&&G8(t);return{c(){e=Xe("div"),r=Xe("div"),lr(n.$$.fragment),s=gt(),i=Xe("h4"),f=wr(o),u=gt(),h=Xe("p"),d=wr(p),v=gt(),O&&O.c(),w=gt(),A=Xe("button"),R=wr(M),ve(r,"class","icon-container flex justify-center items-center svelte-1pfpbt8"),ve(i,"class","action-required-heading svelte-1pfpbt8"),ve(h,"class","action-required-info svelte-1pfpbt8"),ve(A,"class","button-neutral-solid rounded action-required-btn svelte-1pfpbt8"),ve(e,"class","content svelte-1pfpbt8")},m(D,q){it(D,e,q),Ce(e,r),ir(n,r,null),Ce(e,s),Ce(e,i),Ce(i,f),Ce(e,u),Ce(e,h),Ce(h,d),Ce(h,v),O&&O.m(h,null),Ce(e,w),Ce(e,A),Ce(A,R),N=!0,C||(B=gs(A,"click",t[2]),C=!0)},p(D,q){(!N||q&3)&&o!==(o=D[1]("modals.actionRequired.heading",{values:{wallet:D[0]}})+"")&&$r(f,o),(!N||q&2)&&p!==(p=D[1]("modals.actionRequired.paragraph")+"")&&$r(d,p),D[0]==="MetaMask"?O?O.p(D,q):(O=G8(D),O.c(),O.m(h,null)):O&&(O.d(1),O=null),(!N||q&2)&&M!==(M=D[1]("modals.actionRequired.buttonText")+"")&&$r(R,M)},i(D){N||(Je(n.$$.fragment,D),N=!0)},o(D){st(n.$$.fragment,D),N=!1},d(D){D&&rt(e),sr(n),O&&O.d(),C=!1,B()}}}function f$(t){let e,r;return e=new S6({props:{close:t[2],$$slots:{default:[o$]},$$scope:{ctx:t}}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,[s]){const i={};s&11&&(i.$$scope={dirty:s,ctx:n}),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function l$(t,e,r){let n;Pi(t,Pf,o=>r(1,n=o));let{wallet:s}=e;function i(){Xs.next({inProgress:!1,actionRequired:""})}return t.$$set=o=>{"wallet"in o&&r(0,s=o.wallet)},[s,n,i]}class c$ extends ri{constructor(e){super(),ti(this,e,l$,f$,$n,{wallet:0},a$)}}function u$(t){ei(t,"svelte-1mvm68y",`.flex{display:flex}.inline-flex{display:inline-flex}.flex-column{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-around{justify-content:space-around}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.pointer{cursor:pointer}.shadow-1{box-shadow:var(--onboard-shadow-1, var(--shadow-1))}.w-100{width:100%}*{box-sizing:border-box}input{background:var(--onboard-white, var(--white))}input{width:100%;padding:0.5rem 1rem;outline:2px solid var(--onboard-gray-200, var(--gray-200));border:none;border-radius:8px;font-size:1rem;line-height:1.5;color:var(--onboard-gray-600, var(--gray-600));transition:all 200ms ease-in-out}input[type='checkbox']{-webkit-appearance:none;width:auto;background:var(--onboard-white, var(--white));outline:1px solid var(--onboard-gray-300, var(--gray-300));border:none;padding:0.5em;border-radius:3px;display:flex;justify-content:center;align-items:center;position:relative;cursor:pointer}input[type='checkbox']:hover{border-color:var( - --onboard-checkbox-background, - var(--onboard-primary-500, var(--primary-500)) - )}input[type='checkbox']:checked{background:var( - --onboard-checkbox-background, - var(--onboard-primary-500, var(--primary-500)) - );border-color:var( - --onboard-checkbox-background, - var(--onboard-primary-500, var(--primary-500)) - );color:var(--onboard-checkbox-color, var(--onboard-white, var(--white)))}input[type='checkbox']:checked:after{content:url("data:image/svg+xml,%3Csvg width='0.885em' height='0.6em' viewBox='0 0 14 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 6L5 11L14 2L12.59 0.58L5 8.17L1.41 4.59L0 6Z' fill='white'/%3E%3C/svg%3E");font-size:12px;position:absolute;color:var(--onboard-checkbox-color, var(--onboard-white, var(--white)))}input:hover{border-color:var( - --onboard-checkbox-color, - var(--onboard-white, var(--white)) - )}input:focus{border-color:var(--onboard-primary-500, var(--primary-500));box-shadow:0 0 1px 1px - var( - --onboard-checkbox-background, - var(--onboard-primary-500, var(--primary-500)) - );box-shadow:0 0 0 1px -moz-mac-focusring}input:disabled, textarea:disabled, select:disabled{background:var(--gray-100)}input::-moz-focus-inner{outline:0;padding:0;margin-top:-2px;margin-bottom:-2px}a{color:var( - --onboard-link-color, - var(--onboard-primary-500, var(--primary-500)) - );text-decoration:none}a:hover{text-decoration:underline}button{display:flex;align-items:center;justify-content:center;padding:calc(var(--onboard-spacing-4, var(--spacing-4)) - 1px);border-radius:24px;cursor:pointer;font:inherit;border:none;transition:background-color 150ms ease-in-out, color 150ms ease-in-out}.onboard-button-primary{background:var(--onboard-white, var(--white));padding:calc(var(--onboard-spacing-5, var(--spacing-5)) - 1px) - calc(var(--onboard-spacing-4, var(--spacing-4)) - 1px);color:var(--onboard-gray-500, var(--gray-500));font-size:var(--onboard-font-size-6, var(--font-size-6));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));border:1px solid var(--onboard-gray-500, var(--gray-500));font-weight:700}.button-neutral-solid{width:100%;border-radius:8px;background:var(--onboard-gray-500, var(--gray-500));color:var(--onboard-white, var(--white));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3))}.button-neutral-solid-b{width:100%;background:var(--onboard-gray-100, var(--gray-100));color:var(--onboard-gray-500, var(--gray-500));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3))}button.rounded{border-radius:24px}.button-neutral-solid:hover{background:var(--onboard-gray-700, var(--gray-700))}.button-neutral-solid-b:hover{background:var(--onboard-gray-200, var(--gray-200))}.button-neutral-solid:active{color:var(--onboard-gray-300, var(--gray-300))}.button-neutral-solid-b:active{color:var(--onboard-gray-600, var(--gray-600));background:var(--onboard-gray-300, var(--gray-300))}.container.svelte-1mvm68y{padding:16px;font-family:var(--onboard-font-family-normal, var(--font-family-normal));width:100%;pointer-events:none;touch-action:none}.z-indexed.svelte-1mvm68y{z-index:var(--account-center-z-index)}@media all and (min-width: 428px){.container.svelte-1mvm68y{max-width:348px}}`)}function V8(t){let e,r;return e=new QJ({props:{autoSelect:t[8].autoSelect}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,s){const i={};s&256&&(i.autoSelect=n[8].autoSelect),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function W8(t){let e,r;return e=new c$({props:{wallet:t[8].actionRequired}}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},p(n,s){const i={};s&256&&(i.wallet=n[8].actionRequired),e.$set(i)},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function Z8(t){let e,r;return e=new t$({}),{c(){lr(e.$$.fragment)},m(n,s){ir(e,n,s),r=!0},i(n){r||(Je(e.$$.fragment,n),r=!0)},o(n){st(e.$$.fragment,n),r=!1},d(n){sr(e,n)}}}function Y8(t){let e;return{c(){e=Xe("div"),ve(e,"class","container flex flex-column fixed z-indexed svelte-1mvm68y"),ve(e,"style","top: 0; right: 0; "+(t[11].type==="mobile"?"padding-bottom: 0;":"")),ve(e,"id","w3o-transaction-preview-container")},m(r,n){it(r,e,n)},p:et,d(r){r&&rt(e)}}}function Q8(t){let e,r=t[3].position.includes("bottom")&&t[1].position.includes("bottom")&&t[7],n,s=t[1].position.includes("bottom"),i,o,f,u,h=t[1].position.includes("top"),p,d=t[3].position.includes("top")&&t[1].position.includes("top")&&t[7],v,w,A=r&&X8(t),M=s&&J8(),R={ctx:t,current:null,token:null,hasCatch:!1,pending:b$,then:v$,catch:g$,value:23,blocks:[,,,]};Vc(t[16],R);let N=h&&$8(),C=d&&eE(t);return{c(){e=Xe("div"),A&&A.c(),n=gt(),M&&M.c(),i=gt(),o=Xe("div"),R.block.c(),u=gt(),N&&N.c(),p=gt(),C&&C.c(),ve(o,"style",f=!t[1].expanded&&t[1].minimal&&t[1].position.includes("Right")?"margin-left: auto":!t[1].expanded&&t[1].minimal&&t[1].position.includes("Left")?"margin-right: auto":""),ve(o,"id","account-center-with-notify"),ve(e,"class","container flex flex-column fixed z-indexed svelte-1mvm68y"),ve(e,"style",v=t[15](sv)[t[1].position]+"; "+(t[11].type==="mobile"&&t[1].position.includes("top")?"padding-bottom: 0;":t[11].type==="mobile"&&t[1].position.includes("bottom")?"padding-top:0;":""))},m(B,O){it(B,e,O),A&&A.m(e,null),Ce(e,n),M&&M.m(e,null),Ce(e,i),Ce(e,o),R.block.m(o,R.anchor=null),R.mount=()=>o,R.anchor=null,Ce(e,u),N&&N.m(e,null),Ce(e,p),C&&C.m(e,null),w=!0},p(B,O){t=B,O&138&&(r=t[3].position.includes("bottom")&&t[1].position.includes("bottom")&&t[7]),r?A?(A.p(t,O),O&138&&Je(A,1)):(A=X8(t),A.c(),Je(A,1),A.m(e,n)):A&&(cn(),st(A,1,1,()=>{A=null}),un()),O&2&&(s=t[1].position.includes("bottom")),s?M||(M=J8(),M.c(),M.m(e,i)):M&&(M.d(1),M=null),Gd(R,t,O),(!w||O&2&&f!==(f=!t[1].expanded&&t[1].minimal&&t[1].position.includes("Right")?"margin-left: auto":!t[1].expanded&&t[1].minimal&&t[1].position.includes("Left")?"margin-right: auto":""))&&ve(o,"style",f),O&2&&(h=t[1].position.includes("top")),h?N||(N=$8(),N.c(),N.m(e,p)):N&&(N.d(1),N=null),O&138&&(d=t[3].position.includes("top")&&t[1].position.includes("top")&&t[7]),d?C?(C.p(t,O),O&138&&Je(C,1)):(C=eE(t),C.c(),Je(C,1),C.m(e,null)):C&&(cn(),st(C,1,1,()=>{C=null}),un()),(!w||O&2&&v!==(v=t[15](sv)[t[1].position]+"; "+(t[11].type==="mobile"&&t[1].position.includes("top")?"padding-bottom: 0;":t[11].type==="mobile"&&t[1].position.includes("bottom")?"padding-top:0;":"")))&&ve(e,"style",v)},i(B){w||(Je(A),Je(R.block),Je(C),w=!0)},o(B){st(A);for(let O=0;O<3;O+=1){const D=R.blocks[O];st(D)}st(C),w=!1},d(B){B&&rt(e),A&&A.d(),M&&M.d(),R.block.d(),R.token=null,R=null,N&&N.d(),C&&C.d()}}}function X8(t){let e,r,n={ctx:t,current:null,token:null,hasCatch:!1,pending:m$,then:d$,catch:h$,value:22,blocks:[,,,]};return Vc(t[17],n),{c(){e=rn(),n.block.c()},m(s,i){it(s,e,i),n.block.m(s,n.anchor=i),n.mount=()=>e.parentNode,n.anchor=e,r=!0},p(s,i){t=s,Gd(n,t,i)},i(s){r||(Je(n.block),r=!0)},o(s){for(let i=0;i<3;i+=1){const o=n.blocks[i];st(o)}r=!1},d(s){s&&rt(e),n.block.d(s),n.token=null,n=null}}}function h$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function d$(t){let e,r,n=t[22]&&p$(t);return{c(){n&&n.c(),e=rn()},m(s,i){n&&n.m(s,i),it(s,e,i),r=!0},p(s,i){s[22]&&n.p(s,i)},i(s){r||(Je(n),r=!0)},o(s){st(n),r=!1},d(s){n&&n.d(s),s&&rt(e)}}}function p$(t){let e,r,n;var s=t[22];function i(o){return{props:{notifications:o[10],position:o[3].position,sharedContainer:o[0]}}}return s&&(e=Lo(s,i(t))),{c(){e&&lr(e.$$.fragment),r=rn()},m(o,f){e&&ir(e,o,f),it(o,r,f),n=!0},p(o,f){const u={};if(f&1024&&(u.notifications=o[10]),f&8&&(u.position=o[3].position),f&1&&(u.sharedContainer=o[0]),s!==(s=o[22])){if(e){cn();const h=e;st(h.$$.fragment,1,0,()=>{sr(h,1)}),un()}s?(e=Lo(s,i(o)),lr(e.$$.fragment),Je(e.$$.fragment,1),ir(e,r.parentNode,r)):e=null}else s&&e.$set(u)},i(o){n||(e&&Je(e.$$.fragment,o),n=!0)},o(o){e&&st(e.$$.fragment,o),n=!1},d(o){o&&rt(r),e&&sr(e,o)}}}function m$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function J8(t){let e;return{c(){e=Xe("div"),ve(e,"id","w3o-transaction-preview-container"),Ao(e,"margin-bottom","8px")},m(r,n){it(r,e,n)},d(r){r&&rt(e)}}}function g$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function v$(t){let e,r,n=t[23]&&y$(t);return{c(){n&&n.c(),e=rn()},m(s,i){n&&n.m(s,i),it(s,e,i),r=!0},p(s,i){s[23]&&n.p(s,i)},i(s){r||(Je(n),r=!0)},o(s){st(n),r=!1},d(s){n&&n.d(s),s&&rt(e)}}}function y$(t){let e,r,n;var s=t[23];function i(o){return{}}return s&&(e=Lo(s,i())),{c(){e&&lr(e.$$.fragment),r=rn()},m(o,f){e&&ir(e,o,f),it(o,r,f),n=!0},p(o,f){if(s!==(s=o[23])){if(e){cn();const u=e;st(u.$$.fragment,1,0,()=>{sr(u,1)}),un()}s?(e=Lo(s,i()),lr(e.$$.fragment),Je(e.$$.fragment,1),ir(e,r.parentNode,r)):e=null}},i(o){n||(e&&Je(e.$$.fragment,o),n=!0)},o(o){e&&st(e.$$.fragment,o),n=!1},d(o){o&&rt(r),e&&sr(e,o)}}}function b$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function $8(t){let e;return{c(){e=Xe("div"),ve(e,"id","w3o-transaction-preview-container"),Ao(e,"margin-top","8px")},m(r,n){it(r,e,n)},d(r){r&&rt(e)}}}function eE(t){let e,r,n={ctx:t,current:null,token:null,hasCatch:!1,pending:E$,then:A$,catch:w$,value:22,blocks:[,,,]};return Vc(t[17],n),{c(){e=rn(),n.block.c()},m(s,i){it(s,e,i),n.block.m(s,n.anchor=i),n.mount=()=>e.parentNode,n.anchor=e,r=!0},p(s,i){t=s,Gd(n,t,i)},i(s){r||(Je(n.block),r=!0)},o(s){for(let i=0;i<3;i+=1){const o=n.blocks[i];st(o)}r=!1},d(s){s&&rt(e),n.block.d(s),n.token=null,n=null}}}function w$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function A$(t){let e,r,n=t[22]&&x$(t);return{c(){n&&n.c(),e=rn()},m(s,i){n&&n.m(s,i),it(s,e,i),r=!0},p(s,i){s[22]&&n.p(s,i)},i(s){r||(Je(n),r=!0)},o(s){st(n),r=!1},d(s){n&&n.d(s),s&&rt(e)}}}function x$(t){let e,r,n;var s=t[22];function i(o){return{props:{notifications:o[10],position:o[3].position,sharedContainer:o[0]}}}return s&&(e=Lo(s,i(t))),{c(){e&&lr(e.$$.fragment),r=rn()},m(o,f){e&&ir(e,o,f),it(o,r,f),n=!0},p(o,f){const u={};if(f&1024&&(u.notifications=o[10]),f&8&&(u.position=o[3].position),f&1&&(u.sharedContainer=o[0]),s!==(s=o[22])){if(e){cn();const h=e;st(h.$$.fragment,1,0,()=>{sr(h,1)}),un()}s?(e=Lo(s,i(o)),lr(e.$$.fragment),Je(e.$$.fragment,1),ir(e,r.parentNode,r)):e=null}else s&&e.$set(u)},i(o){n||(e&&Je(e.$$.fragment,o),n=!0)},o(o){e&&st(e.$$.fragment,o),n=!1},d(o){o&&rt(r),e&&sr(e,o)}}}function E$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function tE(t){let e,r=t[1].position.includes("bottom"),n,s,i,o,f=t[1].position.includes("top"),u,h,p=r&&rE(),d=t[1].enabled&&t[2].length&&nE(t),v=f&&iE();return{c(){e=Xe("div"),p&&p.c(),n=gt(),s=Xe("div"),d&&d.c(),o=gt(),v&&v.c(),ve(s,"style",i=!t[1].expanded&&t[1].minimal&&t[1].position.includes("Right")?"margin-left: auto":!t[1].expanded&&t[1].minimal&&t[1].position.includes("Left")?"margin-right: auto":""),ve(e,"class","container flex flex-column fixed z-indexed svelte-1mvm68y"),ve(e,"style",u=t[15](sv)[t[1].position]+"; "+(t[11].type==="mobile"&&t[1].position.includes("top")?"padding-bottom: 0;":t[11].type==="mobile"&&t[1].position.includes("bottom")?"padding-top:0;":""))},m(w,A){it(w,e,A),p&&p.m(e,null),Ce(e,n),Ce(e,s),d&&d.m(s,null),Ce(e,o),v&&v.m(e,null),h=!0},p(w,A){A&2&&(r=w[1].position.includes("bottom")),r?p||(p=rE(),p.c(),p.m(e,n)):p&&(p.d(1),p=null),w[1].enabled&&w[2].length?d?(d.p(w,A),A&6&&Je(d,1)):(d=nE(w),d.c(),Je(d,1),d.m(s,null)):d&&(cn(),st(d,1,1,()=>{d=null}),un()),(!h||A&2&&i!==(i=!w[1].expanded&&w[1].minimal&&w[1].position.includes("Right")?"margin-left: auto":!w[1].expanded&&w[1].minimal&&w[1].position.includes("Left")?"margin-right: auto":""))&&ve(s,"style",i),A&2&&(f=w[1].position.includes("top")),f?v||(v=iE(),v.c(),v.m(e,null)):v&&(v.d(1),v=null),(!h||A&2&&u!==(u=w[15](sv)[w[1].position]+"; "+(w[11].type==="mobile"&&w[1].position.includes("top")?"padding-bottom: 0;":w[11].type==="mobile"&&w[1].position.includes("bottom")?"padding-top:0;":"")))&&ve(e,"style",u)},i(w){h||(Je(d),h=!0)},o(w){st(d),h=!1},d(w){w&&rt(e),p&&p.d(),d&&d.d(),v&&v.d()}}}function rE(t){let e;return{c(){e=Xe("div"),ve(e,"id","w3o-transaction-preview-container"),Ao(e,"margin-bottom","8px")},m(r,n){it(r,e,n)},d(r){r&&rt(e)}}}function nE(t){let e,r,n={ctx:t,current:null,token:null,hasCatch:!1,pending:R$,then:S$,catch:M$,value:23,blocks:[,,,]};return Vc(t[16],n),{c(){e=rn(),n.block.c()},m(s,i){it(s,e,i),n.block.m(s,n.anchor=i),n.mount=()=>e.parentNode,n.anchor=e,r=!0},p(s,i){t=s,Gd(n,t,i)},i(s){r||(Je(n.block),r=!0)},o(s){for(let i=0;i<3;i+=1){const o=n.blocks[i];st(o)}r=!1},d(s){s&&rt(e),n.block.d(s),n.token=null,n=null}}}function M$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function S$(t){let e,r,n=t[23]&&_$(t);return{c(){n&&n.c(),e=rn()},m(s,i){n&&n.m(s,i),it(s,e,i),r=!0},p(s,i){s[23]&&n.p(s,i)},i(s){r||(Je(n),r=!0)},o(s){st(n),r=!1},d(s){n&&n.d(s),s&&rt(e)}}}function _$(t){let e,r,n;var s=t[23];function i(o){return{}}return s&&(e=Lo(s,i())),{c(){e&&lr(e.$$.fragment),r=rn()},m(o,f){e&&ir(e,o,f),it(o,r,f),n=!0},p(o,f){if(s!==(s=o[23])){if(e){cn();const u=e;st(u.$$.fragment,1,0,()=>{sr(u,1)}),un()}s?(e=Lo(s,i()),lr(e.$$.fragment),Je(e.$$.fragment,1),ir(e,r.parentNode,r)):e=null}},i(o){n||(e&&Je(e.$$.fragment,o),n=!0)},o(o){e&&st(e.$$.fragment,o),n=!1},d(o){o&&rt(r),e&&sr(e,o)}}}function R$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function iE(t){let e;return{c(){e=Xe("div"),ve(e,"id","w3o-transaction-preview-container"),Ao(e,"margin-top","8px")},m(r,n){it(r,e,n)},d(r){r&&rt(e)}}}function sE(t){let e,r=t[3].position.includes("top"),n,s,i=t[3].position.includes("bottom"),o,f,u=r&&aE(),h={ctx:t,current:null,token:null,hasCatch:!1,pending:k$,then:C$,catch:N$,value:22,blocks:[,,,]};Vc(t[17],h);let p=i&&oE();return{c(){e=Xe("div"),u&&u.c(),n=gt(),h.block.c(),s=gt(),p&&p.c(),ve(e,"class","container flex flex-column fixed z-indexed svelte-1mvm68y"),ve(e,"style",o=t[15](fE)[t[3].position]+"; "+(t[11].type==="mobile"&&t[3].position.includes("top")?"padding-bottom: 0;":t[11].type==="mobile"&&t[3].position.includes("bottom")?"padding-top:0;":""))},m(d,v){it(d,e,v),u&&u.m(e,null),Ce(e,n),h.block.m(e,h.anchor=null),h.mount=()=>e,h.anchor=s,Ce(e,s),p&&p.m(e,null),f=!0},p(d,v){t=d,v&8&&(r=t[3].position.includes("top")),r?u||(u=aE(),u.c(),u.m(e,n)):u&&(u.d(1),u=null),Gd(h,t,v),v&8&&(i=t[3].position.includes("bottom")),i?p||(p=oE(),p.c(),p.m(e,null)):p&&(p.d(1),p=null),(!f||v&8&&o!==(o=t[15](fE)[t[3].position]+"; "+(t[11].type==="mobile"&&t[3].position.includes("top")?"padding-bottom: 0;":t[11].type==="mobile"&&t[3].position.includes("bottom")?"padding-top:0;":"")))&&ve(e,"style",o)},i(d){f||(Je(h.block),f=!0)},o(d){for(let v=0;v<3;v+=1){const w=h.blocks[v];st(w)}f=!1},d(d){d&&rt(e),u&&u.d(),h.block.d(),h.token=null,h=null,p&&p.d()}}}function aE(t){let e;return{c(){e=Xe("div"),ve(e,"id","w3o-transaction-preview-container")},m(r,n){it(r,e,n)},d(r){r&&rt(e)}}}function N$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function C$(t){let e,r,n=t[22]&&T$(t);return{c(){n&&n.c(),e=rn()},m(s,i){n&&n.m(s,i),it(s,e,i),r=!0},p(s,i){s[22]&&n.p(s,i)},i(s){r||(Je(n),r=!0)},o(s){st(n),r=!1},d(s){n&&n.d(s),s&&rt(e)}}}function T$(t){let e,r,n;var s=t[22];function i(o){return{props:{notifications:o[10],position:o[3].position,sharedContainer:o[0]}}}return s&&(e=Lo(s,i(t))),{c(){e&&lr(e.$$.fragment),r=rn()},m(o,f){e&&ir(e,o,f),it(o,r,f),n=!0},p(o,f){const u={};if(f&1024&&(u.notifications=o[10]),f&8&&(u.position=o[3].position),f&1&&(u.sharedContainer=o[0]),s!==(s=o[22])){if(e){cn();const h=e;st(h.$$.fragment,1,0,()=>{sr(h,1)}),un()}s?(e=Lo(s,i(o)),lr(e.$$.fragment),Je(e.$$.fragment,1),ir(e,r.parentNode,r)):e=null}else s&&e.$set(u)},i(o){n||(e&&Je(e.$$.fragment,o),n=!0)},o(o){e&&st(e.$$.fragment,o),n=!1},d(o){o&&rt(r),e&&sr(e,o)}}}function k$(t){return{c:et,m:et,p:et,i:et,o:et,d:et}}function oE(t){let e;return{c(){e=Xe("div"),ve(e,"id","w3o-transaction-preview-container")},m(r,n){it(r,e,n)},d(r){r&&rt(e)}}}function B$(t){let e,r,n,s,i,o,f,u,h=t[8].inProgress&&V8(t),p=t[8].actionRequired&&W8(t),d=t[9]&&Z8(),v=!t[1].enabled&&!t[3].enabled&&Y8(t),w=t[4]&&Q8(t),A=t[5]&&tE(t),M=t[6]&&sE(t);return{c(){h&&h.c(),e=gt(),p&&p.c(),r=gt(),d&&d.c(),n=gt(),v&&v.c(),s=gt(),w&&w.c(),i=gt(),A&&A.c(),o=gt(),M&&M.c(),f=rn()},m(R,N){h&&h.m(R,N),it(R,e,N),p&&p.m(R,N),it(R,r,N),d&&d.m(R,N),it(R,n,N),v&&v.m(R,N),it(R,s,N),w&&w.m(R,N),it(R,i,N),A&&A.m(R,N),it(R,o,N),M&&M.m(R,N),it(R,f,N),u=!0},p(R,[N]){R[8].inProgress?h?(h.p(R,N),N&256&&Je(h,1)):(h=V8(R),h.c(),Je(h,1),h.m(e.parentNode,e)):h&&(cn(),st(h,1,1,()=>{h=null}),un()),R[8].actionRequired?p?(p.p(R,N),N&256&&Je(p,1)):(p=W8(R),p.c(),Je(p,1),p.m(r.parentNode,r)):p&&(cn(),st(p,1,1,()=>{p=null}),un()),R[9]?d?N&512&&Je(d,1):(d=Z8(),d.c(),Je(d,1),d.m(n.parentNode,n)):d&&(cn(),st(d,1,1,()=>{d=null}),un()),!R[1].enabled&&!R[3].enabled?v?v.p(R,N):(v=Y8(R),v.c(),v.m(s.parentNode,s)):v&&(v.d(1),v=null),R[4]?w?(w.p(R,N),N&16&&Je(w,1)):(w=Q8(R),w.c(),Je(w,1),w.m(i.parentNode,i)):w&&(cn(),st(w,1,1,()=>{w=null}),un()),R[5]?A?(A.p(R,N),N&32&&Je(A,1)):(A=tE(R),A.c(),Je(A,1),A.m(o.parentNode,o)):A&&(cn(),st(A,1,1,()=>{A=null}),un()),R[6]?M?(M.p(R,N),N&64&&Je(M,1)):(M=sE(R),M.c(),Je(M,1),M.m(f.parentNode,f)):M&&(cn(),st(M,1,1,()=>{M=null}),un())},i(R){u||(Je(h),Je(p),Je(d),Je(w),Je(A),Je(M),u=!0)},o(R){st(h),st(p),st(d),st(w),st(A),st(M),u=!1},d(R){h&&h.d(R),R&&rt(e),p&&p.d(R),R&&rt(r),d&&d.d(R),R&&rt(n),v&&v.d(R),R&&rt(s),w&&w.d(R),R&&rt(i),A&&A.d(R),R&&rt(o),M&&M.d(R),R&&rt(f)}}}const sv="account-center",fE="notify-onboard-container";function I$(t,e,r){let n,s,i,o,f,u,h,p,d,v,w,A;Pi(t,ky,I=>r(2,p=I)),Pi(t,Xs,I=>r(8,v=I)),Pi(t,Md,I=>r(9,w=I));const{device:M,containerElements:R}=Kn,N=rr.select("accountCenter").pipe(rb(rr.get().accountCenter),sw(1));Pi(t,N,I=>r(1,h=I));const C=rr.select("notify").pipe(rb(rr.get().notify),sw(1));Pi(t,C,I=>r(3,d=I));const B=rr.select("notifications").pipe(rb(rr.get().notifications));Pi(t,B,I=>r(10,A=I));const O=I=>({topLeft:` - top: var(--${I}-position-top, 0); - left: var(--${I}-position-left, 0);`,topRight:` - top: var(--${I}-position-top, 0); - right: var(--${I}-position-right, 0);`,bottomRight:` - bottom: var(--${I}-position-bottom, 0); - right: var(--${I}-position-right, 0);`,bottomLeft:` - bottom: var(--${I}-position-bottom, 0); - left: var(--${I}-position-left, 0);`}),D=h.enabled?vt(()=>import("./Index-c6a19500-8864b476.js"),["assets/Index-c6a19500-8864b476.js","assets/merge-7af99d5f.js","assets/skip-2d52d7ac.js"]).then(I=>I.default):Promise.resolve(null),q=d.enabled?vt(()=>import("./Index-5a58a04a-286652f5.js"),[]).then(I=>I.default):Promise.resolve(null),W=h.enabled&&R&&R.accountCenter,k=(I,H,P,T)=>{const g=I.attachShadow({mode:"open"});let c=document.querySelector("onboard-v2").shadowRoot.styleSheets;const m=new CSSStyleSheet;Object.values(c).forEach(_=>{Object.values(_.cssRules).forEach(y=>m.insertRule(y.cssText))}),g.adoptedStyleSheets=[m];const b=document.querySelector(H);if(b.appendChild(I),!b)throw new Error(`Element with query ${H} does not exist.`);(async()=>{let _=await P;_&&new _({target:g,props:{settings:T,mountInContainer:!0}})})()};if(W){const I=document.createElement("onboard-account-center");k(I,W,D,h)}return t.$$.update=()=>{t.$$.dirty&10&&r(0,n=!W&&h.enabled&&d.enabled&&d.position===h.position),t.$$.dirty&10&&r(7,s=M.type==="mobile"||h.position===d.position),t.$$.dirty&10&&r(18,i=d.position.includes("bottom")&&h.position.includes("bottom")||d.position.includes("top")&&h.position.includes("top")),t.$$.dirty&262158&&r(6,o=d.enabled&&(!h.enabled||W||d.position!==h.position&&M.type!=="mobile"||M.type==="mobile"&&!i||!p.length)),t.$$.dirty&262158&&r(5,f=h.enabled&&(!d.enabled||d.position!==h.position&&M.type!=="mobile"||M.type==="mobile"&&!i)&&p.length),t.$$.dirty&262159&&r(4,u=d.enabled&&h.enabled&&(n||M.type==="mobile"&&i)&&p.length)},[n,h,p,d,u,f,o,s,v,w,A,M,N,C,B,O,D,q,i]}class P$ extends ri{constructor(e){super(),ti(this,e,I$,B$,$n,{},u$)}}let fA;rr.select("notifications").subscribe(t=>{fA=t});async function O$(t){const e=LQ(t);if(e)throw e;const{sendTransaction:r,estimateGas:n,gasPrice:s,balance:i,txDetails:o,txApproveReminderTimeout:f}=t,u=f&&f>3e3?f:15e3,[h,p]=await H$(n,s),d=D$(w7()),v=new Hc(o&&o.value||0);i&&h&&p&&h.times(p).plus(v).gt(new Hc(i))&&Uu(M0("nsfFail",d));const w=fA.find(R=>R.eventCode==="txRequest");if(w){const N=M0("txAwaitingApproval",w.id);Uu(N)}if(setTimeout(()=>{const R=fA.find(N=>N.id===d&&N.eventCode==="txRequest");if(R){const C=M0("txConfirmReminder",R.id);Uu(C)}},u),Uu(M0("txRequest",d)),!r)return d;let M;try{M=await r()}catch(R){const{eventCode:N,errorMsg:C}=U$(R);Uu(M0(N,d)),console.error(C);return}if(hN(d),M)return M}const M0=(t,e)=>({eventCode:t,type:yN(t),id:e,key:L$(e,t),message:F$(t),startTime:Date.now(),network:Object.keys(w8).find(r=>w8[r]===rr.get().chains[0].id),autoDismiss:0}),L$=(t,e)=>`${t}-${e}`,D$=t=>`${t}-preflight`,F$=t=>{const e=vr.notify;return e.transaction,e.transaction[t]};function U$(t){if(!t.stack||!t.message)return{eventCode:"txError",errorMsg:"An unknown error occured"};const e=t.stack||t.message;return e.includes("User denied transaction signature")?{eventCode:"txSendFail",errorMsg:"User denied transaction signature"}:e.includes("transaction underpriced")?{eventCode:"txUnderpriced",errorMsg:"Transaction is under priced"}:{eventCode:"txError",errorMsg:e}}const H$=async(t,e)=>{if(!t||!e)return Promise.resolve([]);const r=t();if(!r.then)throw new Error("The `estimateGas` function must return a Promise");const n=e();if(!n.then)throw new Error("The `gasPrice` function must return a Promise");return Promise.all([r,n]).then(([s,i])=>{if(typeof s!="string")throw new Error(`The Promise returned from calling 'estimateGas' must resolve with a value of type 'string'. Received a value of: ${s} with a type: ${typeof s}`);if(typeof i!="string")throw new Error(`The Promise returned from calling 'gasPrice' must resolve with a value of type 'string'. Received a value of: ${i} with a type: ${typeof i}`);return[new Hc(s),new Hc(i)]}).catch(s=>{throw new Error(`There was an error getting gas estimates: ${s}`)})},H2={connectWallet:QQ,disconnectWallet:bN,setChain:pX,state:{get:rr.get,select:rr.select,actions:{setWalletModules:dN,setLocale:VQ,updateNotify:ag,customNotification:qQ,preflightNotifications:O$,updateBalances:vN,updateAccountCenter:uN,setPrimaryWallet:zQ,updateTheme:pN}}};function j$(t){if(typeof window>"u")return H2;if(t){const R=SQ(t);if(R)throw R}const{wallets:e,chains:r,appMetadata:n=null,i18n:s,accountCenter:i,apiKey:o,notify:f,gas:u,connect:h,containerElements:p,transactionPreview:d,theme:v}=t;p&&A8({containerElements:p});const{device:w,svelteInstance:A}=Kn;if(A&&(console.warn("Re-initializing Onboard and resetting back to initial state"),A6.next()),gX(s),HQ(xY(r)),typeof h!==void 0&&KQ(h),typeof i<"u"){let R;w.type==="mobile"?R={...tl.accountCenter,...i.mobile?i.mobile:{}}:i.desktop&&(R={...tl.accountCenter,...i.desktop}),uN(R)}if(typeof f<"u")if("desktop"in f||"mobile"in f){const R=IQ(f);if(R)throw R;(!f.desktop||f.desktop&&!f.desktop.position)&&i&&i.desktop&&i.desktop.position&&(f.desktop.position=i.desktop.position),(!f.mobile||f.mobile&&!f.mobile.position)&&i&&i.mobile&&i.mobile.position&&(f.mobile.position=i.mobile.position);let N;w.type==="mobile"&&f.mobile?N={...tl.notify,...f.mobile}:f.desktop&&(N={...tl.notify,...f.desktop}),ag(N)}else{const R=cN(f);if(R)throw R;const N={...tl.notify,...f};ag(N)}else{const R=tl.notify;ag(R)}const M=A||z$();if(A8({appMetadata:n,svelteInstance:M,apiKey:o,initialWalletInit:e,gas:u,transactionPreview:d}),o&&d&&(async()=>(d.init({containerElement:"#w3o-transaction-preview-container",sdk:await dX(),apiKey:o}),ky.subscribe(N=>{N.forEach(({provider:C})=>{d.patchProvider(C)})})))(),v&&pN(v),h&&h.autoConnectLastWallet){const R=OR(V0.LAST_CONNECTED_WALLET);R&&H2.connectWallet({autoSelect:{label:R,disableModals:!0}})}return H2}function z$(){class t extends HTMLElement{constructor(){super()}}customElements.get("onboard-v2")||customElements.define("onboard-v2",t);const e=document.createElement("style");e.innerHTML=` - ${pT} - `,document.body.appendChild(e);const r=document.createElement("onboard-v2"),n=r.attachShadow({mode:"open"});r.style.all="initial",n.innerHTML=` - - `;const i=Kn.containerElements.connectModal||rr.get().accountCenter.containerElement||"body",o=document.querySelector(i);if(!o)throw new Error(`Element with query ${i} does not exist.`);return o.appendChild(r),new P$({target:n})}const K$=window.networks,q$=wk(),G$=Ak({}),V$=xk(),lE=j$({wallets:[q$,V$,G$],chains:K$,accountCenter:{desktop:{enabled:!1},mobile:{enabled:!1}}}),W$="6.6.2";function Z$(t,e,r){const n=e.split("|").map(i=>i.trim());for(let i=0;iPromise.resolve(t[n])))).reduce((n,s,i)=>(n[e[i]]=s,n),{})}function Dt(t,e,r){for(let n in e){let s=e[n];const i=r?r[n]:null;i&&Z$(s,i,n),Object.defineProperty(t,n,{enumerable:!0,value:s,writable:!1})}}function Xu(t){if(t==null)return"null";if(Array.isArray(t))return"[ "+t.map(Xu).join(", ")+" ]";if(t instanceof Uint8Array){const e="0123456789abcdef";let r="0x";for(let n=0;n>4],r+=e[t[n]&15];return r}if(typeof t=="object"&&typeof t.toJSON=="function")return Xu(t.toJSON());switch(typeof t){case"boolean":case"symbol":return t.toString();case"bigint":return BigInt(t).toString();case"number":return t.toString();case"string":return JSON.stringify(t);case"object":{const e=Object.keys(t);return e.sort(),"{ "+e.map(r=>`${Xu(r)}: ${Xu(t[r])}`).join(", ")+" }"}}return"[ COULD NOT SERIALIZE ]"}function ko(t,e){return t&&t.code===e}function _6(t){return ko(t,"CALL_EXCEPTION")}function oi(t,e,r){{const s=[];if(r){if("message"in r||"code"in r||"name"in r)throw new Error(`value will overwrite populated values: ${Xu(r)}`);for(const i in r){const o=r[i];s.push(i+"="+Xu(o))}}s.push(`code=${e}`),s.push(`version=${W$}`),s.length&&(t+=" ("+s.join(", ")+")")}let n;switch(e){case"INVALID_ARGUMENT":n=new TypeError(t);break;case"NUMERIC_FAULT":case"BUFFER_OVERRUN":n=new RangeError(t);break;default:n=new Error(t)}return Dt(n,{code:e}),r&&Object.assign(n,r),n}function nt(t,e,r,n){if(!t)throw oi(e,r,n)}function ye(t,e,r,n){nt(t,e,"INVALID_ARGUMENT",{argument:r,value:n})}function EN(t,e,r){r==null&&(r=""),r&&(r=": "+r),nt(t>=e,"missing arguemnt"+r,"MISSING_ARGUMENT",{count:t,expectedCount:e}),nt(t<=e,"too many arguemnts"+r,"UNEXPECTED_ARGUMENT",{count:t,expectedCount:e})}const Y$=["NFD","NFC","NFKD","NFKC"].reduce((t,e)=>{try{if("test".normalize(e)!=="test")throw new Error("bad");if(e==="NFD"){const r=String.fromCharCode(233).normalize("NFD"),n=String.fromCharCode(101,769);if(r!==n)throw new Error("broken")}t.push(e)}catch{}return t},[]);function Q$(t){nt(Y$.indexOf(t)>=0,"platform missing String.prototype.normalize","UNSUPPORTED_OPERATION",{operation:"String.prototype.normalize",info:{form:t}})}function By(t,e,r){if(r==null&&(r=""),t!==e){let n=r,s="new";r&&(n+=".",s+=" "+r),nt(!1,`private constructor; use ${n}from* methods`,"UNSUPPORTED_OPERATION",{operation:s})}}function MN(t,e,r){if(t instanceof Uint8Array)return r?new Uint8Array(t):t;if(typeof t=="string"&&t.match(/^0x([0-9a-f][0-9a-f])*$/i)){const n=new Uint8Array((t.length-2)/2);let s=2;for(let i=0;i>4]+cE[s&15]}return r}function jn(t){return"0x"+t.map(e=>At(e).substring(2)).join("")}function mh(t){return Mn(t,!0)?(t.length-2)/2:Br(t).length}function Cn(t,e,r){const n=Br(t);return r!=null&&r>n.length&&nt(!1,"cannot slice beyond data bounds","BUFFER_OVERRUN",{buffer:n,length:n.length,offset:r}),At(n.slice(e??0,r??n.length))}function J$(t,e,r){const n=Br(t);nt(e>=n.length,"padding exceeds data length","BUFFER_OVERRUN",{buffer:new Uint8Array(n),length:e,offset:e+1});const s=new Uint8Array(e);return s.fill(0),r?s.set(n,e-n.length):s.set(n,0),At(s)}function Wc(t,e){return J$(t,e,!0)}const Iy=BigInt(0),Ua=BigInt(1),Ju=9007199254740991;function $$(t,e){const r=Py(t,"value"),n=BigInt(br(e,"width"));if(nt(r>>n===Iy,"overflow","NUMERIC_FAULT",{operation:"fromTwos",fault:"overflow",value:t}),r>>n-Ua){const s=(Ua<=-Ju&&t<=Ju,"overflow",e||"value",t),BigInt(t);case"string":try{if(t==="")throw new Error("empty string");return t[0]==="-"&&t[1]!=="-"?-BigInt(t.substring(1)):BigInt(t)}catch(r){ye(!1,`invalid BigNumberish string: ${r.message}`,e||"value",t)}}ye(!1,"invalid BigNumberish value",e||"value",t)}function Py(t,e){const r=St(t,e);return nt(r>=Iy,"unsigned value cannot be negative","NUMERIC_FAULT",{fault:"overflow",operation:"getUint",value:t}),r}const uE="0123456789abcdef";function R6(t){if(t instanceof Uint8Array){let e="0x0";for(const r of t)e+=uE[r>>4],e+=uE[r&15];return BigInt(e)}return St(t)}function br(t,e){switch(typeof t){case"bigint":return ye(t>=-Ju&&t<=Ju,"overflow",e||"value",t),Number(t);case"number":return ye(Number.isInteger(t),"underflow",e||"value",t),ye(t>=-Ju&&t<=Ju,"overflow",e||"value",t),t;case"string":try{if(t==="")throw new Error("empty string");return br(BigInt(t),e)}catch(r){ye(!1,`invalid numeric string: ${r.message}`,e||"value",t)}}ye(!1,"invalid numeric value",e||"value",t)}function eee(t){return br(R6(t))}function Il(t,e){let n=Py(t,"value").toString(16);if(e==null)n.length%2&&(n="0"+n);else{const s=br(e,"width");for(nt(s*2>=n.length,`value exceeds width (${s} bits)`,"NUMERIC_FAULT",{operation:"toBeHex",fault:"overflow",value:t});n.length>6===2;o++)i++;return i}return t==="OVERRUN"?r.length-e-1:0}function aee(t,e,r,n,s){return t==="OVERLONG"?(ye(typeof s=="number","invalid bad code point for replacement","badCodepoint",s),n.push(s),0):(n.push(65533),RN(t,e,r))}const oee=Object.freeze({error:see,ignore:RN,replace:aee});function fee(t,e){e==null&&(e=oee.error);const r=Br(t,"bytes"),n=[];let s=0;for(;s>7)){n.push(i);continue}let o=null,f=null;if((i&224)===192)o=1,f=127;else if((i&240)===224)o=2,f=2047;else if((i&248)===240)o=3,f=65535;else{(i&192)===128?s+=e("UNEXPECTED_CONTINUE",s-1,r,n):s+=e("BAD_PREFIX",s-1,r,n);continue}if(s-1+o>=r.length){s+=e("OVERRUN",s-1,r,n);continue}let u=i&(1<<8-o-1)-1;for(let h=0;h1114111){s+=e("OUT_OF_RANGE",s-1-o,r,n,u);continue}if(u>=55296&&u<=57343){s+=e("UTF16_SURROGATE",s-1-o,r,n,u);continue}if(u<=f){s+=e("OVERLONG",s-1-o,r,n,u);continue}n.push(u)}}return n}function xf(t,e){e!=null&&(Q$(e),t=t.normalize(e));let r=[];for(let n=0;n>6|192),r.push(s&63|128);else if((s&64512)==55296){n++;const i=t.charCodeAt(n);ye(n>18|240),r.push(o>>12&63|128),r.push(o>>6&63|128),r.push(o&63|128)}else r.push(s>>12|224),r.push(s>>6&63|128),r.push(s&63|128)}return new Uint8Array(r)}function lee(t){return t.map(e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10&1023)+55296,(e&1023)+56320))).join("")}function N6(t,e){return lee(fee(t,e))}async function cee(t,e){const r=t.url.split(":")[0].toLowerCase();nt(r==="http"||r==="https",`unsupported protocol ${r}`,"UNSUPPORTED_OPERATION",{info:{protocol:r},operation:"request"}),nt(r==="https"||!t.credentials||t.allowInsecureAuthentication,"insecure authorized connections unsupported","UNSUPPORTED_OPERATION",{operation:"request"});let n;if(e){const h=new AbortController;n=h.signal,e.addListener(()=>{h.abort()})}const s={method:t.method,headers:new Headers(Array.from(t)),body:t.body||void 0,signal:n},i=await fetch(t.url,s),o={};i.headers.forEach((h,p)=>{o[p.toLowerCase()]=h});const f=await i.arrayBuffer(),u=f==null?null:new Uint8Array(f);return{statusCode:i.status,statusMessage:i.statusText,headers:o,body:u}}const uee=12,hee=250;let dE=cee;const dee=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i"),pee=new RegExp("^ipfs://(ipfs/)?(.*)$","i");let j2=!1;async function NN(t,e){try{const r=t.match(dee);if(!r)throw new Error("invalid data");return new Sl(200,"OK",{"content-type":r[1]||"text/plain"},r[2]?nee(r[3]):gee(r[3]))}catch{return new Sl(599,"BAD REQUEST (invalid data: URI)",{},null,new Zc(t))}}function CN(t){async function e(r,n){try{const s=r.match(pee);if(!s)throw new Error("invalid link");return new Zc(`${t}${s[2]}`)}catch{return new Sl(599,"BAD REQUEST (invalid IPFS URI)",{},null,new Zc(r))}}return e}const vm={data:NN,ipfs:CN("https://gateway.ipfs.io/ipfs/")},TN=new WeakMap;var dc,sl;class mee{constructor(e){Fe(this,dc,void 0);Fe(this,sl,void 0);le(this,dc,[]),le(this,sl,!1),TN.set(e,()=>{if(!te(this,sl)){le(this,sl,!0);for(const r of te(this,dc))setTimeout(()=>{r()},0);le(this,dc,[])}})}addListener(e){nt(!te(this,sl),"singal already cancelled","UNSUPPORTED_OPERATION",{operation:"fetchCancelSignal.addCancelListener"}),te(this,dc).push(e)}get cancelled(){return te(this,sl)}checkSignal(){nt(!this.cancelled,"cancelled","CANCELLED",{})}}dc=new WeakMap,sl=new WeakMap;function ym(t){if(t==null)throw new Error("missing signal; should not happen");return t.checkSignal(),t}var wh,Ah,Pa,ef,xh,Eh,ai,bs,tf,pc,mc,gc,co,rf,vc,F0;const wv=class{constructor(e){Fe(this,vc);Fe(this,wh,void 0);Fe(this,Ah,void 0);Fe(this,Pa,void 0);Fe(this,ef,void 0);Fe(this,xh,void 0);Fe(this,Eh,void 0);Fe(this,ai,void 0);Fe(this,bs,void 0);Fe(this,tf,void 0);Fe(this,pc,void 0);Fe(this,mc,void 0);Fe(this,gc,void 0);Fe(this,co,void 0);Fe(this,rf,void 0);le(this,Eh,String(e)),le(this,wh,!1),le(this,Ah,!0),le(this,Pa,{}),le(this,ef,""),le(this,xh,3e5),le(this,rf,{slotInterval:hee,maxAttempts:uee})}get url(){return te(this,Eh)}set url(e){le(this,Eh,String(e))}get body(){return te(this,ai)==null?null:new Uint8Array(te(this,ai))}set body(e){if(e==null)le(this,ai,void 0),le(this,bs,void 0);else if(typeof e=="string")le(this,ai,xf(e)),le(this,bs,"text/plain");else if(e instanceof Uint8Array)le(this,ai,e),le(this,bs,"application/octet-stream");else if(typeof e=="object")le(this,ai,xf(JSON.stringify(e))),le(this,bs,"application/json");else throw new Error("invalid body")}hasBody(){return te(this,ai)!=null}get method(){return te(this,ef)?te(this,ef):this.hasBody()?"POST":"GET"}set method(e){e==null&&(e=""),le(this,ef,String(e).toUpperCase())}get headers(){const e=Object.assign({},te(this,Pa));return te(this,tf)&&(e.authorization=`Basic ${iee(xf(te(this,tf)))}`),this.allowGzip&&(e["accept-encoding"]="gzip"),e["content-type"]==null&&te(this,bs)&&(e["content-type"]=te(this,bs)),this.body&&(e["content-length"]=String(this.body.length)),e}getHeader(e){return this.headers[e.toLowerCase()]}setHeader(e,r){te(this,Pa)[String(e).toLowerCase()]=String(r)}clearHeaders(){le(this,Pa,{})}[Symbol.iterator](){const e=this.headers,r=Object.keys(e);let n=0;return{next:()=>{if(n=0,"timeout must be non-zero","timeout",e),le(this,xh,e)}get preflightFunc(){return te(this,pc)||null}set preflightFunc(e){le(this,pc,e)}get processFunc(){return te(this,mc)||null}set processFunc(e){le(this,mc,e)}get retryFunc(){return te(this,gc)||null}set retryFunc(e){le(this,gc,e)}toString(){return``}setThrottleParams(e){e.slotInterval!=null&&(te(this,rf).slotInterval=e.slotInterval),e.maxAttempts!=null&&(te(this,rf).maxAttempts=e.maxAttempts)}send(){return nt(te(this,co)==null,"request already sent","UNSUPPORTED_OPERATION",{operation:"fetchRequest.send"}),le(this,co,new mee(this)),ct(this,vc,F0).call(this,0,pE()+this.timeout,0,this,new Sl(0,"",{},null,this))}cancel(){nt(te(this,co)!=null,"request has not been sent","UNSUPPORTED_OPERATION",{operation:"fetchRequest.cancel"});const e=TN.get(this);if(!e)throw new Error("missing signal; should not happen");e()}redirect(e){const r=this.url.split(":")[0].toLowerCase(),n=e.split(":")[0].toLowerCase();nt(this.method==="GET"&&(r!=="https"||n!=="http")&&e.match(/^https?:/),"unsupported redirect","UNSUPPORTED_OPERATION",{operation:`redirect(${this.method} ${JSON.stringify(this.url)} => ${JSON.stringify(e)})`});const s=new wv(e);return s.method="GET",s.allowGzip=this.allowGzip,s.timeout=this.timeout,le(s,Pa,Object.assign({},te(this,Pa))),te(this,ai)&&le(s,ai,new Uint8Array(te(this,ai))),le(s,bs,te(this,bs)),s}clone(){const e=new wv(this.url);return le(e,ef,te(this,ef)),te(this,ai)&&le(e,ai,te(this,ai)),le(e,bs,te(this,bs)),le(e,Pa,Object.assign({},te(this,Pa))),le(e,tf,te(this,tf)),this.allowGzip&&(e.allowGzip=!0),e.timeout=this.timeout,this.allowInsecureAuthentication&&(e.allowInsecureAuthentication=!0),le(e,pc,te(this,pc)),le(e,mc,te(this,mc)),le(e,gc,te(this,gc)),e}static lockConfig(){j2=!0}static getGateway(e){return vm[e.toLowerCase()]||null}static registerGateway(e,r){if(e=e.toLowerCase(),e==="http"||e==="https")throw new Error(`cannot intercept ${e}; use registerGetUrl`);if(j2)throw new Error("gateways locked");vm[e]=r}static registerGetUrl(e){if(j2)throw new Error("gateways locked");dE=e}static createDataGateway(){return NN}static createIpfsGatewayFunc(e){return CN(e)}};let Zc=wv;wh=new WeakMap,Ah=new WeakMap,Pa=new WeakMap,ef=new WeakMap,xh=new WeakMap,Eh=new WeakMap,ai=new WeakMap,bs=new WeakMap,tf=new WeakMap,pc=new WeakMap,mc=new WeakMap,gc=new WeakMap,co=new WeakMap,rf=new WeakMap,vc=new WeakSet,F0=async function(e,r,n,s,i){var p,d,v;if(e>=te(this,rf).maxAttempts)return i.makeServerError("exceeded maximum retry limit");nt(pE()<=r,"timeout","TIMEOUT",{operation:"request.send",reason:"timeout",request:s}),n>0&&await vee(n);let o=this.clone();const f=(o.url.split(":")[0]||"").toLowerCase();if(f in vm){const w=await vm[f](o.url,ym(te(s,co)));if(w instanceof Sl){let A=w;if(this.processFunc){ym(te(s,co));try{A=await this.processFunc(o,A)}catch(M){(M.throttle==null||typeof M.stall!="number")&&A.makeServerError("error in post-processing function",M).assertOk()}}return A}o=w}this.preflightFunc&&(o=await this.preflightFunc(o));const u=await dE(o,ym(te(s,co)));let h=new Sl(u.statusCode,u.statusMessage,u.headers,u.body,s);if(h.statusCode===301||h.statusCode===302){try{const w=h.headers.location||"";return ct(p=o.redirect(w),vc,F0).call(p,e+1,r,0,s,h)}catch{}return h}else if(h.statusCode===429&&(this.retryFunc==null||await this.retryFunc(o,h,e))){const w=h.headers["retry-after"];let A=te(this,rf).slotInterval*Math.trunc(Math.random()*Math.pow(2,e));return typeof w=="string"&&w.match(/^[1-9][0-9]*$/)&&(A=parseInt(w)),ct(d=o.clone(),vc,F0).call(d,e+1,r,A,s,h)}if(this.processFunc){ym(te(s,co));try{h=await this.processFunc(o,h)}catch(w){(w.throttle==null||typeof w.stall!="number")&&h.makeServerError("error in post-processing function",w).assertOk();let A=te(this,rf).slotInterval*Math.trunc(Math.random()*Math.pow(2,e));return w.stall>=0&&(A=w.stall),ct(v=o.clone(),vc,F0).call(v,e+1,r,A,s,h)}}return h};var qp,Gp,Vp,Oa,Mh,yc;const z6=class{constructor(e,r,n,s,i){Fe(this,qp,void 0);Fe(this,Gp,void 0);Fe(this,Vp,void 0);Fe(this,Oa,void 0);Fe(this,Mh,void 0);Fe(this,yc,void 0);le(this,qp,e),le(this,Gp,r),le(this,Vp,Object.keys(n).reduce((o,f)=>(o[f.toLowerCase()]=String(n[f]),o),{})),le(this,Oa,s==null?null:new Uint8Array(s)),le(this,Mh,i||null),le(this,yc,{message:""})}toString(){return``}get statusCode(){return te(this,qp)}get statusMessage(){return te(this,Gp)}get headers(){return Object.assign({},te(this,Vp))}get body(){return te(this,Oa)==null?null:new Uint8Array(te(this,Oa))}get bodyText(){try{return te(this,Oa)==null?"":N6(te(this,Oa))}catch{nt(!1,"response body is not valid UTF-8 data","UNSUPPORTED_OPERATION",{operation:"bodyText",info:{response:this}})}}get bodyJson(){try{return JSON.parse(this.bodyText)}catch{nt(!1,"response body is not valid JSON","UNSUPPORTED_OPERATION",{operation:"bodyJson",info:{response:this}})}}[Symbol.iterator](){const e=this.headers,r=Object.keys(e);let n=0;return{next:()=>{if(n=0,"invalid stall timeout","stall",r);const n=new Error(e||"throttling requests");throw Dt(n,{stall:r,throttle:!0}),n}getHeader(e){return this.headers[e.toLowerCase()]}hasBody(){return te(this,Oa)!=null}get request(){return te(this,Mh)}ok(){return te(this,yc).message===""&&this.statusCode>=200&&this.statusCode<300}assertOk(){if(this.ok())return;let{message:e,error:r}=te(this,yc);e===""&&(e=`server response ${this.statusCode} ${this.statusMessage}`),nt(!1,e,"SERVER_ERROR",{request:this.request||"unknown request",response:this,error:r})}};let Sl=z6;qp=new WeakMap,Gp=new WeakMap,Vp=new WeakMap,Oa=new WeakMap,Mh=new WeakMap,yc=new WeakMap;function pE(){return new Date().getTime()}function gee(t){return xf(t.replace(/%([0-9a-f][0-9a-f])/gi,(e,r)=>String.fromCharCode(parseInt(r,16))))}function vee(t){return new Promise(e=>setTimeout(e,t))}function yee(t){let e=t.toString(16);for(;e.length<2;)e="0"+e;return"0x"+e}function mE(t,e,r){let n=0;for(let s=0;s{nt(n<=t.length,"data short segment too short","BUFFER_OVERRUN",{buffer:t,length:t.length,offset:n})};if(t[e]>=248){const n=t[e]-247;r(e+1+n);const s=mE(t,e+1,n);return r(e+1+n+s),gE(t,e,e+1+n,n+s)}else if(t[e]>=192){const n=t[e]-192;return r(e+1+n),gE(t,e,e+1,n)}else if(t[e]>=184){const n=t[e]-183;r(e+1+n);const s=mE(t,e+1,n);r(e+1+n+s);const i=At(t.slice(e+1+n,e+1+n+s));return{consumed:1+n+s,result:i}}else if(t[e]>=128){const n=t[e]-128;r(e+1+n);const s=At(t.slice(e+1,e+1+n));return{consumed:1+n,result:s}}return{consumed:1,result:yee(t[e])}}function C6(t){const e=Br(t,"data"),r=kN(e,0);return ye(r.consumed===e.length,"unexpected junk after rlp payload","data",t),r.result}function vE(t){const e=[];for(;t;)e.unshift(t&255),t>>=8;return e}function BN(t){if(Array.isArray(t)){let n=[];if(t.forEach(function(i){n=n.concat(BN(i))}),n.length<=55)return n.unshift(192+n.length),n;const s=vE(n.length);return s.unshift(247+s.length),s.concat(n)}const e=Array.prototype.slice.call(Br(t,"object"));if(e.length===1&&e[0]<=127)return e;if(e.length<=55)return e.unshift(128+e.length),e;const r=vE(e.length);return r.unshift(183+r.length),r.concat(e)}const yE="0123456789abcdef";function Tp(t){let e="0x";for(const r of BN(t))e+=yE[r>>4],e+=yE[r&15];return e}const Wi=32,lA=new Uint8Array(Wi),bee=["then"],bm={};function S0(t,e){const r=new Error(`deferred error during ABI decoding triggered accessing ${t}`);throw r.error=e,r}var al;const $0=class extends Array{constructor(...r){const n=r[0];let s=r[1],i=(r[2]||[]).slice(),o=!0;n!==bm&&(s=r,i=[],o=!1);super(s.length);Fe(this,al,void 0);s.forEach((u,h)=>{this[h]=u});const f=i.reduce((u,h)=>(typeof h=="string"&&u.set(h,(u.get(h)||0)+1),u),new Map);if(le(this,al,Object.freeze(s.map((u,h)=>{const p=i[h];return p!=null&&f.get(p)===1?p:null}))),!!o)return Object.freeze(this),new Proxy(this,{get:(u,h,p)=>{if(typeof h=="string"){if(h.match(/^[0-9]+$/)){const v=br(h,"%index");if(v<0||v>=this.length)throw new RangeError("out of result range");const w=u[v];return w instanceof Error&&S0(`index ${v}`,w),w}if(bee.indexOf(h)>=0)return Reflect.get(u,h,p);const d=u[h];if(d instanceof Function)return function(...v){return d.apply(this===p?u:this,v)};if(!(h in u))return u.getValue.apply(this===p?u:this,[h])}return Reflect.get(u,h,p)}})}toArray(){const r=[];return this.forEach((n,s)=>{n instanceof Error&&S0(`index ${s}`,n),r.push(n)}),r}toObject(){return te(this,al).reduce((r,n,s)=>(nt(n!=null,"value at index ${ index } unnamed","UNSUPPORTED_OPERATION",{operation:"toObject()"}),n in r||(r[n]=this.getValue(n)),r),{})}slice(r,n){r==null&&(r=0),r<0&&(r+=this.length,r<0&&(r=0)),n==null&&(n=this.length),n<0&&(n+=this.length,n<0&&(n=0)),n>this.length&&(n=this.length);const s=[],i=[];for(let o=r;o{te(this,nf)[e]=bE(r)}}}nf=new WeakMap,bc=new WeakMap,Sh=new WeakSet,og=function(e){return te(this,nf).push(e),le(this,bc,te(this,bc)+e.length),e.length};var ws,Ws,Av,IN;const K6=class{constructor(e,r){Fe(this,Av);xe(this,"allowLoose");Fe(this,ws,void 0);Fe(this,Ws,void 0);Dt(this,{allowLoose:!!r}),le(this,ws,hs(e)),le(this,Ws,0)}get data(){return At(te(this,ws))}get dataLength(){return te(this,ws).length}get consumed(){return te(this,Ws)}get bytes(){return new Uint8Array(te(this,ws))}subReader(e){return new K6(te(this,ws).slice(te(this,Ws)+e),this.allowLoose)}readBytes(e,r){let n=ct(this,Av,IN).call(this,0,e,!!r);return le(this,Ws,te(this,Ws)+n.length),n.slice(0,e)}readValue(){return R6(this.readBytes(Wi))}readIndex(){return eee(this.readBytes(Wi))}};let uA=K6;ws=new WeakMap,Ws=new WeakMap,Av=new WeakSet,IN=function(e,r,n){let s=Math.ceil(r/Wi)*Wi;return te(this,Ws)+s>te(this,ws).length&&(this.allowLoose&&n&&te(this,Ws)+r<=te(this,ws).length?s=r:nt(!1,"data out-of-bounds","BUFFER_OVERRUN",{buffer:hs(te(this,ws)),length:te(this,ws).length,offset:te(this,Ws)+s})),te(this,ws).slice(te(this,Ws),te(this,Ws)+s)};function hA(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function wee(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function PN(t,...e){if(!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new TypeError(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Aee(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");hA(t.outputLen),hA(t.blockLen)}function xee(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Eee(t,e){PN(t);const r=e.outputLen;if(t.lengthnew Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),z2=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),no=(t,e)=>t<<32-e|t>>>e,See=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!See)throw new Error("Non little-endian hardware is not supported");Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function _ee(t){if(typeof t!="string")throw new TypeError(`utf8ToBytes expected string, got ${typeof t}`);return new TextEncoder().encode(t)}function L1(t){if(typeof t=="string"&&(t=_ee(t)),!(t instanceof Uint8Array))throw new TypeError(`Expected input type is Uint8Array (got ${typeof t})`);return t}class ov{clone(){return this._cloneInto()}}function D1(t){const e=n=>t().update(L1(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Ree(t){const e=(n,s)=>t(s).update(L1(n)).digest(),r=t({});return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}class ON extends ov{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ss.hash(e);const n=L1(r);if(this.iHash=e.create(),!(this.iHash instanceof ov))throw new TypeError("Expected instance of class which extends utils.Hash");const s=this.blockLen=this.iHash.blockLen;this.outputLen=this.iHash.outputLen;const i=new Uint8Array(s);i.set(n.length>this.iHash.blockLen?e.create().update(n).digest():n);for(let o=0;onew ON(t,e).update(r).digest();LN.create=(t,e)=>new ON(t,e);function Nee(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);const s=BigInt(32),i=BigInt(4294967295),o=Number(r>>s&i),f=Number(r&i),u=n?4:0,h=n?0:4;t.setUint32(e+u,o,n),t.setUint32(e+h,f,n)}class DN extends ov{constructor(e,r,n,s){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=z2(this.buffer)}update(e){Ss.exists(this);const{view:r,buffer:n,blockLen:s}=this;e=L1(e);const i=e.length;for(let o=0;os-o&&(this.process(n,0),o=0);for(let u=o;uf.setUint32(4*h,u,i))}digest(){const{buffer:e,outputLen:r}=this;this.digestInto(e);const n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:r,buffer:n,length:s,finished:i,destroyed:o,pos:f}=this;return e.length=s,e.pos=f,e.finished=i,e.destroyed=o,s%r&&e.buffer.set(n),e}}const Cee=(t,e,r)=>t&e^~t&r,Tee=(t,e,r)=>t&e^t&r^e&r,kee=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Zf=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Yf=new Uint32Array(64);class Bee extends DN{constructor(){super(64,32,8,!1),this.A=Zf[0]|0,this.B=Zf[1]|0,this.C=Zf[2]|0,this.D=Zf[3]|0,this.E=Zf[4]|0,this.F=Zf[5]|0,this.G=Zf[6]|0,this.H=Zf[7]|0}get(){const{A:e,B:r,C:n,D:s,E:i,F:o,G:f,H:u}=this;return[e,r,n,s,i,o,f,u]}set(e,r,n,s,i,o,f,u){this.A=e|0,this.B=r|0,this.C=n|0,this.D=s|0,this.E=i|0,this.F=o|0,this.G=f|0,this.H=u|0}process(e,r){for(let d=0;d<16;d++,r+=4)Yf[d]=e.getUint32(r,!1);for(let d=16;d<64;d++){const v=Yf[d-15],w=Yf[d-2],A=no(v,7)^no(v,18)^v>>>3,M=no(w,17)^no(w,19)^w>>>10;Yf[d]=M+Yf[d-7]+A+Yf[d-16]|0}let{A:n,B:s,C:i,D:o,E:f,F:u,G:h,H:p}=this;for(let d=0;d<64;d++){const v=no(f,6)^no(f,11)^no(f,25),w=p+v+Cee(f,u,h)+kee[d]+Yf[d]|0,M=(no(n,2)^no(n,13)^no(n,22))+Tee(n,s,i)|0;p=h,h=u,u=f,f=o+w|0,o=i,i=s,s=n,n=w+M|0}n=n+this.A|0,s=s+this.B|0,i=i+this.C|0,o=o+this.D|0,f=f+this.E|0,u=u+this.F|0,h=h+this.G|0,p=p+this.H|0,this.set(n,s,i,o,f,u,h,p)}roundClean(){Yf.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const Iee=D1(()=>new Bee),wm=BigInt(2**32-1),dA=BigInt(32);function FN(t,e=!1){return e?{h:Number(t&wm),l:Number(t>>dA&wm)}:{h:Number(t>>dA&wm)|0,l:Number(t&wm)|0}}function Pee(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let s=0;sBigInt(t>>>0)<>>0),Lee=(t,e,r)=>t>>>r,Dee=(t,e,r)=>t<<32-r|e>>>r,Fee=(t,e,r)=>t>>>r|e<<32-r,Uee=(t,e,r)=>t<<32-r|e>>>r,Hee=(t,e,r)=>t<<64-r|e>>>r-32,jee=(t,e,r)=>t>>>r-32|e<<64-r,zee=(t,e)=>e,Kee=(t,e)=>t,qee=(t,e,r)=>t<>>32-r,Gee=(t,e,r)=>e<>>32-r,Vee=(t,e,r)=>e<>>64-r,Wee=(t,e,r)=>t<>>64-r;function Zee(t,e,r,n){const s=(e>>>0)+(n>>>0);return{h:t+r+(s/2**32|0)|0,l:s|0}}const Yee=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Qee=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Xee=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Jee=(t,e,r,n,s)=>e+r+n+s+(t/2**32|0)|0,$ee=(t,e,r,n,s)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(s>>>0),ete=(t,e,r,n,s,i)=>e+r+n+s+i+(t/2**32|0)|0,jt={fromBig:FN,split:Pee,toBig:Oee,shrSH:Lee,shrSL:Dee,rotrSH:Fee,rotrSL:Uee,rotrBH:Hee,rotrBL:jee,rotr32H:zee,rotr32L:Kee,rotlSH:qee,rotlSL:Gee,rotlBH:Vee,rotlBL:Wee,add:Zee,add3L:Yee,add3H:Qee,add4L:Xee,add4H:Jee,add5H:ete,add5L:$ee},[tte,rte]=jt.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),Qf=new Uint32Array(80),Xf=new Uint32Array(80);class T6 extends DN{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:r,Bh:n,Bl:s,Ch:i,Cl:o,Dh:f,Dl:u,Eh:h,El:p,Fh:d,Fl:v,Gh:w,Gl:A,Hh:M,Hl:R}=this;return[e,r,n,s,i,o,f,u,h,p,d,v,w,A,M,R]}set(e,r,n,s,i,o,f,u,h,p,d,v,w,A,M,R){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=s|0,this.Ch=i|0,this.Cl=o|0,this.Dh=f|0,this.Dl=u|0,this.Eh=h|0,this.El=p|0,this.Fh=d|0,this.Fl=v|0,this.Gh=w|0,this.Gl=A|0,this.Hh=M|0,this.Hl=R|0}process(e,r){for(let B=0;B<16;B++,r+=4)Qf[B]=e.getUint32(r),Xf[B]=e.getUint32(r+=4);for(let B=16;B<80;B++){const O=Qf[B-15]|0,D=Xf[B-15]|0,q=jt.rotrSH(O,D,1)^jt.rotrSH(O,D,8)^jt.shrSH(O,D,7),W=jt.rotrSL(O,D,1)^jt.rotrSL(O,D,8)^jt.shrSL(O,D,7),k=Qf[B-2]|0,I=Xf[B-2]|0,H=jt.rotrSH(k,I,19)^jt.rotrBH(k,I,61)^jt.shrSH(k,I,6),P=jt.rotrSL(k,I,19)^jt.rotrBL(k,I,61)^jt.shrSL(k,I,6),T=jt.add4L(W,P,Xf[B-7],Xf[B-16]),g=jt.add4H(T,q,H,Qf[B-7],Qf[B-16]);Qf[B]=g|0,Xf[B]=T|0}let{Ah:n,Al:s,Bh:i,Bl:o,Ch:f,Cl:u,Dh:h,Dl:p,Eh:d,El:v,Fh:w,Fl:A,Gh:M,Gl:R,Hh:N,Hl:C}=this;for(let B=0;B<80;B++){const O=jt.rotrSH(d,v,14)^jt.rotrSH(d,v,18)^jt.rotrBH(d,v,41),D=jt.rotrSL(d,v,14)^jt.rotrSL(d,v,18)^jt.rotrBL(d,v,41),q=d&w^~d&M,W=v&A^~v&R,k=jt.add5L(C,D,W,rte[B],Xf[B]),I=jt.add5H(k,N,O,q,tte[B],Qf[B]),H=k|0,P=jt.rotrSH(n,s,28)^jt.rotrBH(n,s,34)^jt.rotrBH(n,s,39),T=jt.rotrSL(n,s,28)^jt.rotrBL(n,s,34)^jt.rotrBL(n,s,39),g=n&i^n&f^i&f,a=s&o^s&u^o&u;N=M|0,C=R|0,M=w|0,R=A|0,w=d|0,A=v|0,{h:d,l:v}=jt.add(h|0,p|0,I|0,H|0),h=f|0,p=u|0,f=i|0,u=o|0,i=n|0,o=s|0;const c=jt.add3L(H,T,a);n=jt.add3H(c,I,P,g),s=c|0}({h:n,l:s}=jt.add(this.Ah|0,this.Al|0,n|0,s|0)),{h:i,l:o}=jt.add(this.Bh|0,this.Bl|0,i|0,o|0),{h:f,l:u}=jt.add(this.Ch|0,this.Cl|0,f|0,u|0),{h,l:p}=jt.add(this.Dh|0,this.Dl|0,h|0,p|0),{h:d,l:v}=jt.add(this.Eh|0,this.El|0,d|0,v|0),{h:w,l:A}=jt.add(this.Fh|0,this.Fl|0,w|0,A|0),{h:M,l:R}=jt.add(this.Gh|0,this.Gl|0,M|0,R|0),{h:N,l:C}=jt.add(this.Hh|0,this.Hl|0,N|0,C|0),this.set(n,s,i,o,f,u,h,p,d,v,w,A,M,R,N,C)}roundClean(){Qf.fill(0),Xf.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class nte extends T6{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}class ite extends T6{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}const ste=D1(()=>new T6);D1(()=>new nte);D1(()=>new ite);function ate(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof r4<"u")return r4;throw new Error("unable to locate global object")}const wE=ate();wE.crypto||wE.msCrypto;function ote(t,e){const r={sha256:Iee,sha512:ste}[t];return ye(r!=null,"invalid hmac algorithm","algorithm",t),LN.create(r,e)}let UN=!1;const HN=function(t,e,r){return ote(t,e).update(r).digest()};let jN=HN;function F1(t,e,r){const n=Br(e,"key"),s=Br(r,"data");return At(jN(t,n,s))}F1._=HN;F1.lock=function(){UN=!0};F1.register=function(t){if(UN)throw new Error("computeHmac is locked");jN=t};Object.freeze(F1);const[zN,KN,qN]=[[],[],[]],fte=BigInt(0),_0=BigInt(1),lte=BigInt(2),cte=BigInt(7),ute=BigInt(256),hte=BigInt(113);for(let t=0,e=_0,r=1,n=0;t<24;t++){[r,n]=[n,(2*r+3*n)%5],zN.push(2*(5*n+r)),KN.push((t+1)*(t+2)/2%64);let s=fte;for(let i=0;i<7;i++)e=(e<<_0^(e>>cte)*hte)%ute,e<e&&(s^=_0<<(_0<r>32?jt.rotlBH(t,e,r):jt.rotlSH(t,e,r),xE=(t,e,r)=>r>32?jt.rotlBL(t,e,r):jt.rotlSL(t,e,r);function mte(t,e=24){const r=new Uint32Array(10);for(let n=24-e;n<24;n++){for(let o=0;o<10;o++)r[o]=t[o]^t[o+10]^t[o+20]^t[o+30]^t[o+40];for(let o=0;o<10;o+=2){const f=(o+8)%10,u=(o+2)%10,h=r[u],p=r[u+1],d=AE(h,p,1)^r[f],v=xE(h,p,1)^r[f+1];for(let w=0;w<50;w+=10)t[o+w]^=d,t[o+w+1]^=v}let s=t[2],i=t[3];for(let o=0;o<24;o++){const f=KN[o],u=AE(s,i,f),h=xE(s,i,f),p=zN[o];s=t[p],i=t[p+1],t[p]=u,t[p+1]=h}for(let o=0;o<50;o+=10){for(let f=0;f<10;f++)r[f]=t[o+f];for(let f=0;f<10;f++)t[o+f]^=~r[(f+2)%10]&r[(f+4)%10]}t[0]^=dte[n],t[1]^=pte[n]}r.fill(0)}class Oy extends ov{constructor(e,r,n,s=!1,i=24){if(super(),this.blockLen=e,this.suffix=r,this.outputLen=n,this.enableXOF=s,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Ss.number(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Mee(this.state)}keccak(){mte(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){Ss.exists(this);const{blockLen:r,state:n}=this;e=L1(e);const s=e.length;for(let i=0;i=n&&this.keccak();const o=Math.min(n-this.posOut,i-s);e.set(r.subarray(this.posOut,this.posOut+o),s),this.posOut+=o,s+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Ss.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Ss.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:r,suffix:n,outputLen:s,rounds:i,enableXOF:o}=this;return e||(e=new Oy(r,n,s,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=n,e.outputLen=s,e.enableXOF=o,e.destroyed=this.destroyed,e}}const Kl=(t,e,r)=>D1(()=>new Oy(e,t,r));Kl(6,144,224/8);Kl(6,136,256/8);Kl(6,104,384/8);Kl(6,72,512/8);Kl(1,144,224/8);const gte=Kl(1,136,256/8);Kl(1,104,384/8);Kl(1,72,512/8);const GN=(t,e,r)=>Ree((n={})=>new Oy(e,t,n.dkLen===void 0?r:n.dkLen,!0));GN(31,168,128/8);GN(31,136,256/8);let VN=!1;const WN=function(t){return gte(t)};let ZN=WN;function mn(t){const e=Br(t,"data");return At(ZN(e))}mn._=WN;mn.lock=function(){VN=!0};mn.register=function(t){if(VN)throw new TypeError("keccak256 is locked");ZN=t};Object.freeze(mn);var YN=X3();const vte=oT(YN),yte=aT({__proto__:null,default:vte},[YN]);/*! noble-secp256k1 - MIT License (c) 2019 Paul Miller (paulmillr.com) */const Tr=BigInt(0),pn=BigInt(1),wl=BigInt(2),Z0=BigInt(3),EE=BigInt(8),Pn=Object.freeze({a:Tr,b:BigInt(7),P:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:pn,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee")}),ME=(t,e)=>(t+e/wl)/e,Am={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar(t){const{n:e}=Pn,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-pn*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=r,o=BigInt("0x100000000000000000000000000000000"),f=ME(i*t,e),u=ME(-n*t,e);let h=dt(t-f*r-u*s,e),p=dt(-f*n-u*i,e);const d=h>o,v=p>o;if(d&&(h=e-h),v&&(p=e-p),h>o||p>o)throw new Error("splitScalarEndo: Endomorphism failed, k="+t);return{k1neg:d,k1:h,k2neg:v,k2:p}}},ja=32,Sd=32,bte=32,fv=ja+1,lv=2*ja+1;function SE(t){const{a:e,b:r}=Pn,n=dt(t*t),s=dt(n*t);return dt(s+e*t+r)}const xm=Pn.a===Tr;class QN extends Error{constructor(e){super(e)}}function _E(t){if(!(t instanceof Ur))throw new TypeError("JacobianPoint expected")}class Ur{constructor(e,r,n){this.x=e,this.y=r,this.z=n}static fromAffine(e){if(!(e instanceof Wr))throw new TypeError("JacobianPoint#fromAffine: expected Point");return e.equals(Wr.ZERO)?Ur.ZERO:new Ur(e.x,e.y,pn)}static toAffineBatch(e){const r=Mte(e.map(n=>n.z));return e.map((n,s)=>n.toAffine(r[s]))}static normalizeZ(e){return Ur.toAffineBatch(e).map(Ur.fromAffine)}equals(e){_E(e);const{x:r,y:n,z:s}=this,{x:i,y:o,z:f}=e,u=dt(s*s),h=dt(f*f),p=dt(r*h),d=dt(i*u),v=dt(dt(n*f)*h),w=dt(dt(o*s)*u);return p===d&&v===w}negate(){return new Ur(this.x,dt(-this.y),this.z)}double(){const{x:e,y:r,z:n}=this,s=dt(e*e),i=dt(r*r),o=dt(i*i),f=e+i,u=dt(wl*(dt(f*f)-s-o)),h=dt(Z0*s),p=dt(h*h),d=dt(p-wl*u),v=dt(h*(u-d)-EE*o),w=dt(wl*r*n);return new Ur(d,v,w)}add(e){_E(e);const{x:r,y:n,z:s}=this,{x:i,y:o,z:f}=e;if(i===Tr||o===Tr)return this;if(r===Tr||n===Tr)return e;const u=dt(s*s),h=dt(f*f),p=dt(r*h),d=dt(i*u),v=dt(dt(n*f)*h),w=dt(dt(o*s)*u),A=dt(d-p),M=dt(w-v);if(A===Tr)return M===Tr?this.double():Ur.ZERO;const R=dt(A*A),N=dt(A*R),C=dt(p*R),B=dt(M*M-N-wl*C),O=dt(M*(C-B)-v*N),D=dt(s*f*A);return new Ur(B,O,D)}subtract(e){return this.add(e.negate())}multiplyUnsafe(e){const r=Ur.ZERO;if(typeof e=="bigint"&&e===Tr)return r;let n=CE(e);if(n===pn)return this;if(!xm){let d=r,v=this;for(;n>Tr;)n&pn&&(d=d.add(v)),v=v.double(),n>>=pn;return d}let{k1neg:s,k1:i,k2neg:o,k2:f}=Am.splitScalar(n),u=r,h=r,p=this;for(;i>Tr||f>Tr;)i&pn&&(u=u.add(p)),f&pn&&(h=h.add(p)),p=p.double(),i>>=pn,f>>=pn;return s&&(u=u.negate()),o&&(h=h.negate()),h=new Ur(dt(h.x*Am.beta),h.y,h.z),u.add(h)}precomputeWindow(e){const r=xm?128/e+1:256/e+1,n=[];let s=this,i=s;for(let o=0;o>=d,A>u&&(A-=p,e+=pn);const M=w,R=w+Math.abs(A)-1,N=v%2!==0,C=A<0;A===0?o=o.add(Em(N,s[M])):i=i.add(Em(C,s[R]))}return{p:i,f:o}}multiply(e,r){let n=CE(e),s,i;if(xm){const{k1neg:o,k1:f,k2neg:u,k2:h}=Am.splitScalar(n);let{p,f:d}=this.wNAF(f,r),{p:v,f:w}=this.wNAF(h,r);p=Em(o,p),v=Em(u,v),v=new Ur(dt(v.x*Am.beta),v.y,v.z),s=p.add(v),i=d.add(w)}else{const{p:o,f}=this.wNAF(n,r);s=o,i=f}return Ur.normalizeZ([s,i])[0]}toAffine(e){const{x:r,y:n,z:s}=this,i=this.equals(Ur.ZERO);e==null&&(e=i?EE:U1(s));const o=e,f=dt(o*o),u=dt(f*o),h=dt(r*f),p=dt(n*u),d=dt(s*o);if(i)return Wr.ZERO;if(d!==pn)throw new Error("invZ was invalid");return new Wr(h,p)}}Ur.BASE=new Ur(Pn.Gx,Pn.Gy,pn);Ur.ZERO=new Ur(Tr,pn,Tr);function Em(t,e){const r=e.negate();return t?r:e}const pA=new WeakMap;class Wr{constructor(e,r){this.x=e,this.y=r}_setWindowSize(e){this._WINDOW_SIZE=e,pA.delete(this)}hasEvenY(){return this.y%wl===Tr}static fromCompressedHex(e){const r=e.length===32,n=_l(r?e:e.subarray(1));if(!K2(n))throw new Error("Point is not on curve");const s=SE(n);let i=Ete(s);const o=(i&pn)===pn;r?o&&(i=dt(-i)):(e[0]&1)===1!==o&&(i=dt(-i));const f=new Wr(n,i);return f.assertValidity(),f}static fromUncompressedHex(e){const r=_l(e.subarray(1,ja+1)),n=_l(e.subarray(ja+1,ja*2+1)),s=new Wr(r,n);return s.assertValidity(),s}static fromHex(e){const r=kp(e),n=r.length,s=r[0];if(n===ja)return this.fromCompressedHex(r);if(n===fv&&(s===2||s===3))return this.fromCompressedHex(r);if(n===lv&&s===4)return this.fromUncompressedHex(r);throw new Error(`Point.fromHex: received invalid point. Expected 32-${fv} compressed bytes or ${lv} uncompressed bytes, not ${n}`)}static fromPrivateKey(e){return Wr.BASE.multiply(Ip(e))}static fromSignature(e,r,n){const{r:s,s:i}=Cte(r);if(![0,1,2,3].includes(n))throw new Error("Cannot recover: invalid recovery bit");const o=XN(kp(e)),{n:f}=Pn,u=n===2||n===3?s+f:s,h=U1(u,f),p=dt(-o*h,f),d=dt(i*h,f),v=n&1?"03":"02",w=Wr.fromHex(v+vh(u)),A=Wr.BASE.multiplyAndAddUnsafe(w,p,d);if(!A)throw new Error("Cannot recover signature: point at infinify");return A.assertValidity(),A}toRawBytes(e=!1){return Dc(this.toHex(e))}toHex(e=!1){const r=vh(this.x);return e?`${this.hasEvenY()?"02":"03"}${r}`:`04${r}${vh(this.y)}`}toHexX(){return this.toHex(!0).slice(2)}toRawX(){return this.toRawBytes(!0).slice(1)}assertValidity(){const e="Point is not on elliptic curve",{x:r,y:n}=this;if(!K2(r)||!K2(n))throw new Error(e);const s=dt(n*n),i=SE(r);if(dt(s-i)!==Tr)throw new Error(e)}equals(e){return this.x===e.x&&this.y===e.y}negate(){return new Wr(this.x,dt(-this.y))}double(){return Ur.fromAffine(this).double().toAffine()}add(e){return Ur.fromAffine(this).add(Ur.fromAffine(e)).toAffine()}subtract(e){return this.add(e.negate())}multiply(e){return Ur.fromAffine(this).multiply(e,this).toAffine()}multiplyAndAddUnsafe(e,r,n){const s=Ur.fromAffine(this),i=r===Tr||r===pn||this!==Wr.BASE?s.multiplyUnsafe(r):s.multiply(r),o=Ur.fromAffine(e).multiplyUnsafe(n),f=i.add(o);return f.equals(Ur.ZERO)?void 0:f.toAffine()}}Wr.BASE=new Wr(Pn.Gx,Pn.Gy);Wr.ZERO=new Wr(Tr,Tr);function RE(t){return Number.parseInt(t[0],16)>=8?"00"+t:t}function NE(t){if(t.length<2||t[0]!==2)throw new Error(`Invalid signature integer tag: ${_d(t)}`);const e=t[1],r=t.subarray(2,e+2);if(!e||r.length!==e)throw new Error("Invalid signature integer: wrong length");if(r[0]===0&&r[1]<=127)throw new Error("Invalid signature integer: trailing length");return{data:_l(r),left:t.subarray(e+2)}}function wte(t){if(t.length<2||t[0]!=48)throw new Error(`Invalid signature tag: ${_d(t)}`);if(t[1]!==t.length-2)throw new Error("Invalid signature: incorrect length");const{data:e,left:r}=NE(t.subarray(2)),{data:n,left:s}=NE(r);if(s.length)throw new Error(`Invalid signature: left bytes after parsing: ${_d(s)}`);return{r:e,s:n}}let gh=class fg{constructor(e,r){this.r=e,this.s=r,this.assertValidity()}static fromCompact(e){const r=e instanceof Uint8Array,n="Signature.fromCompact";if(typeof e!="string"&&!r)throw new TypeError(`${n}: Expected string or Uint8Array`);const s=r?_d(e):e;if(s.length!==128)throw new Error(`${n}: Expected 64-byte hex`);return new fg(cv(s.slice(0,64)),cv(s.slice(64,128)))}static fromDER(e){const r=e instanceof Uint8Array;if(typeof e!="string"&&!r)throw new TypeError("Signature.fromDER: Expected string or Uint8Array");const{r:n,s}=wte(r?e:Dc(e));return new fg(n,s)}static fromHex(e){return this.fromDER(e)}assertValidity(){const{r:e,s:r}=this;if(!Bp(e))throw new Error("Invalid Signature: r must be 0 < r < n");if(!Bp(r))throw new Error("Invalid Signature: s must be 0 < s < n")}hasHighS(){const e=Pn.n>>pn;return this.s>e}normalizeS(){return this.hasHighS()?new fg(this.r,dt(-this.s,Pn.n)):this}toDERRawBytes(){return Dc(this.toDERHex())}toDERHex(){const e=RE(R0(this.s)),r=RE(R0(this.r)),n=e.length/2,s=r.length/2,i=R0(n),o=R0(s);return`30${R0(s+n+4)}02${o}${r}02${i}${e}`}toRawBytes(){return this.toDERRawBytes()}toHex(){return this.toDERHex()}toCompactRawBytes(){return Dc(this.toCompactHex())}toCompactHex(){return vh(this.r)+vh(this.s)}};function il(...t){if(!t.every(n=>n instanceof Uint8Array))throw new Error("Uint8Array list expected");if(t.length===1)return t[0];const e=t.reduce((n,s)=>n+s.length,0),r=new Uint8Array(e);for(let n=0,s=0;ne.toString(16).padStart(2,"0"));function _d(t){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");let e="";for(let r=0;r0)return BigInt(t);if(typeof t=="bigint"&&Bp(t))return t;throw new TypeError("Expected valid private scalar: 0 < scalar < curve.n")}function dt(t,e=Pn.P){const r=t%e;return r>=Tr?r:e+r}function Us(t,e){const{P:r}=Pn;let n=t;for(;e-- >Tr;)n*=n,n%=r;return n}function Ete(t){const{P:e}=Pn,r=BigInt(6),n=BigInt(11),s=BigInt(22),i=BigInt(23),o=BigInt(44),f=BigInt(88),u=t*t*t%e,h=u*u*t%e,p=Us(h,Z0)*h%e,d=Us(p,Z0)*h%e,v=Us(d,wl)*u%e,w=Us(v,n)*v%e,A=Us(w,s)*w%e,M=Us(A,o)*A%e,R=Us(M,f)*M%e,N=Us(R,o)*A%e,C=Us(N,Z0)*h%e,B=Us(C,i)*w%e,O=Us(B,r)*u%e,D=Us(O,wl);if(D*D%e!==t)throw new Error("Cannot find square root");return D}function U1(t,e=Pn.P){if(t===Tr||e<=Tr)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=dt(t,e),n=e,s=Tr,i=pn;for(;r!==Tr;){const f=n/r,u=n%r,h=s-i*f;n=r,r=u,s=i,i=h}if(n!==pn)throw new Error("invert: does not exist");return dt(s,e)}function Mte(t,e=Pn.P){const r=new Array(t.length),n=t.reduce((i,o,f)=>o===Tr?i:(r[f]=i,dt(i*o,e)),pn),s=U1(n,e);return t.reduceRight((i,o,f)=>o===Tr?i:(r[f]=dt(i*r[f],e),dt(i*o,e)),s),r}function Ste(t){const e=t.length*8-Sd*8,r=_l(t);return e>0?r>>BigInt(e):r}function XN(t,e=!1){const r=Ste(t);if(e)return r;const{n}=Pn;return r>=n?r-n:r}let yh,Y0;class _te{constructor(e,r){if(this.hashLen=e,this.qByteLen=r,typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof r!="number"||r<2)throw new Error("qByteLen must be a number");this.v=new Uint8Array(e).fill(1),this.k=new Uint8Array(e).fill(0),this.counter=0}hmac(...e){return Al.hmacSha256(this.k,...e)}hmacSync(...e){return Y0(this.k,...e)}checkSync(){if(typeof Y0!="function")throw new QN("hmacSha256Sync needs to be set")}incr(){if(this.counter>=1e3)throw new Error("Tried 1,000 k values for sign(), all were invalid");this.counter+=1}async reseed(e=new Uint8Array){this.k=await this.hmac(this.v,Uint8Array.from([0]),e),this.v=await this.hmac(this.v),e.length!==0&&(this.k=await this.hmac(this.v,Uint8Array.from([1]),e),this.v=await this.hmac(this.v))}reseedSync(e=new Uint8Array){this.checkSync(),this.k=this.hmacSync(this.v,Uint8Array.from([0]),e),this.v=this.hmacSync(this.v),e.length!==0&&(this.k=this.hmacSync(this.v,Uint8Array.from([1]),e),this.v=this.hmacSync(this.v))}async generate(){this.incr();let e=0;const r=[];for(;e0)e=BigInt(t);else if(typeof t=="string"){if(t.length!==2*Sd)throw new Error("Expected 32 bytes of private key");e=cv(t)}else if(t instanceof Uint8Array){if(t.length!==Sd)throw new Error("Expected 32 bytes of private key");e=_l(t)}else throw new TypeError("Expected valid private key");if(!Bp(e))throw new Error("Expected private key: 0 < key < n");return e}function Nte(t){return t instanceof Wr?(t.assertValidity(),t):Wr.fromHex(t)}function Cte(t){if(t instanceof gh)return t.assertValidity(),t;try{return gh.fromDER(t)}catch{return gh.fromCompact(t)}}function Tte(t,e=!1){return Wr.fromPrivateKey(t).toRawBytes(e)}function kte(t,e,r,n=!1){return Wr.fromSignature(t,e,r).toRawBytes(n)}function TE(t){const e=t instanceof Uint8Array,r=typeof t=="string",n=(e||r)&&t.length;return e?n===fv||n===lv:r?n===fv*2||n===lv*2:t instanceof Wr}function Bte(t,e,r=!1){if(TE(t))throw new TypeError("getSharedSecret: first arg must be private key");if(!TE(e))throw new TypeError("getSharedSecret: second arg must be public key");const n=Nte(e);return n.assertValidity(),n.multiply(Ip(t)).toRawBytes(r)}function JN(t){const e=t.length>ja?t.slice(0,ja):t;return _l(e)}function Ite(t){const e=JN(t),r=dt(e,Pn.n);return $N(r{t=kp(t);const e=Sd+8;if(t.length1024)throw new Error("Expected valid bytes of private key as per FIPS 186");const r=dt(_l(t),Pn.n-pn)+pn;return mA(r)},randomBytes:(t=32)=>{if(ys.web)return ys.web.getRandomValues(new Uint8Array(t));if(ys.node){const{randomBytes:e}=ys.node;return Uint8Array.from(e(t))}else throw new Error("The environment doesn't have randomBytes function")},randomPrivateKey:()=>Al.hashToPrivateKey(Al.randomBytes(Sd+8)),precompute(t=8,e=Wr.BASE){const r=e===Wr.BASE?e:new Wr(e.x,e.y);return r._setWindowSize(t),r.multiply(Z0),r},sha256:async(...t)=>{if(ys.web){const e=await ys.web.subtle.digest("SHA-256",il(...t));return new Uint8Array(e)}else if(ys.node){const{createHash:e}=ys.node,r=e("sha256");return t.forEach(n=>r.update(n)),Uint8Array.from(r.digest())}else throw new Error("The environment doesn't have sha256 function")},hmacSha256:async(t,...e)=>{if(ys.web){const r=await ys.web.subtle.importKey("raw",t,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]),n=il(...e),s=await ys.web.subtle.sign("HMAC",r,n);return new Uint8Array(s)}else if(ys.node){const{createHmac:r}=ys.node,n=r("sha256",t);return e.forEach(s=>n.update(s)),Uint8Array.from(n.digest())}else throw new Error("The environment doesn't have hmac-sha256 function")},sha256Sync:void 0,hmacSha256Sync:void 0,taggedHash:async(t,...e)=>{let r=Mm[t];if(r===void 0){const n=await Al.sha256(Uint8Array.from(t,s=>s.charCodeAt(0)));r=il(n,n),Mm[t]=r}return Al.sha256(r,...e)},taggedHashSync:(t,...e)=>{if(typeof yh!="function")throw new QN("sha256Sync is undefined, you need to set it");let r=Mm[t];if(r===void 0){const n=yh(Uint8Array.from(t,s=>s.charCodeAt(0)));r=il(n,n),Mm[t]=r}return yh(r,...e)},_JacobianPoint:Ur};Object.defineProperties(Al,{sha256Sync:{configurable:!1,get(){return yh},set(t){yh||(yh=t)}},hmacSha256Sync:{configurable:!1,get(){return Y0},set(t){Y0||(Y0=t)}}});const gA="0x0000000000000000000000000000000000000000",kE="0x0000000000000000000000000000000000000000000000000000000000000000",BE=BigInt(0),IE=BigInt(1),PE=BigInt(2),OE=BigInt(27),LE=BigInt(28),Sm=BigInt(35),Cu={};function DE(t){return Wc(_s(t),32)}var _h,Rh,Nh,wc;const Ca=class{constructor(e,r,n,s){Fe(this,_h,void 0);Fe(this,Rh,void 0);Fe(this,Nh,void 0);Fe(this,wc,void 0);By(e,Cu,"Signature"),le(this,_h,r),le(this,Rh,n),le(this,Nh,s),le(this,wc,null)}get r(){return te(this,_h)}set r(e){ye(mh(e)===32,"invalid r","value",e),le(this,_h,At(e))}get s(){return te(this,Rh)}set s(e){ye(mh(e)===32,"invalid s","value",e);const r=At(e);ye(parseInt(r.substring(0,3))<8,"non-canonical s","value",r),le(this,Rh,r)}get v(){return te(this,Nh)}set v(e){const r=br(e,"value");ye(r===27||r===28,"invalid v","v",e),le(this,Nh,r)}get networkV(){return te(this,wc)}get legacyChainId(){const e=this.networkV;return e==null?null:Ca.getChainId(e)}get yParity(){return this.v===27?0:1}get yParityAndS(){const e=Br(this.s);return this.yParity&&(e[0]|=128),At(e)}get compactSerialized(){return jn([this.r,this.yParityAndS])}get serialized(){return jn([this.r,this.s,this.yParity?"0x1c":"0x1b"])}[Symbol.for("nodejs.util.inspect.custom")](){return`Signature { r: "${this.r}", s: "${this.s}", yParity: ${this.yParity}, networkV: ${this.networkV} }`}clone(){const e=new Ca(Cu,this.r,this.s,this.v);return this.networkV&&le(e,wc,this.networkV),e}toJSON(){const e=this.networkV;return{_type:"signature",networkV:e!=null?e.toString():null,r:this.r,s:this.s,v:this.v}}static getChainId(e){const r=St(e,"v");return r==OE||r==LE?BE:(ye(r>=Sm,"invalid EIP-155 v","v",e),(r-Sm)/PE)}static getChainIdV(e,r){return St(e)*PE+BigInt(35+r-27)}static getNormalizedV(e){const r=St(e);return r===BE||r===OE?27:r===IE||r===LE?28:(ye(r>=Sm,"invalid v","v",e),r&IE?27:28)}static from(e){function r(h,p){ye(h,p,"signature",e)}if(e==null)return new Ca(Cu,kE,kE,27);if(typeof e=="string"){const h=Br(e,"signature");if(h.length===64){const p=At(h.slice(0,32)),d=h.slice(32,64),v=d[0]&128?28:27;return d[0]&=127,new Ca(Cu,p,At(d),v)}if(h.length===65){const p=At(h.slice(0,32)),d=h.slice(32,64);r((d[0]&128)===0,"non-canonical s");const v=Ca.getNormalizedV(h[64]);return new Ca(Cu,p,At(d),v)}r(!1,"invalid raw signature length")}if(e instanceof Ca)return e.clone();const n=e.r;r(n!=null,"missing r");const s=DE(n),i=function(h,p){if(h!=null)return DE(h);if(p!=null){r(Mn(p,32),"invalid yParityAndS");const d=Br(p);return d[0]&=127,At(d)}r(!1,"missing s")}(e.s,e.yParityAndS);r((Br(i)[0]&128)==0,"non-canonical s");const{networkV:o,v:f}=function(h,p,d){if(h!=null){const v=St(h);return{networkV:v>=Sm?v:void 0,v:Ca.getNormalizedV(v)}}if(p!=null)return r(Mn(p,32),"invalid yParityAndS"),{v:Br(p)[0]&128?28:27};if(d!=null){switch(d){case 0:return{v:27};case 1:return{v:28}}r(!1,"invalid yParity")}r(!1,"missing v")}(e.v,e.yParityAndS,e.yParity),u=new Ca(Cu,s,i,f);return o&&le(u,wc,o),r(!("yParity"in e&&e.yParity!==u.yParity),"yParity mismatch"),r(!("yParityAndS"in e&&e.yParityAndS!==u.yParityAndS),"yParityAndS mismatch"),u}};let Va=Ca;_h=new WeakMap,Rh=new WeakMap,Nh=new WeakMap,wc=new WeakMap;Al.hmacSha256Sync=function(t,...e){return Br(F1("sha256",t,jn(e)))};var sf;const oc=class{constructor(e){Fe(this,sf,void 0);ye(mh(e)===32,"invalid private key","privateKey","[REDACTED]"),le(this,sf,At(e))}get privateKey(){return te(this,sf)}get publicKey(){return oc.computePublicKey(te(this,sf))}get compressedPublicKey(){return oc.computePublicKey(te(this,sf),!0)}sign(e){ye(mh(e)===32,"invalid digest length","digest",e);const[r,n]=Lte(hs(e),hs(te(this,sf)),{recovered:!0,canonical:!0}),s=gh.fromHex(r);return Va.from({r:Il("0x"+s.r.toString(16),32),s:Il("0x"+s.s.toString(16),32),v:n?28:27})}computeSharedSecret(e){const r=oc.computePublicKey(e);return At(Bte(hs(te(this,sf)),Br(r)))}static computePublicKey(e,r){let n=Br(e,"key");if(n.length===32){const i=Tte(n,!!r);return At(i)}if(n.length===64){const i=new Uint8Array(65);i[0]=4,i.set(n,1),n=i}const s=Wr.fromHex(n);return At(s.toRawBytes(r))}static recoverPublicKey(e,r){ye(mh(e)===32,"invalid digest length","digest",e);const n=Va.from(r),s=gh.fromCompact(hs(jn([n.r,n.s]))).toDERRawBytes(),i=kte(hs(e),s,n.yParity);return ye(i!=null,"invalid signautre for digest","signature",r),At(i)}static addPoints(e,r,n){const s=Wr.fromHex(oc.computePublicKey(e).substring(2)),i=Wr.fromHex(oc.computePublicKey(r).substring(2));return"0x"+s.add(i).toHex(!!n)}};let Pp=oc;sf=new WeakMap;const Dte=BigInt(0),Fte=BigInt(36);function FE(t){t=t.toLowerCase();const e=t.substring(2).split(""),r=new Uint8Array(40);for(let s=0;s<40;s++)r[s]=e[s].charCodeAt(0);const n=Br(mn(r));for(let s=0;s<40;s+=2)n[s>>1]>>4>=8&&(e[s]=e[s].toUpperCase()),(n[s>>1]&15)>=8&&(e[s+1]=e[s+1].toUpperCase());return"0x"+e.join("")}const k6={};for(let t=0;t<10;t++)k6[String(t)]=String(t);for(let t=0;t<26;t++)k6[String.fromCharCode(65+t)]=String(10+t);const UE=15;function Ute(t){t=t.toUpperCase(),t=t.substring(4)+t.substring(0,2)+"00";let e=t.split("").map(n=>k6[n]).join("");for(;e.length>=UE;){let n=e.substring(0,UE);e=parseInt(n,10)%97+e.substring(n.length)}let r=String(98-parseInt(e,10)%97);for(;r.length<2;)r="0"+r;return r}const Hte=function(){const t={};for(let e=0;e<36;e++){const r="0123456789abcdefghijklmnopqrstuvwxyz"[e];t[r]=BigInt(e)}return t}();function jte(t){t=t.toLowerCase();let e=Dte;for(let r=0;re.format()).join(",")})`:this.type}defaultValue(){return 0}minValue(){return 0}maxValue(){return 0}isBigInt(){return!!this.type.match(/^u?int[0-9]+$/)}isData(){return this.type.startsWith("bytes")}isString(){return this.type==="string"}get tupleName(){if(this.type!=="tuple")throw TypeError("not a tuple");return te(this,Ac)}get arrayLength(){if(this.type!=="array")throw TypeError("not an array");return te(this,Ac)===!0?-1:te(this,Ac)===!1?this.value.length:null}static from(e,r){return new Xo(Qo,e,r)}static uint8(e){return ht(e,8)}static uint16(e){return ht(e,16)}static uint24(e){return ht(e,24)}static uint32(e){return ht(e,32)}static uint40(e){return ht(e,40)}static uint48(e){return ht(e,48)}static uint56(e){return ht(e,56)}static uint64(e){return ht(e,64)}static uint72(e){return ht(e,72)}static uint80(e){return ht(e,80)}static uint88(e){return ht(e,88)}static uint96(e){return ht(e,96)}static uint104(e){return ht(e,104)}static uint112(e){return ht(e,112)}static uint120(e){return ht(e,120)}static uint128(e){return ht(e,128)}static uint136(e){return ht(e,136)}static uint144(e){return ht(e,144)}static uint152(e){return ht(e,152)}static uint160(e){return ht(e,160)}static uint168(e){return ht(e,168)}static uint176(e){return ht(e,176)}static uint184(e){return ht(e,184)}static uint192(e){return ht(e,192)}static uint200(e){return ht(e,200)}static uint208(e){return ht(e,208)}static uint216(e){return ht(e,216)}static uint224(e){return ht(e,224)}static uint232(e){return ht(e,232)}static uint240(e){return ht(e,240)}static uint248(e){return ht(e,248)}static uint256(e){return ht(e,256)}static uint(e){return ht(e,256)}static int8(e){return ht(e,-8)}static int16(e){return ht(e,-16)}static int24(e){return ht(e,-24)}static int32(e){return ht(e,-32)}static int40(e){return ht(e,-40)}static int48(e){return ht(e,-48)}static int56(e){return ht(e,-56)}static int64(e){return ht(e,-64)}static int72(e){return ht(e,-72)}static int80(e){return ht(e,-80)}static int88(e){return ht(e,-88)}static int96(e){return ht(e,-96)}static int104(e){return ht(e,-104)}static int112(e){return ht(e,-112)}static int120(e){return ht(e,-120)}static int128(e){return ht(e,-128)}static int136(e){return ht(e,-136)}static int144(e){return ht(e,-144)}static int152(e){return ht(e,-152)}static int160(e){return ht(e,-160)}static int168(e){return ht(e,-168)}static int176(e){return ht(e,-176)}static int184(e){return ht(e,-184)}static int192(e){return ht(e,-192)}static int200(e){return ht(e,-200)}static int208(e){return ht(e,-208)}static int216(e){return ht(e,-216)}static int224(e){return ht(e,-224)}static int232(e){return ht(e,-232)}static int240(e){return ht(e,-240)}static int248(e){return ht(e,-248)}static int256(e){return ht(e,-256)}static int(e){return ht(e,-256)}static bytes1(e){return Pr(e,1)}static bytes2(e){return Pr(e,2)}static bytes3(e){return Pr(e,3)}static bytes4(e){return Pr(e,4)}static bytes5(e){return Pr(e,5)}static bytes6(e){return Pr(e,6)}static bytes7(e){return Pr(e,7)}static bytes8(e){return Pr(e,8)}static bytes9(e){return Pr(e,9)}static bytes10(e){return Pr(e,10)}static bytes11(e){return Pr(e,11)}static bytes12(e){return Pr(e,12)}static bytes13(e){return Pr(e,13)}static bytes14(e){return Pr(e,14)}static bytes15(e){return Pr(e,15)}static bytes16(e){return Pr(e,16)}static bytes17(e){return Pr(e,17)}static bytes18(e){return Pr(e,18)}static bytes19(e){return Pr(e,19)}static bytes20(e){return Pr(e,20)}static bytes21(e){return Pr(e,21)}static bytes22(e){return Pr(e,22)}static bytes23(e){return Pr(e,23)}static bytes24(e){return Pr(e,24)}static bytes25(e){return Pr(e,25)}static bytes26(e){return Pr(e,26)}static bytes27(e){return Pr(e,27)}static bytes28(e){return Pr(e,28)}static bytes29(e){return Pr(e,29)}static bytes30(e){return Pr(e,30)}static bytes31(e){return Pr(e,31)}static bytes32(e){return Pr(e,32)}static address(e){return new Xo(Qo,"address",e)}static bool(e){return new Xo(Qo,"bool",!!e)}static bytes(e){return new Xo(Qo,"bytes",e)}static string(e){return new Xo(Qo,"string",e)}static array(e,r){throw new Error("not implemented yet")}static tuple(e,r){throw new Error("not implemented yet")}static overrides(e){return new Xo(Qo,"overrides",Object.assign({},e))}static isTyped(e){return e&&typeof e=="object"&&"_typedSymbol"in e&&e._typedSymbol===HE}static dereference(e,r){if(Xo.isTyped(e)){if(e.type!==r)throw new Error(`invalid type: expecetd ${r}, got ${e.type}`);return e.value}return e}};let Ui=Xo;Ac=new WeakMap;class Kte extends Ff{constructor(e){super("address","address",e,!1)}defaultValue(){return"0x0000000000000000000000000000000000000000"}encode(e,r){let n=Ui.dereference(r,"string");try{n=Hr(n)}catch(s){return this._throwError(s.message,r)}return e.writeValue(n)}decode(e){return Hr(Il(e.readValue(),20))}}class qte extends Ff{constructor(r){super(r.name,r.type,"_",r.dynamic);xe(this,"coder");this.coder=r}defaultValue(){return this.coder.defaultValue()}encode(r,n){return this.coder.encode(r,n)}decode(r){return this.coder.decode(r)}}function tC(t,e,r){let n=[];if(Array.isArray(r))n=r;else if(r&&typeof r=="object"){let u={};n=e.map(h=>{const p=h.localName;return nt(p,"cannot encode object for signature with missing names","INVALID_ARGUMENT",{argument:"values",info:{coder:h},value:r}),nt(!u[p],"cannot encode object for signature with duplicate names","INVALID_ARGUMENT",{argument:"values",info:{coder:h},value:r}),u[p]=!0,r[p]})}else ye(!1,"invalid tuple value","tuple",r);ye(e.length===n.length,"types/value length mismatch","tuple",r);let s=new cA,i=new cA,o=[];e.forEach((u,h)=>{let p=n[h];if(u.dynamic){let d=i.length;u.encode(i,p);let v=s.writeUpdatableValue();o.push(w=>{v(w+d)})}else u.encode(s,p)}),o.forEach(u=>{u(s.length)});let f=t.appendWriter(s);return f+=t.appendWriter(i),f}function rC(t,e){let r=[],n=[],s=t.subReader(0);return e.forEach(i=>{let o=null;if(i.dynamic){let f=t.readIndex(),u=s.subReader(f);try{o=i.decode(u)}catch(h){if(ko(h,"BUFFER_OVERRUN"))throw h;o=h,o.baseType=i.name,o.name=i.localName,o.type=i.type}}else try{o=i.decode(t)}catch(f){if(ko(f,"BUFFER_OVERRUN"))throw f;o=f,o.baseType=i.name,o.name=i.localName,o.type=i.type}if(o==null)throw new Error("investigate");r.push(o),n.push(i.localName||null)}),av.fromItems(r,n)}class Gte extends Ff{constructor(r,n,s){const i=r.type+"["+(n>=0?n:"")+"]",o=n===-1||r.dynamic;super("array",i,s,o);xe(this,"coder");xe(this,"length");Dt(this,{coder:r,length:n})}defaultValue(){const r=this.coder.defaultValue(),n=[];for(let s=0;so||s<-(o+Jte))&&this._throwError("value out-of-bounds",n),s=SN(s,8*Wi)}else(sD0(i,this.size*8))&&this._throwError("value out-of-bounds",n);return r.writeValue(s)}decode(r){let n=D0(r.readValue(),this.size*8);return this.signed&&(n=$$(n,this.size*8)),n}}class tre extends nC{constructor(e){super("string",e)}defaultValue(){return""}encode(e,r){return super.encode(e,xf(Ui.dereference(r,"string")))}decode(e){return N6(super.decode(e))}}class _m extends Ff{constructor(r,n){let s=!1;const i=[];r.forEach(f=>{f.dynamic&&(s=!0),i.push(f.type)});const o="tuple("+i.join(",")+")";super("tuple",o,n,s);xe(this,"coders");Dt(this,{coders:Object.freeze(r.slice())})}defaultValue(){const r=[];this.coders.forEach(s=>{r.push(s.defaultValue())});const n=this.coders.reduce((s,i)=>{const o=i.localName;return o&&(s[o]||(s[o]=0),s[o]++),s},{});return this.coders.forEach((s,i)=>{let o=s.localName;!o||n[o]!==1||(o==="length"&&(o="_length"),r[o]==null&&(r[o]=r[i]))}),Object.freeze(r)}encode(r,n){const s=Ui.dereference(n,"tuple");return tC(r,this.coders,s)}decode(r){return rC(r,this.coders)}}function Yc(t){return mn(xf(t))}function rre(t){let e=0;function r(){return t[e++]<<8|t[e++]}let n=r(),s=1,i=[0,1];for(let D=1;D>--u&1}const d=31,v=2**d,w=v>>>1,A=w>>1,M=v-1;let R=0;for(let D=0;D1;){let H=q+W>>>1;D>>1|p(),k=k<<1^w,I=(I^w)<<1|w|1;C=k,B=1+I-k}let O=n-4;return N.map(D=>{switch(D-O){case 3:return O+65792+(t[f++]<<16|t[f++]<<8|t[f++]);case 2:return O+256+(t[f++]<<8|t[f++]);case 1:return O+t[f++];default:return D-1}})}function nre(t){let e=0;return()=>t[e++]}function iC(t){return nre(rre(ire(t)))}function ire(t){let e=[];[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"].forEach((s,i)=>e[s.charCodeAt(0)]=i);let r=t.length,n=new Uint8Array(6*r>>3);for(let s=0,i=0,o=0,f=0;s=8&&(n[i++]=f>>(o-=8));return n}function sre(t){return t&1?~t>>1:t>>1}function are(t,e){let r=Array(t);for(let n=0,s=0;n{let e=Pl(t);if(e.length)return e})}function aC(t){let e=[];for(;;){let r=t();if(r==0)break;e.push(ore(r,t))}for(;;){let r=t()-1;if(r<0)break;e.push(fre(r,t))}return e.flat()}function Op(t){let e=[];for(;;){let r=t(e.length);if(!r)break;e.push(r)}return e}function oC(t,e,r){let n=Array(t).fill().map(()=>[]);for(let s=0;sn[o].push(i));return n}function ore(t,e){let r=1+e(),n=e(),s=Op(e);return oC(s.length,1+t,e).flatMap((o,f)=>{let[u,...h]=o;return Array(s[f]).fill().map((p,d)=>{let v=d*n;return[u+d*r,h.map(w=>w+v)]})})}function fre(t,e){let r=1+e();return oC(r,1+t,e).map(s=>[s[0],s.slice(1)])}var Cs=iC("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");const jE=new Map([[8217,"apostrophe"],[8260,"fraction slash"],[12539,"middle dot"]]),zE=4;function lre(t){return t.toString(16).toUpperCase().padStart(2,"0")}function fC(t){return`{${lre(t)}}`}function cre(t){let e=[];for(let r=0,n=t.length;r>24&255}function lC(t){return t&16777215}const ure=new Map(sC(B6).flatMap((t,e)=>t.map(r=>[r,e+1<<24]))),hre=new Set(Pl(B6)),cC=new Map,vA=new Map;for(let[t,e]of aC(B6)){if(!hre.has(t)&&e.length==2){let[r,n]=e,s=vA.get(r);s||(s=new Map,vA.set(r,s)),s.set(n,t)}cC.set(t,e.reverse())}const Dp=44032,uv=4352,hv=4449,dv=4519,uC=19,hC=21,Rd=28,pv=hC*Rd,dre=uC*pv,pre=Dp+dre,mre=uv+uC,gre=hv+hC,vre=dv+Rd;function dC(t){return t>=Dp&&t=uv&&t=hv&&edv&&e0&&s(dv+h)}else{let o=cC.get(i);o?r.push(...o):s(i)}if(!r.length)break;i=r.pop()}if(n&&e.length>1){let i=U0(e[0]);for(let o=1;o0&&s>=o)o==0?(e.push(n,...r),r.length=0,n=f):r.push(f),s=o;else{let u=yre(n,f);u>=0?n=u:s==0&&o==0?(e.push(n),n=f):(r.push(f),s=o)}}return n>=0&&e.push(n,...r),e}function mC(t){return pC(t).map(lC)}function wre(t){return bre(pC(t))}const yA=65039,gC=".",vC=1,KE=45;function Vd(){return new Set(Pl(Cs))}const Are=new Map(aC(Cs)),xre=Vd(),mv=Vd(),qE=new Set(Pl(Cs).map(function(t){return this[t]},[...mv])),Ere=Vd();Vd();const Mre=sC(Cs);function GE(){return new Set([Pl(Cs).map(t=>Mre[t]),Pl(Cs)].flat(2))}const Sre=Cs(),Fp=Op(t=>{let e=Op(Cs).map(r=>r+96);if(e.length){let r=t>=Sre;e[0]-=32,e=Lp(e),r&&(e=`Restricted[${e}]`);let n=GE(),s=GE(),i=[...n,...s].sort((f,u)=>f-u),o=!Cs();return{N:e,P:n,M:o,R:r,V:new Set(i)}}}),VE=Vd(),Up=new Map;[...VE,...Vd()].sort((t,e)=>t-e).map((t,e,r)=>{let n=Cs(),s=r[e]=n?r[e-n]:{V:[],M:new Map};s.V.push(t),VE.has(t)||Up.set(t,s)});for(let{V:t,M:e}of new Set(Up.values())){let r=[];for(let s of t){let i=Fp.filter(f=>f.V.has(s)),o=r.find(({G:f})=>i.some(u=>f.has(u)));o||(o={G:new Set,V:[]},r.push(o)),o.V.push(s),i.forEach(f=>o.G.add(f))}let n=r.flatMap(({G:s})=>[...s]);for(let{G:s,V:i}of r){let o=new Set(n.filter(f=>!s.has(f)));for(let f of i)e.set(f,o)}}let Hp=new Set,yC=new Set;for(let t of Fp)for(let e of t.V)(Hp.has(e)?yC:Hp).add(e);for(let t of Hp)!Up.has(t)&&!yC.has(t)&&Up.set(t,vC);const _re=new Set([...Hp,...mC(Hp)]),Rre=Pl(Cs),Nre=bC([]);function bC(t){let e=Op(()=>{let f=Pl(Cs).map(u=>Rre[u]);if(f.length)return bC(f)}).sort((f,u)=>u.Q.size-f.Q.size),r=Cs(),n=r%3;r=r/3|0;let s=r&1;r>>=1;let i=r&1,o=r&2;return{B:e,V:n,F:s,S:i,C:o,Q:new Set(t)}}class Cre extends Array{get is_emoji(){return!0}}function Ly(t,e=fC){let r=[];Bre(t[0])&&r.push("◌");let n=0,s=t.length;for(let i=0;i=4&&t[2]==KE&&t[3]==KE)throw new Error("invalid label extension")}function WE(t){for(let r=t.lastIndexOf(95);r>0;)if(t[--r]!==95)throw new Error("underscore allowed only at start")}function kre(t){let e=t[0],r=jE.get(e);if(r)throw Q0(`leading ${r}`);let n=t.length,s=-1;for(let i=1;i{let s=cre(n),i={input:s,offset:r};r+=s.length+1;let o;try{let f=i.tokens=Ure(s,wre),u=f.length,h;if(u){let p=f[0],d=u>1||p.is_emoji;if(!d&&p.every(v=>v<128))o=p,WE(o),Tre(o),h="ASCII";else if(d&&(i.emoji=!0,p=f.flatMap(v=>v.is_emoji?[]:v)),o=f.flatMap(v=>!e&&v.is_emoji?Hre(v):v),WE(o),!p.length)h="Emoji";else{if(mv.has(o[0]))throw Q0("leading combining mark");for(let A=1;Ao.has(f)):[...o],!r.length)return}else n.push(s)}if(r){for(let s of r)if(n.every(i=>s.V.has(i)))throw new Error(`whole-script confusable: ${t.N}/${s.N}`)}}function Lre(t){let e=Fp;for(let r of t){let n=e.filter(s=>s.V.has(r));if(!n.length)throw e===Fp?AC(r):xC(e[0],r);if(e=n,n.length==1)break}return e}function Dre(t){return t.map(({input:e,error:r,output:n})=>{if(r){let s=r.message;throw new Error(t.length==1?s:`Invalid label ${P6(Ly(e))}: ${s}`)}return Lp(n)}).join(gC)}function AC(t){return new Error(`disallowed character: ${I6(t)}`)}function xC(t,e){let r=I6(e),n=Fp.find(s=>s.P.has(e));return n&&(r=`${n.N} ${r}`),new Error(`illegal mixture: ${t.N} + ${r}`)}function Q0(t){return new Error(`illegal placement: ${t}`)}function Fre(t,e){let{V:r,M:n}=t;for(let s of e)if(!r.has(s))throw xC(t,s);if(n){let s=mC(e);for(let i=1,o=s.length;izE)throw new Error(`non-spacing marks: too many ${P6(Ly(s.slice(i-1,f)))} (${f-i}/${zE})`);i=f}}}function Ure(t,e){let r=[],n=[];for(t=t.slice().reverse();t.length;){let s=jre(t);if(s)n.length&&(r.push(e(n)),n=[]),r.push(s);else{let i=t.pop();if(_re.has(i))n.push(i);else{let o=Are.get(i);if(o)n.push(...o);else if(!xre.has(i))throw AC(i)}}}return n.length&&r.push(e(n)),r}function Hre(t){return t.filter(e=>e!=yA)}function jre(t,e){let r=Nre,n,s,i=[],o=t.length;for(e&&(e.length=0);o;){let f=t[--o];if(r=r.B.find(u=>u.Q.has(f)),!r)break;if(r.S)s=f;else if(r.C&&f===s)break;i.push(f),r.F&&(i.push(yA),o>0&&t[o-1]==yA&&o--),r.V&&(n=zre(i,r),e&&e.push(...t.slice(o).reverse()),t.length=o)}return n}function zre(t,e){let r=Cre.from(t);return e.V==2&&r.splice(1,1),r}const EC=new Uint8Array(32);EC.fill(0);function ZE(t){return ye(t.length!==0,"invalid ENS name; empty component","comp",t),t}function MC(t){const e=xf(Kre(t)),r=[];if(t.length===0)return r;let n=0;for(let s=0;s{if(e.length>63)throw new Error("invalid DNS encoded entry; length exceeds 63 bytes");const r=new Uint8Array(e.length+1);return r.set(e,1),r[0]=r.length-1,r})))+"00"}function G2(t,e){return{address:Hr(t),storageKeys:e.map((r,n)=>(ye(Mn(r,32),"invalid slot",`storageKeys[${n}]`,r),r.toLowerCase()))}}function fu(t){if(Array.isArray(t))return t.map((r,n)=>Array.isArray(r)?(ye(r.length===2,"invalid slot set",`value[${n}]`,r),G2(r[0],r[1])):(ye(r!=null&&typeof r=="object","invalid address-slot set","value",t),G2(r.address,r.storageKeys)));ye(t!=null&&typeof t=="object","invalid access list","value",t);const e=Object.keys(t).map(r=>{const n=t[r].reduce((s,i)=>(s[i]=!0,s),{});return G2(r,Object.keys(n).sort())});return e.sort((r,n)=>r.address.localeCompare(n.address)),e}function Gre(t){let e;return typeof t=="string"?e=Pp.computePublicKey(t,!1):e=t.publicKey,Hr(mn("0x"+e.substring(4)).substring(26))}function wA(t,e){return Gre(Pp.recoverPublicKey(t,e))}const cs=BigInt(0),Vre=BigInt(2),Wre=BigInt(27),Zre=BigInt(28),Yre=BigInt(35),Qre=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function O6(t){return t==="0x"?null:Hr(t)}function SC(t,e){try{return fu(t)}catch(r){ye(!1,r.message,e,t)}}function Dy(t,e){return t==="0x"?0:br(t,e)}function Vi(t,e){if(t==="0x")return cs;const r=St(t,e);return ye(r<=Qre,"value exceeds uint size",e,r),r}function wi(t,e){const r=St(t,"value"),n=_s(r);return ye(n.length<=32,"value too large",`tx.${e}`,r),n}function _C(t){return fu(t).map(e=>[e.address,e.storageKeys])}function Xre(t){const e=C6(t);ye(Array.isArray(e)&&(e.length===9||e.length===6),"invalid field count for legacy transaction","data",t);const r={type:0,nonce:Dy(e[0],"nonce"),gasPrice:Vi(e[1],"gasPrice"),gasLimit:Vi(e[2],"gasLimit"),to:O6(e[3]),value:Vi(e[4],"value"),data:At(e[5]),chainId:cs};if(e.length===6)return r;const n=Vi(e[6],"v"),s=Vi(e[7],"r"),i=Vi(e[8],"s");if(s===cs&&i===cs)r.chainId=n;else{let o=(n-Yre)/Vre;o=this.maxPriorityFeePerGas,"priorityFee cannot be more than maxFee","BAD_DATA",{value:this}),nt(!r||this.type!==0&&this.type!==1,"transaction type cannot have maxFeePerGas or maxPriorityFeePerGas","BAD_DATA",{value:this}),nt(this.type!==0||!n,"legacy transaction cannot have accessList","BAD_DATA",{value:this});const s=[];return this.type!=null?s.push(this.type):r?s.push(2):e?(s.push(1),n||s.push(0)):n?(s.push(1),s.push(2)):(s.push(0),s.push(1),s.push(2)),s.sort(),s}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}clone(){return rl.from(this)}toJSON(){const e=r=>r==null?null:r.toString();return{type:this.type,to:this.to,data:this.data,nonce:this.nonce,gasLimit:e(this.gasLimit),gasPrice:e(this.gasPrice),maxPriorityFeePerGas:e(this.maxPriorityFeePerGas),maxFeePerGas:e(this.maxFeePerGas),value:e(this.value),chainId:e(this.chainId),sig:this.signature?this.signature.toJSON():null,accessList:this.accessList}}static from(e){if(e==null)return new rl;if(typeof e=="string"){const n=Br(e);if(n[0]>=127)return rl.from(Xre(n));switch(n[0]){case 1:return rl.from($re(n));case 2:return rl.from(Jre(n))}nt(!1,"unsupported transaction type","UNSUPPORTED_OPERATION",{operation:"from"})}const r=new rl;return e.type!=null&&(r.type=e.type),e.to!=null&&(r.to=e.to),e.nonce!=null&&(r.nonce=e.nonce),e.gasLimit!=null&&(r.gasLimit=e.gasLimit),e.gasPrice!=null&&(r.gasPrice=e.gasPrice),e.maxPriorityFeePerGas!=null&&(r.maxPriorityFeePerGas=e.maxPriorityFeePerGas),e.maxFeePerGas!=null&&(r.maxFeePerGas=e.maxFeePerGas),e.data!=null&&(r.data=e.data),e.value!=null&&(r.value=e.value),e.chainId!=null&&(r.chainId=e.chainId),e.signature!=null&&(r.signature=Va.from(e.signature)),e.accessList!=null&&(r.accessList=e.accessList),e.hash!=null&&(ye(r.isSigned(),"unsigned transaction cannot define hash","tx",e),ye(r.hash===e.hash,"hash mismatch","tx",e)),e.from!=null&&(ye(r.isSigned(),"unsigned transaction cannot define from","tx",e),ye(r.from.toLowerCase()===(e.from||"").toLowerCase(),"from mismatch","tx",e)),r}};let gv=rl;af=new WeakMap,Ch=new WeakMap,Th=new WeakMap,kh=new WeakMap,Bh=new WeakMap,Ih=new WeakMap,Ph=new WeakMap,Oh=new WeakMap,Lh=new WeakMap,Dh=new WeakMap,Fh=new WeakMap,Uh=new WeakMap;const NC=new Uint8Array(32);NC.fill(0);const ene=BigInt(-1),CC=BigInt(0),TC=BigInt(1),tne=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function rne(t){const e=Br(t),r=e.length%32;return r?jn([e,NC.slice(r)]):At(e)}const nne=Il(TC,32),ine=Il(CC,32),JE={name:"string",version:"string",chainId:"uint256",verifyingContract:"address",salt:"bytes32"},V2=["name","version","chainId","verifyingContract","salt"];function $E(t){return function(e){return ye(typeof e=="string",`invalid domain value for ${JSON.stringify(t)}`,`domain.${t}`,e),e}}const sne={name:$E("name"),version:$E("version"),chainId:function(t){const e=St(t,"domain.chainId");return ye(e>=0,"invalid chain ID","domain.chainId",t),Number.isSafeInteger(e)?Number(e):$u(e)},verifyingContract:function(t){try{return Hr(t).toLowerCase()}catch{}ye(!1,'invalid domain value "verifyingContract"',"domain.verifyingContract",t)},salt:function(t){const e=Br(t,"domain.salt");return ye(e.length===32,'invalid domain value "salt"',"domain.salt",t),At(e)}};function W2(t){{const e=t.match(/^(u?)int(\d*)$/);if(e){const r=e[1]==="",n=parseInt(e[2]||"256");ye(n%8===0&&n!==0&&n<=256&&(e[2]==null||e[2]===String(n)),"invalid numeric width","type",t);const s=D0(tne,r?n-1:n),i=r?(s+TC)*ene:CC;return function(o){const f=St(o,"value");return ye(f>=i&&f<=s,`value out-of-bounds for ${t}`,"value",f),Il(r?SN(f,256):f,32)}}}{const e=t.match(/^bytes(\d+)$/);if(e){const r=parseInt(e[1]);return ye(r!==0&&r<=32&&e[1]===String(r),"invalid bytes width","type",t),function(n){const s=Br(n);return ye(s.length===r,`invalid length for ${t}`,"value",n),rne(n)}}}switch(t){case"address":return function(e){return Wc(Hr(e),32)};case"bool":return function(e){return e?nne:ine};case"bytes":return function(e){return mn(e)};case"string":return function(e){return Yc(e)}}return null}function e9(t,e){return`${t}(${e.map(({name:r,type:n})=>n+" "+r).join(",")})`}var Wp,of,Hh,xv,kC;const qs=class{constructor(e){Fe(this,xv);xe(this,"primaryType");Fe(this,Wp,void 0);Fe(this,of,void 0);Fe(this,Hh,void 0);le(this,Wp,JSON.stringify(e)),le(this,of,new Map),le(this,Hh,new Map);const r=new Map,n=new Map,s=new Map;Object.keys(e).forEach(f=>{r.set(f,new Set),n.set(f,[]),s.set(f,new Set)});for(const f in e){const u=new Set;for(const h of e[f]){ye(!u.has(h.name),`duplicate variable name ${JSON.stringify(h.name)} in ${JSON.stringify(f)}`,"types",e),u.add(h.name);const p=h.type.match(/^([^\x5b]*)(\x5b|$)/)[1]||null;ye(p!==f,`circular type reference to ${JSON.stringify(p)}`,"types",e),!W2(p)&&(ye(n.has(p),`unknown type ${JSON.stringify(p)}`,"types",e),n.get(p).push(f),r.get(f).add(p))}}const i=Array.from(n.keys()).filter(f=>n.get(f).length===0);ye(i.length!==0,"missing primary type","types",e),ye(i.length===1,`ambiguous primary types or unused types: ${i.map(f=>JSON.stringify(f)).join(", ")}`,"types",e),Dt(this,{primaryType:i[0]});function o(f,u){ye(!u.has(f),`circular type reference to ${JSON.stringify(f)}`,"types",e),u.add(f);for(const h of r.get(f))if(n.has(h)){o(h,u);for(const p of u)s.get(p).add(h)}u.delete(f)}o(this.primaryType,new Set);for(const[f,u]of s){const h=Array.from(u);h.sort(),te(this,of).set(f,e9(f,e[f])+h.map(p=>e9(p,e[p])).join(""))}}get types(){return JSON.parse(te(this,Wp))}getEncoder(e){let r=te(this,Hh).get(e);return r||(r=ct(this,xv,kC).call(this,e),te(this,Hh).set(e,r)),r}encodeType(e){const r=te(this,of).get(e);return ye(r,`unknown type: ${JSON.stringify(e)}`,"name",e),r}encodeData(e,r){return this.getEncoder(e)(r)}hashStruct(e,r){return mn(this.encodeData(e,r))}encode(e){return this.encodeData(this.primaryType,e)}hash(e){return this.hashStruct(this.primaryType,e)}_visit(e,r,n){if(W2(e))return n(e,r);const s=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(s)return ye(!s[3]||parseInt(s[3])===r.length,`array length mismatch; expected length ${parseInt(s[3])}`,"value",r),r.map(o=>this._visit(s[1],o,n));const i=this.types[e];if(i)return i.reduce((o,{name:f,type:u})=>(o[f]=this._visit(u,r[f],n),o),{});ye(!1,`unknown type: ${e}`,"type",e)}visit(e,r){return this._visit(this.primaryType,e,r)}static from(e){return new qs(e)}static getPrimaryType(e){return qs.from(e).primaryType}static hashStruct(e,r,n){return qs.from(r).hashStruct(e,n)}static hashDomain(e){const r=[];for(const n in e){if(e[n]==null)continue;const s=JE[n];ye(s,`invalid typed-data domain key: ${JSON.stringify(n)}`,"domain",e),r.push({name:n,type:s})}return r.sort((n,s)=>V2.indexOf(n.name)-V2.indexOf(s.name)),qs.hashStruct("EIP712Domain",{EIP712Domain:r},e)}static encode(e,r,n){return jn(["0x1901",qs.hashDomain(e),qs.from(r).hash(n)])}static hash(e,r,n){return mn(qs.encode(e,r,n))}static async resolveNames(e,r,n,s){e=Object.assign({},e);for(const f in e)e[f]==null&&delete e[f];const i={};e.verifyingContract&&!Mn(e.verifyingContract,20)&&(i[e.verifyingContract]="0x");const o=qs.from(r);o.visit(n,(f,u)=>(f==="address"&&!Mn(u,20)&&(i[u]="0x"),u));for(const f in i)i[f]=await s(f);return e.verifyingContract&&i[e.verifyingContract]&&(e.verifyingContract=i[e.verifyingContract]),n=o.visit(n,(f,u)=>f==="address"&&i[u]?i[u]:u),{domain:e,value:n}}static getPayload(e,r,n){qs.hashDomain(e);const s={},i=[];V2.forEach(u=>{const h=e[u];h!=null&&(s[u]=sne[u](h),i.push({name:u,type:JE[u]}))});const o=qs.from(r),f=Object.assign({},r);return ye(f.EIP712Domain==null,"types must not contain EIP712Domain type","types.EIP712Domain",r),f.EIP712Domain=i,o.encode(n),{types:f,domain:s,primaryType:o.primaryType,message:o.visit(n,(u,h)=>{if(u.match(/^bytes(\d*)/))return At(Br(h));if(u.match(/^u?int/))return St(h).toString();switch(u){case"address":return h.toLowerCase();case"bool":return!!h;case"string":return ye(typeof h=="string","invalid string","value",h),h}ye(!1,"unsupported type","type",u)})}}};let vv=qs;Wp=new WeakMap,of=new WeakMap,Hh=new WeakMap,xv=new WeakSet,kC=function(e){{const s=W2(e);if(s)return s}const r=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(r){const s=r[1],i=this.getEncoder(s);return o=>{ye(!r[3]||parseInt(r[3])===o.length,`array length mismatch; expected length ${parseInt(r[3])}`,"value",o);let f=o.map(i);return te(this,of).has(s)&&(f=f.map(mn)),mn(jn(f))}}const n=this.types[e];if(n){const s=Yc(te(this,of).get(e));return i=>{const o=n.map(({name:f,type:u})=>{const h=this.getEncoder(u)(i[f]);return te(this,of).has(u)?mn(h):h});return o.unshift(s),jn(o)}}ye(!1,`unknown type: ${e}`,"type",e)};function Zi(t){const e=new Set;return t.forEach(r=>e.add(r)),Object.freeze(e)}const BC="constant external internal payable private public pure view",ane=Zi(BC.split(" ")),IC="constructor error event fallback function receive struct",PC=Zi(IC.split(" ")),OC="calldata memory storage payable indexed",one=Zi(OC.split(" ")),fne="tuple returns",lne=[IC,OC,fne,BC].join(" "),cne=Zi(lne.split(" ")),une={"(":"OPEN_PAREN",")":"CLOSE_PAREN","[":"OPEN_BRACKET","]":"CLOSE_BRACKET",",":"COMMA","@":"AT"},hne=new RegExp("^(\\s*)"),dne=new RegExp("^([0-9]+)"),pne=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)"),LC=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)$"),DC=new RegExp("^(address|bool|bytes([0-9]*)|string|u?int([0-9]*))$");var gi,La,Zp,AA;const Ev=class{constructor(e){Fe(this,Zp);Fe(this,gi,void 0);Fe(this,La,void 0);le(this,gi,0),le(this,La,e.slice())}get offset(){return te(this,gi)}get length(){return te(this,La).length-te(this,gi)}clone(){return new Ev(te(this,La))}reset(){le(this,gi,0)}popKeyword(e){const r=this.peek();if(r.type!=="KEYWORD"||!e.has(r.text))throw new Error(`expected keyword ${r.text}`);return this.pop().text}popType(e){if(this.peek().type!==e)throw new Error(`expected ${e}; got ${JSON.stringify(this.peek())}`);return this.pop().text}popParen(){const e=this.peek();if(e.type!=="OPEN_PAREN")throw new Error("bad start");const r=ct(this,Zp,AA).call(this,te(this,gi)+1,e.match+1);return le(this,gi,e.match+1),r}popParams(){const e=this.peek();if(e.type!=="OPEN_PAREN")throw new Error("bad start");const r=[];for(;te(this,gi)=te(this,La).length)throw new Error("out-of-bounds");return te(this,La)[te(this,gi)]}peekKeyword(e){const r=this.peekType("KEYWORD");return r!=null&&e.has(r)?r:null}peekType(e){if(this.length===0)return null;const r=this.peek();return r.type===e?r.text:null}pop(){const e=this.peek();return a0(this,gi)._++,e}toString(){const e=[];for(let r=te(this,gi);r`}};let Wa=Ev;gi=new WeakMap,La=new WeakMap,Zp=new WeakSet,AA=function(e=0,r=0){return new Ev(te(this,La).slice(e,r).map(n=>Object.freeze(Object.assign({},n,{match:n.match-e,linkBack:n.linkBack-e,linkNext:n.linkNext-e}))))};function ql(t){const e=[],r=o=>{const f=i0&&e[e.length-1].type==="NUMBER"){const d=e.pop().text;p=d+p,e[e.length-1].value=br(d)}if(e.length===0||e[e.length-1].type!=="BRACKET")throw new Error("missing opening bracket");e[e.length-1].text+=p}continue}if(f=o.match(pne),f){if(u.text=f[1],i+=u.text.length,cne.has(u.text)){u.type="KEYWORD";continue}if(u.text.match(DC)){u.type="TYPE";continue}u.type="ID";continue}if(f=o.match(dne),f){u.text=f[1],u.type="NUMBER",i+=u.text.length;continue}throw new Error(`unexpected token ${JSON.stringify(o[0])} at position ${i}`)}return new Wa(e.map(o=>Object.freeze(o)))}function t9(t,e){let r=[];for(const n in e.keys())t.has(n)&&r.push(n);if(r.length>1)throw new Error(`conflicting types: ${r.join(", ")}`)}function Fy(t,e){if(e.peekKeyword(PC)){const r=e.pop().text;if(r!==t)throw new Error(`expected ${t}, got ${r}`)}return e.popType("ID")}function kf(t,e){const r=new Set;for(;;){const n=t.peekType("KEYWORD");if(n==null||e&&!e.has(n))break;if(t.pop(),r.has(n))throw new Error(`duplicate keywords: ${JSON.stringify(n)}`);r.add(n)}return Object.freeze(r)}function FC(t){let e=kf(t,ane);return t9(e,Zi("constant payable nonpayable".split(" "))),t9(e,Zi("pure view payable nonpayable".split(" "))),e.has("view")?"view":e.has("pure")?"pure":e.has("payable")?"payable":e.has("nonpayable")?"nonpayable":e.has("constant")?"view":"nonpayable"}function Ef(t,e){return t.popParams().map(r=>Ei.from(r,e))}function UC(t){if(t.peekType("AT")){if(t.pop(),t.peekType("NUMBER"))return St(t.pop().text);throw new Error("invalid gas")}return null}function Qc(t){if(t.length)throw new Error(`unexpected tokens: ${t.toString()}`)}const mne=new RegExp(/^(.*)\[([0-9]*)\]$/);function r9(t){const e=t.match(DC);if(ye(e,"invalid type","type",t),t==="uint")return"uint256";if(t==="int")return"int256";if(e[2]){const r=parseInt(e[2]);ye(r!==0&&r<=32,"invalid bytes length","type",t)}else if(e[3]){const r=parseInt(e[3]);ye(r!==0&&r<=256&&r%8===0,"invalid numeric width","type",t)}return t}const En={},vs=Symbol.for("_ethers_internal"),n9="_ParamTypeInternal",i9="_ErrorInternal",s9="_EventInternal",a9="_ConstructorInternal",o9="_FallbackInternal",f9="_FunctionInternal",l9="_StructInternal";var jh,lg;const Gs=class{constructor(e,r,n,s,i,o,f,u){Fe(this,jh);xe(this,"name");xe(this,"type");xe(this,"baseType");xe(this,"indexed");xe(this,"components");xe(this,"arrayLength");xe(this,"arrayChildren");if(By(e,En,"ParamType"),Object.defineProperty(this,vs,{value:n9}),o&&(o=Object.freeze(o.slice())),s==="array"){if(f==null||u==null)throw new Error("")}else if(f!=null||u!=null)throw new Error("");if(s==="tuple"){if(o==null)throw new Error("")}else if(o!=null)throw new Error("");Dt(this,{name:r,type:n,baseType:s,indexed:i,components:o,arrayLength:f,arrayChildren:u})}format(e){if(e==null&&(e="sighash"),e==="json"){let n={type:this.baseType==="tuple"?"tuple":this.type,name:this.name||void 0};return typeof this.indexed=="boolean"&&(n.indexed=this.indexed),this.isTuple()&&(n.components=this.components.map(s=>JSON.parse(s.format(e)))),JSON.stringify(n)}let r="";return this.isArray()?(r+=this.arrayChildren.format(e),r+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`):this.isTuple()?(e!=="sighash"&&(r+=this.type),r+="("+this.components.map(n=>n.format(e)).join(e==="full"?", ":",")+")"):r+=this.type,e!=="sighash"&&(this.indexed===!0&&(r+=" indexed"),e==="full"&&this.name&&(r+=" "+this.name)),r}isArray(){return this.baseType==="array"}isTuple(){return this.baseType==="tuple"}isIndexable(){return this.indexed!=null}walk(e,r){if(this.isArray()){if(!Array.isArray(e))throw new Error("invalid array value");if(this.arrayLength!==-1&&e.length!==this.arrayLength)throw new Error("array is wrong length");const n=this;return e.map(s=>n.arrayChildren.walk(s,r))}if(this.isTuple()){if(!Array.isArray(e))throw new Error("invalid tuple value");if(e.length!==this.components.length)throw new Error("array is wrong length");const n=this;return e.map((s,i)=>n.components[i].walk(s,r))}return r(this.type,e)}async walkAsync(e,r){const n=[],s=[e];return ct(this,jh,lg).call(this,n,e,r,i=>{s[0]=i}),n.length&&await Promise.all(n),s[0]}static from(e,r){if(Gs.isParamType(e))return e;if(typeof e=="string")return Gs.from(ql(e),r);if(e instanceof Wa){let f="",u="",h=null;kf(e,Zi(["tuple"])).has("tuple")||e.peekType("OPEN_PAREN")?(u="tuple",h=e.popParams().map(M=>Gs.from(M)),f=`tuple(${h.map(M=>M.format()).join(",")})`):(f=r9(e.popType("TYPE")),u=f);let p=null,d=null;for(;e.length&&e.peekType("BRACKET");){const M=e.pop();p=new Gs(En,"",f,u,null,h,d,p),d=M.value,f+=M.text,u="array",h=null}let v=null;if(kf(e,one).has("indexed")){if(!r)throw new Error("");v=!0}const A=e.peekType("ID")?e.pop().text:"";if(e.length)throw new Error("leftover tokens");return new Gs(En,A,f,u,v,h,d,p)}const n=e.name;ye(!n||typeof n=="string"&&n.match(LC),"invalid name","obj.name",n);let s=e.indexed;s!=null&&(ye(r,"parameter cannot be indexed","obj.indexed",e.indexed),s=!!s);let i=e.type,o=i.match(mne);if(o){const f=parseInt(o[2]||"-1"),u=Gs.from({type:o[1],components:e.components});return new Gs(En,n||"",i,"array",s,null,f,u)}if(i==="tuple"||i.startsWith("tuple(")||i.startsWith("(")){const f=e.components!=null?e.components.map(h=>Gs.from(h)):null;return new Gs(En,n||"",i,"tuple",s,f,null,null)}return i=r9(e.type),new Gs(En,n||"",i,i,s,null,null,null)}static isParamType(e){return e&&e[vs]===n9}};let Ei=Gs;jh=new WeakSet,lg=function(e,r,n,s){if(this.isArray()){if(!Array.isArray(r))throw new Error("invalid array value");if(this.arrayLength!==-1&&r.length!==this.arrayLength)throw new Error("array is wrong length");const o=this.arrayChildren,f=r.slice();f.forEach((u,h)=>{var p;ct(p=o,jh,lg).call(p,e,u,n,d=>{f[h]=d})}),s(f);return}if(this.isTuple()){const o=this.components;let f;if(Array.isArray(r))f=r.slice();else{if(r==null||typeof r!="object")throw new Error("invalid tuple value");f=o.map(u=>{if(!u.name)throw new Error("cannot use object value with unnamed components");if(!(u.name in r))throw new Error(`missing value for component ${u.name}`);return r[u.name]})}if(f.length!==this.components.length)throw new Error("array is wrong length");f.forEach((u,h)=>{var p;ct(p=o[h],jh,lg).call(p,e,u,n,d=>{f[h]=d})}),s(f);return}const i=n(this.type,r);i.then?e.push(async function(){s(await i)}()):s(i)};class Xc{constructor(e,r,n){xe(this,"type");xe(this,"inputs");By(e,En,"Fragment"),n=Object.freeze(n.slice()),Dt(this,{type:r,inputs:n})}static from(e){if(typeof e=="string"){try{Xc.from(JSON.parse(e))}catch{}return Xc.from(ql(e))}if(e instanceof Wa)switch(e.peekKeyword(PC)){case"constructor":return bf.from(e);case"error":return us.from(e);case"event":return xo.from(e);case"fallback":case"receive":return $o.from(e);case"function":return Eo.from(e);case"struct":return Fc.from(e)}else if(typeof e=="object"){switch(e.type){case"constructor":return bf.from(e);case"error":return us.from(e);case"event":return xo.from(e);case"fallback":case"receive":return $o.from(e);case"function":return Eo.from(e);case"struct":return Fc.from(e)}nt(!1,`unsupported type: ${e.type}`,"UNSUPPORTED_OPERATION",{operation:"Fragment.from"})}ye(!1,"unsupported frgament object","obj",e)}static isConstructor(e){return bf.isFragment(e)}static isError(e){return us.isFragment(e)}static isEvent(e){return xo.isFragment(e)}static isFunction(e){return Eo.isFragment(e)}static isStruct(e){return Fc.isFragment(e)}}class Uy extends Xc{constructor(r,n,s,i){super(r,n,i);xe(this,"name");ye(typeof s=="string"&&s.match(LC),"invalid identifier","name",s),i=Object.freeze(i.slice()),Dt(this,{name:s})}}function jp(t,e){return"("+e.map(r=>r.format(t)).join(t==="full"?", ":",")+")"}class us extends Uy{constructor(e,r,n){super(e,"error",r,n),Object.defineProperty(this,vs,{value:i9})}get selector(){return Yc(this.format("sighash")).substring(0,10)}format(e){if(e==null&&(e="sighash"),e==="json")return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map(n=>JSON.parse(n.format(e)))});const r=[];return e!=="sighash"&&r.push("error"),r.push(this.name+jp(e,this.inputs)),r.join(" ")}static from(e){if(us.isFragment(e))return e;if(typeof e=="string")return us.from(ql(e));if(e instanceof Wa){const r=Fy("error",e),n=Ef(e);return Qc(e),new us(En,r,n)}return new us(En,e.name,e.inputs?e.inputs.map(Ei.from):[])}static isFragment(e){return e&&e[vs]===i9}}class xo extends Uy{constructor(r,n,s,i){super(r,"event",n,s);xe(this,"anonymous");Object.defineProperty(this,vs,{value:s9}),Dt(this,{anonymous:i})}get topicHash(){return Yc(this.format("sighash"))}format(r){if(r==null&&(r="sighash"),r==="json")return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map(s=>JSON.parse(s.format(r)))});const n=[];return r!=="sighash"&&n.push("event"),n.push(this.name+jp(r,this.inputs)),r!=="sighash"&&this.anonymous&&n.push("anonymous"),n.join(" ")}static getTopicHash(r,n){return n=(n||[]).map(i=>Ei.from(i)),new xo(En,r,n,!1).topicHash}static from(r){if(xo.isFragment(r))return r;if(typeof r=="string")return xo.from(ql(r));if(r instanceof Wa){const n=Fy("event",r),s=Ef(r,!0),i=!!kf(r,Zi(["anonymous"])).has("anonymous");return Qc(r),new xo(En,n,s,i)}return new xo(En,r.name,r.inputs?r.inputs.map(n=>Ei.from(n,!0)):[],!!r.anonymous)}static isFragment(r){return r&&r[vs]===s9}}class bf extends Xc{constructor(r,n,s,i,o){super(r,n,s);xe(this,"payable");xe(this,"gas");Object.defineProperty(this,vs,{value:a9}),Dt(this,{payable:i,gas:o})}format(r){if(nt(r!=null&&r!=="sighash","cannot format a constructor for sighash","UNSUPPORTED_OPERATION",{operation:"format(sighash)"}),r==="json")return JSON.stringify({type:"constructor",stateMutability:this.payable?"payable":"undefined",payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(s=>JSON.parse(s.format(r)))});const n=[`constructor${jp(r,this.inputs)}`];return n.push(this.payable?"payable":"nonpayable"),this.gas!=null&&n.push(`@${this.gas.toString()}`),n.join(" ")}static from(r){if(bf.isFragment(r))return r;if(typeof r=="string")return bf.from(ql(r));if(r instanceof Wa){kf(r,Zi(["constructor"]));const n=Ef(r),s=!!kf(r,Zi(["payable"])).has("payable"),i=UC(r);return Qc(r),new bf(En,"constructor",n,s,i)}return new bf(En,"constructor",r.inputs?r.inputs.map(Ei.from):[],!!r.payable,r.gas!=null?r.gas:null)}static isFragment(r){return r&&r[vs]===a9}}class $o extends Xc{constructor(r,n,s){super(r,"fallback",n);xe(this,"payable");Object.defineProperty(this,vs,{value:o9}),Dt(this,{payable:s})}format(r){const n=this.inputs.length===0?"receive":"fallback";if(r==="json"){const s=this.payable?"payable":"nonpayable";return JSON.stringify({type:n,stateMutability:s})}return`${n}()${this.payable?" payable":""}`}static from(r){if($o.isFragment(r))return r;if(typeof r=="string")return $o.from(ql(r));if(r instanceof Wa){const n=r.toString(),s=r.peekKeyword(Zi(["fallback","receive"]));if(ye(s,"type must be fallback or receive","obj",n),r.popKeyword(Zi(["fallback","receive"]))==="receive"){const u=Ef(r);return ye(u.length===0,"receive cannot have arguments","obj.inputs",u),kf(r,Zi(["payable"])),Qc(r),new $o(En,[],!0)}let o=Ef(r);o.length?ye(o.length===1&&o[0].type==="bytes","invalid fallback inputs","obj.inputs",o.map(u=>u.format("minimal")).join(", ")):o=[Ei.from("bytes")];const f=FC(r);if(ye(f==="nonpayable"||f==="payable","fallback cannot be constants","obj.stateMutability",f),kf(r,Zi(["returns"])).has("returns")){const u=Ef(r);ye(u.length===1&&u[0].type==="bytes","invalid fallback outputs","obj.outputs",u.map(h=>h.format("minimal")).join(", "))}return Qc(r),new $o(En,o,f==="payable")}if(r.type==="receive")return new $o(En,[],!0);if(r.type==="fallback"){const n=[Ei.from("bytes")],s=r.stateMutability==="payable";return new $o(En,n,s)}ye(!1,"invalid fallback description","obj",r)}static isFragment(r){return r&&r[vs]===o9}}class Eo extends Uy{constructor(r,n,s,i,o,f){super(r,"function",n,i);xe(this,"constant");xe(this,"outputs");xe(this,"stateMutability");xe(this,"payable");xe(this,"gas");Object.defineProperty(this,vs,{value:f9}),o=Object.freeze(o.slice()),Dt(this,{constant:s==="view"||s==="pure",gas:f,outputs:o,payable:s==="payable",stateMutability:s})}get selector(){return Yc(this.format("sighash")).substring(0,10)}format(r){if(r==null&&(r="sighash"),r==="json")return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:void 0,payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(s=>JSON.parse(s.format(r))),outputs:this.outputs.map(s=>JSON.parse(s.format(r)))});const n=[];return r!=="sighash"&&n.push("function"),n.push(this.name+jp(r,this.inputs)),r!=="sighash"&&(this.stateMutability!=="nonpayable"&&n.push(this.stateMutability),this.outputs&&this.outputs.length&&(n.push("returns"),n.push(jp(r,this.outputs))),this.gas!=null&&n.push(`@${this.gas.toString()}`)),n.join(" ")}static getSelector(r,n){return n=(n||[]).map(i=>Ei.from(i)),new Eo(En,r,"view",n,[],null).selector}static from(r){if(Eo.isFragment(r))return r;if(typeof r=="string")return Eo.from(ql(r));if(r instanceof Wa){const s=Fy("function",r),i=Ef(r),o=FC(r);let f=[];kf(r,Zi(["returns"])).has("returns")&&(f=Ef(r));const u=UC(r);return Qc(r),new Eo(En,s,o,i,f,u)}let n=r.stateMutability;return n==null&&(n="payable",typeof r.constant=="boolean"?(n="view",r.constant||(n="payable",typeof r.payable=="boolean"&&!r.payable&&(n="nonpayable"))):typeof r.payable=="boolean"&&!r.payable&&(n="nonpayable")),new Eo(En,r.name,n,r.inputs?r.inputs.map(Ei.from):[],r.outputs?r.outputs.map(Ei.from):[],r.gas!=null?r.gas:null)}static isFragment(r){return r&&r[vs]===f9}}class Fc extends Uy{constructor(e,r,n){super(e,"struct",r,n),Object.defineProperty(this,vs,{value:l9})}format(){throw new Error("@TODO")}static from(e){if(typeof e=="string")return Fc.from(ql(e));if(e instanceof Wa){const r=Fy("struct",e),n=Ef(e);return Qc(e),new Fc(En,r,n)}return new Fc(En,e.name,e.inputs?e.inputs.map(Ei.from):[])}static isFragment(e){return e&&e[vs]===l9}}const $a=new Map;$a.set(0,"GENERIC_PANIC");$a.set(1,"ASSERT_FALSE");$a.set(17,"OVERFLOW");$a.set(18,"DIVIDE_BY_ZERO");$a.set(33,"ENUM_RANGE_ERROR");$a.set(34,"BAD_STORAGE_DATA");$a.set(49,"STACK_UNDERFLOW");$a.set(50,"ARRAY_RANGE_ERROR");$a.set(65,"OUT_OF_MEMORY");$a.set(81,"UNINITIALIZED_FUNCTION_CALL");const gne=new RegExp(/^bytes([0-9]*)$/),vne=new RegExp(/^(u?int)([0-9]*)$/);let Z2=null;function yne(t,e,r,n){let s="missing revert data",i=null;const o=null;let f=null;if(r){s="execution reverted";const h=Br(r);if(r=At(r),h.length===0)s+=" (no data present; likely require(false) occurred",i="require(false)";else if(h.length%32!==4)s+=" (could not decode reason; invalid data length)";else if(At(h.slice(0,4))==="0x08c379a0")try{i=n.decode(["string"],h.slice(4))[0],f={signature:"Error(string)",name:"Error",args:[i]},s+=`: ${JSON.stringify(i)}`}catch{s+=" (could not decode reason; invalid string data)"}else if(At(h.slice(0,4))==="0x4e487b71")try{const p=Number(n.decode(["uint256"],h.slice(4))[0]);f={signature:"Panic(uint256)",name:"Panic",args:[p]},i=`Panic due to ${$a.get(p)||"UNKNOWN"}(${p})`,s+=`: ${i}`}catch{s+=" (could not decode panic code)"}else s+=" (unknown custom error)"}const u={to:e.to?Hr(e.to):null,data:e.data||"0x"};return e.from&&(u.from=Hr(e.from)),oi(s,"CALL_EXCEPTION",{action:t,data:r,reason:i,transaction:u,invocation:o,revert:f})}var ol,Hu;const Mv=class{constructor(){Fe(this,ol)}getDefaultValue(e){const r=e.map(s=>ct(this,ol,Hu).call(this,Ei.from(s)));return new _m(r,"_").defaultValue()}encode(e,r){EN(r.length,e.length,"types/values length mismatch");const n=e.map(o=>ct(this,ol,Hu).call(this,Ei.from(o))),s=new _m(n,"_"),i=new cA;return s.encode(i,r),i.data}decode(e,r,n){const s=e.map(o=>ct(this,ol,Hu).call(this,Ei.from(o)));return new _m(s,"_").decode(new uA(r,n))}static defaultAbiCoder(){return Z2==null&&(Z2=new Mv),Z2}static getBuiltinCallException(e,r,n){return yne(e,r,n,Mv.defaultAbiCoder())}};let zp=Mv;ol=new WeakSet,Hu=function(e){if(e.isArray())return new Gte(ct(this,ol,Hu).call(this,e.arrayChildren),e.arrayLength,e.name);if(e.isTuple())return new _m(e.components.map(n=>ct(this,ol,Hu).call(this,n)),e.name);switch(e.baseType){case"address":return new Kte(e.name);case"bool":return new Vte(e.name);case"string":return new tre(e.name);case"bytes":return new Wte(e.name);case"":return new Qte(e.name)}let r=e.type.match(vne);if(r){let n=parseInt(r[2]||"256");return ye(n!==0&&n<=256&&n%8===0,"invalid "+r[1]+" bit length","param",e),new ere(n/8,r[1]==="int",e.name)}if(r=e.type.match(gne),r){let n=parseInt(r[1]);return ye(n!==0&&n<=32,"invalid bytes length","param",e),new Zte(n,e.name)}ye(!1,"invalid type","type",e.type)};class bne{constructor(e,r,n){xe(this,"fragment");xe(this,"name");xe(this,"signature");xe(this,"topic");xe(this,"args");const s=e.name,i=e.format();Dt(this,{fragment:e,name:s,signature:i,topic:r,args:n})}}class wne{constructor(e,r,n,s){xe(this,"fragment");xe(this,"name");xe(this,"args");xe(this,"signature");xe(this,"selector");xe(this,"value");const i=e.name,o=e.format();Dt(this,{fragment:e,name:i,args:n,signature:o,selector:r,value:s})}}class Ane{constructor(e,r,n){xe(this,"fragment");xe(this,"name");xe(this,"args");xe(this,"signature");xe(this,"selector");const s=e.name,i=e.format();Dt(this,{fragment:e,name:s,args:n,signature:i,selector:r})}}class c9{constructor(e){xe(this,"hash");xe(this,"_isIndexed");Dt(this,{hash:e,_isIndexed:!0})}static isIndexed(e){return!!(e&&e._isIndexed)}}const u9={0:"generic panic",1:"assert(false)",17:"arithmetic overflow",18:"division or modulo by zero",33:"enum overflow",34:"invalid encoded storage byte array accessed",49:"out-of-bounds array access; popping on an empty array",50:"out-of-bounds access of an array or bytesN",65:"out of memory",81:"uninitialized function"},h9={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:t=>`reverted with reason string ${JSON.stringify(t)}`},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"],reason:t=>{let e="unknown panic code";return t>=0&&t<=255&&u9[t.toString()]&&(e=u9[t.toString()]),`reverted with panic code 0x${t.toString(16)} (${e})`}}};var uo,ho,po,Ti,zh,cg,Kh,ug;const eh=class{constructor(e){Fe(this,zh);Fe(this,Kh);xe(this,"fragments");xe(this,"deploy");xe(this,"fallback");xe(this,"receive");Fe(this,uo,void 0);Fe(this,ho,void 0);Fe(this,po,void 0);Fe(this,Ti,void 0);let r=[];typeof e=="string"?r=JSON.parse(e):r=e,le(this,po,new Map),le(this,uo,new Map),le(this,ho,new Map);const n=[];for(const o of r)try{n.push(Xc.from(o))}catch(f){console.log("EE",f)}Dt(this,{fragments:Object.freeze(n)});let s=null,i=!1;le(this,Ti,this.getAbiCoder()),this.fragments.forEach((o,f)=>{let u;switch(o.type){case"constructor":if(this.deploy){console.log("duplicate definition - constructor");return}Dt(this,{deploy:o});return;case"fallback":o.inputs.length===0?i=!0:(ye(!s||o.payable!==s.payable,"conflicting fallback fragments",`fragments[${f}]`,o),s=o,i=s.payable);return;case"function":u=te(this,po);break;case"event":u=te(this,ho);break;case"error":u=te(this,uo);break;default:return}const h=o.format();u.has(h)||u.set(h,o)}),this.deploy||Dt(this,{deploy:bf.from("constructor()")}),Dt(this,{fallback:s,receive:i})}format(e){const r=e?"minimal":"full";return this.fragments.map(s=>s.format(r))}formatJson(){const e=this.fragments.map(r=>r.format("json"));return JSON.stringify(e.map(r=>JSON.parse(r)))}getAbiCoder(){return zp.defaultAbiCoder()}getFunctionName(e){const r=ct(this,zh,cg).call(this,e,null,!1);return ye(r,"no matching function","key",e),r.name}hasFunction(e){return!!ct(this,zh,cg).call(this,e,null,!1)}getFunction(e,r){return ct(this,zh,cg).call(this,e,r||null,!0)}forEachFunction(e){const r=Array.from(te(this,po).keys());r.sort((n,s)=>n.localeCompare(s));for(let n=0;nn.localeCompare(s));for(let n=0;n1){const i=s.map(o=>JSON.stringify(o.format())).join(", ");ye(!1,`ambiguous error description (i.e. ${i})`,"name",e)}return s[0]}if(e=us.from(e).format(),e==="Error(string)")return us.from("error Error(string)");if(e==="Panic(uint256)")return us.from("error Panic(uint256)");const n=te(this,uo).get(e);return n||null}forEachError(e){const r=Array.from(te(this,uo).keys());r.sort((n,s)=>n.localeCompare(s));for(let n=0;ni.type==="string"?Yc(o):i.type==="bytes"?mn(At(o)):(i.type==="bool"&&typeof o=="boolean"&&(o=o?"0x01":"0x00"),i.type.match(/^u?int/)&&(o=Il(o)),i.type==="address"&&te(this,Ti).encode(["address"],[o]),Wc(At(o),32));for(r.forEach((i,o)=>{const f=e.inputs[o];if(!f.indexed){ye(i==null,"cannot filter non-indexed parameters; must be null","contract."+f.name,i);return}i==null?n.push(null):f.baseType==="array"||f.baseType==="tuple"?ye(!1,"filtering with tuples or arrays not supported","contract."+f.name,i):Array.isArray(i)?n.push(i.map(u=>s(f,u))):n.push(s(f,i))});n.length&&n[n.length-1]===null;)n.pop();return n}encodeEventLog(e,r){if(typeof e=="string"){const o=this.getEvent(e);ye(o,"unknown event","eventFragment",e),e=o}const n=[],s=[],i=[];return e.anonymous||n.push(e.topicHash),ye(r.length===e.inputs.length,"event arguments/values mismatch","values",r),e.inputs.forEach((o,f)=>{const u=r[f];if(o.indexed)if(o.type==="string")n.push(Yc(u));else if(o.type==="bytes")n.push(mn(u));else{if(o.baseType==="tuple"||o.baseType==="array")throw new Error("not implemented");n.push(te(this,Ti).encode([o.type],[u]))}else s.push(o),i.push(u)}),{data:te(this,Ti).encode(s,i),topics:n}}decodeEventLog(e,r,n){if(typeof e=="string"){const w=this.getEvent(e);ye(w,"unknown event","eventFragment",e),e=w}if(n!=null&&!e.anonymous){const w=e.topicHash;ye(Mn(n[0],32)&&n[0].toLowerCase()===w,"fragment/topic mismatch","topics[0]",n[0]),n=n.slice(1)}const s=[],i=[],o=[];e.inputs.forEach((w,A)=>{w.indexed?w.type==="string"||w.type==="bytes"||w.baseType==="tuple"||w.baseType==="array"?(s.push(Ei.from({type:"bytes32",name:w.name})),o.push(!0)):(s.push(w),o.push(!1)):(i.push(w),o.push(!1))});const f=n!=null?te(this,Ti).decode(s,jn(n)):null,u=te(this,Ti).decode(i,r,!0),h=[],p=[];let d=0,v=0;return e.inputs.forEach((w,A)=>{let M=null;if(w.indexed)if(f==null)M=new c9(null);else if(o[A])M=new c9(f[v++]);else try{M=f[v++]}catch(R){M=R}else try{M=u[d++]}catch(R){M=R}h.push(M),p.push(w.name||null)}),av.fromItems(h,p)}parseTransaction(e){const r=Br(e.data,"tx.data"),n=St(e.value!=null?e.value:0,"tx.value"),s=this.getFunction(At(r.slice(0,4)));if(!s)return null;const i=te(this,Ti).decode(s.inputs,r.slice(4));return new wne(s,s.selector,i,n)}parseCallResult(e){throw new Error("@TODO")}parseLog(e){const r=this.getEvent(e.topics[0]);return!r||r.anonymous?null:new bne(r,r.topicHash,this.decodeEventLog(r,e.data,e.topics))}parseError(e){const r=At(e),n=this.getError(Cn(r,0,4));if(!n)return null;const s=te(this,Ti).decode(n.inputs,Cn(r,4));return new Ane(n,n.selector,s)}static from(e){return e instanceof eh?e:typeof e=="string"?new eh(JSON.parse(e)):typeof e.format=="function"?new eh(e.format("json")):new eh(e)}};let xA=eh;uo=new WeakMap,ho=new WeakMap,po=new WeakMap,Ti=new WeakMap,zh=new WeakSet,cg=function(e,r,n){if(Mn(e)){const i=e.toLowerCase();for(const o of te(this,po).values())if(i===o.selector)return o;return null}if(e.indexOf("(")===-1){const i=[];for(const[o,f]of te(this,po))o.split("(")[0]===e&&i.push(f);if(r){const o=r.length>0?r[r.length-1]:null;let f=r.length,u=!0;Ui.isTyped(o)&&o.type==="overrides"&&(u=!1,f--);for(let h=i.length-1;h>=0;h--){const p=i[h].inputs.length;p!==f&&(!u||p!==f-1)&&i.splice(h,1)}for(let h=i.length-1;h>=0;h--){const p=i[h].inputs;for(let d=0;d=p.length){if(r[d].type==="overrides")continue;i.splice(h,1);break}if(r[d].type!==p[d].baseType){i.splice(h,1);break}}}}if(i.length===1&&r&&r.length!==i[0].inputs.length){const o=r[r.length-1];(o==null||Array.isArray(o)||typeof o!="object")&&i.splice(0,1)}if(i.length===0)return null;if(i.length>1&&n){const o=i.map(f=>JSON.stringify(f.format())).join(", ");ye(!1,`ambiguous function description (i.e. matches ${o})`,"key",e)}return i[0]}const s=te(this,po).get(Eo.from(e).format());return s||null},Kh=new WeakSet,ug=function(e,r,n){if(Mn(e)){const i=e.toLowerCase();for(const o of te(this,ho).values())if(i===o.topicHash)return o;return null}if(e.indexOf("(")===-1){const i=[];for(const[o,f]of te(this,ho))o.split("(")[0]===e&&i.push(f);if(r){for(let o=i.length-1;o>=0;o--)i[o].inputs.length=0;o--){const f=i[o].inputs;for(let u=0;u1&&n){const o=i.map(f=>JSON.stringify(f.format())).join(", ");ye(!1,`ambiguous event description (i.e. matches ${o})`,"key",e)}return i[0]}const s=te(this,ho).get(xo.from(e).format());return s||null};const HC=BigInt(0);function X0(t){return t??null}function Oi(t){return t==null?null:t.toString()}class xne{constructor(e,r,n){xe(this,"gasPrice");xe(this,"maxFeePerGas");xe(this,"maxPriorityFeePerGas");Dt(this,{gasPrice:X0(e),maxFeePerGas:X0(r),maxPriorityFeePerGas:X0(n)})}toJSON(){const{gasPrice:e,maxFeePerGas:r,maxPriorityFeePerGas:n}=this;return{_type:"FeeData",gasPrice:Oi(e),maxFeePerGas:Oi(r),maxPriorityFeePerGas:Oi(n)}}}function yv(t){const e={};t.to&&(e.to=t.to),t.from&&(e.from=t.from),t.data&&(e.data=At(t.data));const r="chainId,gasLimit,gasPrice,maxFeePerGas,maxPriorityFeePerGas,value".split(/,/);for(const s of r)!(s in t)||t[s]==null||(e[s]=St(t[s],`request.${s}`));const n="type,nonce".split(/,/);for(const s of n)!(s in t)||t[s]==null||(e[s]=br(t[s],`request.${s}`));return t.accessList&&(e.accessList=fu(t.accessList)),"blockTag"in t&&(e.blockTag=t.blockTag),"enableCcipRead"in t&&(e.enableCcipRead=!!t.enableCcipRead),"customData"in t&&(e.customData=t.customData),e}var ff;class Ene{constructor(e,r){xe(this,"provider");xe(this,"number");xe(this,"hash");xe(this,"timestamp");xe(this,"parentHash");xe(this,"nonce");xe(this,"difficulty");xe(this,"gasLimit");xe(this,"gasUsed");xe(this,"miner");xe(this,"extraData");xe(this,"baseFeePerGas");Fe(this,ff,void 0);le(this,ff,e.transactions.map(n=>typeof n!="string"?new Kp(n,r):n)),Dt(this,{provider:r,hash:X0(e.hash),number:e.number,timestamp:e.timestamp,parentHash:e.parentHash,nonce:e.nonce,difficulty:e.difficulty,gasLimit:e.gasLimit,gasUsed:e.gasUsed,miner:e.miner,extraData:e.extraData,baseFeePerGas:X0(e.baseFeePerGas)})}get transactions(){return te(this,ff).map(e=>typeof e=="string"?e:e.hash)}get prefetchedTransactions(){const e=te(this,ff).slice();return e.length===0?[]:(nt(typeof e[0]=="object","transactions were not prefetched with block request","UNSUPPORTED_OPERATION",{operation:"transactionResponses()"}),e)}toJSON(){const{baseFeePerGas:e,difficulty:r,extraData:n,gasLimit:s,gasUsed:i,hash:o,miner:f,nonce:u,number:h,parentHash:p,timestamp:d,transactions:v}=this;return{_type:"Block",baseFeePerGas:Oi(e),difficulty:Oi(r),extraData:n,gasLimit:Oi(s),gasUsed:Oi(i),hash:o,miner:f,nonce:u,number:h,parentHash:p,timestamp:d,transactions:v}}[Symbol.iterator](){let e=0;const r=this.transactions;return{next:()=>enew Hy(s,r))));let n=HC;e.effectiveGasPrice!=null?n=e.effectiveGasPrice:e.gasPrice!=null&&(n=e.gasPrice),Dt(this,{provider:r,to:e.to,from:e.from,contractAddress:e.contractAddress,hash:e.hash,index:e.index,blockHash:e.blockHash,blockNumber:e.blockNumber,logsBloom:e.logsBloom,gasUsed:e.gasUsed,cumulativeGasUsed:e.cumulativeGasUsed,gasPrice:n,type:e.type,status:e.status,root:e.root})}get logs(){return te(this,Yp)}toJSON(){const{to:e,from:r,contractAddress:n,hash:s,index:i,blockHash:o,blockNumber:f,logsBloom:u,logs:h,status:p,root:d}=this;return{_type:"TransactionReceipt",blockHash:o,blockNumber:f,contractAddress:n,cumulativeGasUsed:Oi(this.cumulativeGasUsed),from:r,gasPrice:Oi(this.gasPrice),gasUsed:Oi(this.gasUsed),hash:s,index:i,logs:h,logsBloom:u,root:d,status:p,to:e}}get length(){return this.logs.length}[Symbol.iterator](){let e=0;return{next:()=>e{if(f)return null;const{blockNumber:d,nonce:v}=await Gi({blockNumber:this.provider.getBlockNumber(),nonce:this.provider.getTransactionCount(this.from)});if(v=n)return h}else if(await u(),n===0)return null;return await new Promise((d,v)=>{const w=[],A=()=>{w.forEach(R=>R())};if(w.push(()=>{f=!0}),s>0){const R=setTimeout(()=>{A(),v(oi("wait for transaction timeout","TIMEOUT"))},s);w.push(()=>{clearTimeout(R)})}const M=async R=>{await R.confirmations()>=n&&(A(),d(R))};if(w.push(()=>{this.provider.off(this.hash,M)}),this.provider.on(this.hash,M),i>=0){const R=async()=>{try{await u()}catch(N){if(ko(N,"TRANSACTION_REPLACED")){A(),v(N);return}}f||this.provider.once("block",R)};w.push(()=>{this.provider.off("block",R)}),this.provider.once("block",R)}})}isMined(){return this.blockHash!=null}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}removedEvent(){return nt(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),KC(this)}reorderedEvent(e){return nt(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),nt(!e||e.isMined(),"unmined 'other' transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),zC(this,e)}replaceableTransaction(e){ye(Number.isInteger(e)&&e>=0,"invalid startBlock","startBlock",e);const r=new q6(this,this.provider);return le(r,fl,e),r}};let Kp=q6;fl=new WeakMap;function Mne(t){return{orphan:"drop-block",hash:t.hash,number:t.number}}function zC(t,e){return{orphan:"reorder-transaction",tx:t,other:e}}function KC(t){return{orphan:"drop-transaction",tx:t}}function Sne(t){return{orphan:"drop-log",log:{transactionHash:t.transactionHash,blockHash:t.blockHash,blockNumber:t.blockNumber,address:t.address,data:t.data,topics:Object.freeze(t.topics.slice()),index:t.index}}}class L6 extends Hy{constructor(r,n,s){super(r,r.provider);xe(this,"interface");xe(this,"fragment");xe(this,"args");const i=n.decodeEventLog(s,r.data,r.topics);Dt(this,{args:i,fragment:s,interface:n})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}}var qh;class _ne extends jC{constructor(r,n,s){super(s,n);Fe(this,qh,void 0);le(this,qh,r)}get logs(){return super.logs.map(r=>{const n=r.topics.length?te(this,qh).getEvent(r.topics[0]):null;return n?new L6(r,te(this,qh),n):r})}}qh=new WeakMap;var Qp;class D6 extends Kp{constructor(r,n,s){super(s,n);Fe(this,Qp,void 0);le(this,Qp,r)}async wait(r){const n=await super.wait();return n==null?null:new _ne(te(this,Qp),this.provider,n)}}Qp=new WeakMap;class qC extends _N{constructor(r,n,s,i){super(r,n,s);xe(this,"log");Dt(this,{log:i})}async getBlock(){return await this.log.getBlock()}async getTransaction(){return await this.log.getTransaction()}async getTransactionReceipt(){return await this.log.getTransactionReceipt()}}class Rne extends qC{constructor(e,r,n,s,i){super(e,r,n,new L6(i,e.interface,s));const o=e.interface.decodeEventLog(s,this.log.data,this.log.topics);Dt(this,{args:o,fragment:s})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}}const d9=BigInt(0);function GC(t){return t&&typeof t.call=="function"}function VC(t){return t&&typeof t.estimateGas=="function"}function F6(t){return t&&typeof t.resolveName=="function"}function WC(t){return t&&typeof t.sendTransaction=="function"}var Xp;class Nne{constructor(e,r,n){Fe(this,Xp,void 0);xe(this,"fragment");if(Dt(this,{fragment:r}),r.inputs.lengthn[u]==null?null:f.walkAsync(n[u],(p,d)=>p==="address"?Rs(d,i):d)));return e.interface.encodeFilterTopics(r,o)}())}getTopicFilter(){return te(this,Xp)}}Xp=new WeakMap;function Jc(t,e){return t==null?null:typeof t[e]=="function"?t:t.provider&&typeof t.provider[e]=="function"?t.provider:null}function hc(t){return t==null?null:t.provider||null}async function ZC(t,e){const r=yv(Ui.dereference(t,"overrides"));return ye(r.to==null||(e||[]).indexOf("to")>=0,"cannot override to","overrides.to",r.to),ye(r.data==null||(e||[]).indexOf("data")>=0,"cannot override data","overrides.data",r.data),r.from&&(r.from=await Rs(r.from)),r}async function Cne(t,e,r){const n=Jc(t,"resolveName"),s=F6(n)?n:null;return await Promise.all(e.map((i,o)=>i.walkAsync(r[o],(f,u)=>(u=Ui.dereference(u,f),f==="address"?Rs(u,s):u))))}function Tne(t){const e=async function(o){const f=await ZC(o,["data"]);f.to=await t.getAddress();const u=t.interface,h=St(f.value||d9,"overrides.value")===d9,p=(f.data||"0x")==="0x";u.fallback&&!u.fallback.payable&&u.receive&&!p&&!h&&ye(!1,"cannot send data to receive or send value to non-payable fallback","overrides",o),ye(u.fallback||p,"cannot send data to receive-only contract","overrides.data",f.data);const d=u.receive||u.fallback&&u.fallback.payable;return ye(d||h,"cannot send value to non-payable fallback","overrides.value",f.value),ye(u.fallback||p,"cannot send data to receive-only contract","overrides.data",f.data),f},r=async function(o){const f=Jc(t.runner,"call");nt(GC(f),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});const u=await e(o);try{return await f.call(u)}catch(h){throw _6(h)&&h.data?t.interface.makeError(h.data,u):h}},n=async function(o){const f=t.runner;nt(WC(f),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const u=await f.sendTransaction(await e(o)),h=hc(t.runner);return new D6(t.interface,h,u)},s=async function(o){const f=Jc(t.runner,"estimateGas");return nt(VC(f),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await f.estimateGas(await e(o))},i=async o=>await n(o);return Dt(i,{_contract:t,estimateGas:s,populateTransaction:e,send:n,staticCall:r}),i}function kne(t,e){const r=function(...h){const p=t.interface.getFunction(e,h);return nt(p,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment"}),p},n=async function(...h){const p=r(...h);let d={};if(p.inputs.length+1===h.length&&(d=await ZC(h.pop())),p.inputs.length!==h.length)throw new Error("internal error: fragment inputs doesn't match arguments; should not happen");const v=await Cne(t.runner,p.inputs,h);return Object.assign({},d,await Gi({to:t.getAddress(),data:t.interface.encodeFunctionData(p,v)}))},s=async function(...h){const p=await f(...h);return p.length===1?p[0]:p},i=async function(...h){const p=t.runner;nt(WC(p),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const d=await p.sendTransaction(await n(...h)),v=hc(t.runner);return new D6(t.interface,v,d)},o=async function(...h){const p=Jc(t.runner,"estimateGas");return nt(VC(p),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await p.estimateGas(await n(...h))},f=async function(...h){const p=Jc(t.runner,"call");nt(GC(p),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});const d=await n(...h);let v="0x";try{v=await p.call(d)}catch(A){throw _6(A)&&A.data?t.interface.makeError(A.data,d):A}const w=r(...h);return t.interface.decodeFunctionResult(w,v)},u=async(...h)=>r(...h).constant?await s(...h):await i(...h);return Dt(u,{name:t.interface.getFunctionName(e),_contract:t,_key:e,getFragment:r,estimateGas:o,populateTransaction:n,send:i,staticCall:s,staticCallResult:f}),Object.defineProperty(u,"fragment",{configurable:!1,enumerable:!0,get:()=>{const h=t.interface.getFunction(e);return nt(h,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment"}),h}}),u}function Bne(t,e){const r=function(...s){const i=t.interface.getEvent(e,s);return nt(i,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment"}),i},n=function(...s){return new Nne(t,r(...s),s)};return Dt(n,{name:t.interface.getEventName(e),_contract:t,_key:e,getFragment:r}),Object.defineProperty(n,"fragment",{configurable:!1,enumerable:!0,get:()=>{const s=t.interface.getEvent(e);return nt(s,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment"}),s}}),n}const bv=Symbol.for("_ethersInternal_contract"),YC=new WeakMap;function Ine(t,e){YC.set(t[bv],e)}function Ks(t){return YC.get(t[bv])}function Pne(t){return t&&typeof t=="object"&&"getTopicFilter"in t&&typeof t.getTopicFilter=="function"&&t.fragment}async function U6(t,e){let r,n=null;if(Array.isArray(e)){const i=function(o){if(Mn(o,32))return o;const f=t.interface.getEvent(o);return ye(f,"unknown fragment","name",o),f.topicHash};r=e.map(o=>o==null?null:Array.isArray(o)?o.map(i):i(o))}else e==="*"?r=[null]:typeof e=="string"?Mn(e,32)?r=[e]:(n=t.interface.getEvent(e),ye(n,"unknown fragment","event",e),r=[n.topicHash]):Pne(e)?r=await e.getTopicFilter():"fragment"in e?(n=e.fragment,r=[n.topicHash]):ye(!1,"unknown event name","event",e);r=r.map(i=>{if(i==null)return null;if(Array.isArray(i)){const o=Array.from(new Set(i.map(f=>f.toLowerCase())).values());return o.length===1?o[0]:(o.sort(),o)}return i.toLowerCase()});const s=r.map(i=>i==null?"null":Array.isArray(i)?i.join("|"):i).join("&");return{fragment:n,tag:s,topics:r}}async function H0(t,e){const{subs:r}=Ks(t);return r.get((await U6(t,e)).tag)||null}async function p9(t,e,r){const n=hc(t.runner);nt(n,"contract runner does not support subscribing","UNSUPPORTED_OPERATION",{operation:e});const{fragment:s,tag:i,topics:o}=await U6(t,r),{addr:f,subs:u}=Ks(t);let h=u.get(i);if(!h){const d={address:f||t,topics:o},v=R=>{let N=s;if(N==null)try{N=t.interface.getEvent(R.topics[0])}catch{}if(N){const C=N,B=s?t.interface.decodeEventLog(s,R.data,R.topics):[];MA(t,r,B,O=>new Rne(t,O,r,C,R))}else MA(t,r,[],C=>new qC(t,C,r,R))};let w=[];h={tag:i,listeners:[],start:()=>{w.length||w.push(n.on(d,v))},stop:async()=>{if(w.length==0)return;let R=w;w=[],await Promise.all(R),n.off(d,v)}},u.set(i,h)}return h}let EA=Promise.resolve();async function One(t,e,r,n){await EA;const s=await H0(t,e);if(!s)return!1;const i=s.listeners.length;return s.listeners=s.listeners.filter(({listener:o,once:f})=>{const u=Array.from(r);n&&u.push(n(f?null:o));try{o.call(t,...u)}catch{}return!f}),i>0}async function MA(t,e,r,n){try{await EA}catch{}const s=One(t,e,r,n);return EA=s,await s}const Rm=["then"];var Nie;const ep=class{constructor(e,r,n,s){xe(this,"target");xe(this,"interface");xe(this,"runner");xe(this,"filters");xe(this,Nie);xe(this,"fallback");ye(typeof e=="string"||eC(e),"invalid value for Contract target","target",e),n==null&&(n=null);const i=xA.from(r);Dt(this,{target:e,runner:n,interface:i}),Object.defineProperty(this,bv,{value:{}});let o,f=null,u=null;if(s){const d=hc(n);u=new D6(this.interface,d,s)}let h=new Map;if(typeof e=="string")if(Mn(e))f=e,o=Promise.resolve(e);else{const d=Jc(n,"resolveName");if(!F6(d))throw oi("contract runner does not support name resolution","UNSUPPORTED_OPERATION",{operation:"resolveName"});o=d.resolveName(e).then(v=>{if(v==null)throw new Error("TODO");return Ks(this).addr=v,v})}else o=e.getAddress().then(d=>{if(d==null)throw new Error("TODO");return Ks(this).addr=d,d});Ine(this,{addrPromise:o,addr:f,deployTx:u,subs:h});const p=new Proxy({},{get:(d,v,w)=>{if(Rm.indexOf(v)>=0)return Reflect.get(d,v,w);const A=String(v),M=this.getEvent(A);if(M)return M;throw new Error(`unknown contract event: ${A}`)},has:(d,v)=>Rm.indexOf(v)>=0?Reflect.has(d,v):Reflect.has(d,v)||this.interface.hasEvent(String(v))});return Dt(this,{filters:p}),Dt(this,{fallback:i.receive||i.fallback?Tne(this):null}),new Proxy(this,{get:(d,v,w)=>{if(v in d||Rm.indexOf(v)>=0)return Reflect.get(d,v,w);const A=String(v),M=d.getFunction(A);if(M)return M;throw new Error(`unknown contract method: ${A}`)},has:(d,v)=>v in d||Rm.indexOf(v)>=0?Reflect.has(d,v):d.interface.hasFunction(String(v))})}connect(e){return new ep(this.target,this.interface,e)}attach(e){return new ep(e,this.interface,this.runner)}async getAddress(){return await Ks(this).addrPromise}async getDeployedCode(){const e=hc(this.runner);nt(e,"runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"getDeployedCode"});const r=await e.getCode(await this.getAddress());return r==="0x"?null:r}async waitForDeployment(){const e=this.deploymentTransaction();if(e)return await e.wait(),this;if(await this.getDeployedCode()!=null)return this;const n=hc(this.runner);return nt(n!=null,"contract runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"waitForDeployment"}),new Promise((s,i)=>{const o=async()=>{try{if(await this.getDeployedCode()!=null)return s(this);n.once("block",o)}catch(f){i(f)}};o()})}deploymentTransaction(){return Ks(this).deployTx}getFunction(e){return typeof e!="string"&&(e=e.format()),kne(this,e)}getEvent(e){return typeof e!="string"&&(e=e.format()),Bne(this,e)}async queryTransaction(e){throw new Error("@TODO")}async queryFilter(e,r,n){r==null&&(r=0),n==null&&(n="latest");const{addr:s,addrPromise:i}=Ks(this),o=s||await i,{fragment:f,topics:u}=await U6(this,e),h={address:o,topics:u,fromBlock:r,toBlock:n},p=hc(this.runner);return nt(p,"contract runner does not have a provider","UNSUPPORTED_OPERATION",{operation:"queryFilter"}),(await p.getLogs(h)).map(d=>{let v=f;if(v==null)try{v=this.interface.getEvent(d.topics[0])}catch{}return v?new L6(d,this.interface,v):new Hy(d,p)})}async on(e,r){const n=await p9(this,"on",e);return n.listeners.push({listener:r,once:!1}),n.start(),this}async once(e,r){const n=await p9(this,"once",e);return n.listeners.push({listener:r,once:!0}),n.start(),this}async emit(e,...r){return await MA(this,e,r,null)}async listenerCount(e){if(e){const s=await H0(this,e);return s?s.listeners.length:0}const{subs:r}=Ks(this);let n=0;for(const{listeners:s}of r.values())n+=s.length;return n}async listeners(e){if(e){const s=await H0(this,e);return s?s.listeners.map(({listener:i})=>i):[]}const{subs:r}=Ks(this);let n=[];for(const{listeners:s}of r.values())n=n.concat(s.map(({listener:i})=>i));return n}async off(e,r){const n=await H0(this,e);if(!n)return this;if(r){const s=n.listeners.map(({listener:i})=>i).indexOf(r);s>=0&&n.listeners.splice(s,1)}return(r==null||n.listeners.length===0)&&(n.stop(),Ks(this).subs.delete(n.tag)),this}async removeAllListeners(e){if(e){const r=await H0(this,e);if(!r)return this;r.stop(),Ks(this).subs.delete(r.tag)}else{const{subs:r}=Ks(this);for(const{tag:n,stop:s}of r.values())s(),r.delete(n)}return this}async addListener(e,r){return await this.on(e,r)}async removeListener(e,r){return await this.off(e,r)}static buildClass(e){class r extends ep{constructor(s,i=null){super(s,e,i)}}return r}static from(e,r,n){return n==null&&(n=null),new this(e,r,n)}};let SA=ep;Nie=bv;function Lne(){return SA}class Uc extends Lne(){}function Y2(t){return t.match(/^ipfs:\/\/ipfs\//i)?t=t.substring(12):t.match(/^ipfs:\/\//i)?t=t.substring(7):ye(!1,"unsupported IPFS format","link",t),`https://gateway.ipfs.io/ipfs/${t}`}class Dne{constructor(e){xe(this,"name");Dt(this,{name:e})}connect(e){return this}supportsCoinType(e){return!1}async encodeAddress(e,r){throw new Error("unsupported coin")}async decodeAddress(e,r){throw new Error("unsupported coin")}}const QC=new RegExp("^(ipfs)://(.*)$","i"),m9=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),QC,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];var ll,xc,cl,ju,Sv,XC;const tp=class{constructor(e,r,n){Fe(this,cl);xe(this,"provider");xe(this,"address");xe(this,"name");Fe(this,ll,void 0);Fe(this,xc,void 0);Dt(this,{provider:e,address:r,name:n}),le(this,ll,null),le(this,xc,new Uc(r,["function supportsInterface(bytes4) view returns (bool)","function resolve(bytes, bytes) view returns (bytes)","function addr(bytes32) view returns (address)","function addr(bytes32, uint) view returns (bytes)","function text(bytes32, string) view returns (string)","function contenthash(bytes32) view returns (bytes)"],e))}async supportsWildcard(){return te(this,ll)==null&&le(this,ll,(async()=>{try{return await te(this,xc).supportsInterface("0x9061b923")}catch(e){if(ko(e,"CALL_EXCEPTION"))return!1;throw le(this,ll,null),e}})()),await te(this,ll)}async getAddress(e){if(e==null&&(e=60),e===60)try{const i=await ct(this,cl,ju).call(this,"addr(bytes32)");return i==null||i===gA?null:i}catch(i){if(ko(i,"CALL_EXCEPTION"))return null;throw i}if(e>=0&&e<2147483648){let i=e+2147483648;const o=await ct(this,cl,ju).call(this,"addr(bytes32,uint)",[i]);if(Mn(o,20))return Hr(o)}let r=null;for(const i of this.provider.plugins)if(i instanceof Dne&&i.supportsCoinType(e)){r=i;break}if(r==null)return null;const n=await ct(this,cl,ju).call(this,"addr(bytes32,uint)",[e]);if(n==null||n==="0x")return null;const s=await r.decodeAddress(e,n);if(s!=null)return s;nt(!1,"invalid coin data","UNSUPPORTED_OPERATION",{operation:`getAddress(${e})`,info:{coinType:e,data:n}})}async getText(e){const r=await ct(this,cl,ju).call(this,"text(bytes32,string)",[e]);return r==null||r==="0x"?null:r}async getContentHash(){const e=await ct(this,cl,ju).call(this,"contenthash(bytes32)");if(e==null||e==="0x")return null;const r=e.match(/^0x(e3010170|e5010172)(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/);if(r){const s=r[1]==="e3010170"?"ipfs":"ipns",i=parseInt(r[4],16);if(r[5].length===i*2)return`${s}://${ree("0x"+r[2])}`}const n=e.match(/^0xe40101fa011b20([0-9a-f]*)$/);if(n&&n[1].length===64)return`bzz://${n[1]}`;nt(!1,"invalid or unsupported content hash data","UNSUPPORTED_OPERATION",{operation:"getContentHash()",info:{data:e}})}async getAvatar(){return(await this._getAvatar()).url}async _getAvatar(){const e=[{type:"name",value:this.name}];try{const r=await this.getText("avatar");if(r==null)return e.push({type:"!avatar",value:""}),{url:null,linkage:e};e.push({type:"avatar",value:r});for(let n=0;n{if(!Array.isArray(e))throw new Error("not an array");return e.map(r=>t(r))}}function H1(t,e){return r=>{const n={};for(const s in t){let i=s;if(e&&s in e&&!(i in r)){for(const o of e[s])if(o in r){i=o;break}}try{const o=t[s](r[i]);o!==void 0&&(n[s]=o)}catch(o){const f=o instanceof Error?o.message:"not-an-error";nt(!1,`invalid value for value.${s} (${f})`,"BAD_DATA",{value:r})}}return n}}function Fne(t){switch(t){case!0:case"true":return!0;case!1:case"false":return!1}ye(!1,`invalid boolean; ${JSON.stringify(t)}`,"value",t)}function Nd(t){return ye(Mn(t,!0),"invalid data","value",t),t}function ea(t){return ye(Mn(t,32),"invalid hash","value",t),t}const Une=H1({address:Hr,blockHash:ea,blockNumber:br,data:Nd,index:br,removed:xn(Fne,!1),topics:H6(ea),transactionHash:ea,transactionIndex:br},{index:["logIndex"]});function Hne(t){return Une(t)}const jne=H1({hash:xn(ea),parentHash:ea,number:br,timestamp:br,nonce:xn(Nd),difficulty:St,gasLimit:St,gasUsed:St,miner:xn(Hr),extraData:Nd,baseFeePerGas:xn(St)});function zne(t){const e=jne(t);return e.transactions=t.transactions.map(r=>typeof r=="string"?r:JC(r)),e}const Kne=H1({transactionIndex:br,blockNumber:br,transactionHash:ea,address:Hr,topics:H6(ea),data:Nd,index:br,blockHash:ea},{index:["logIndex"]});function qne(t){return Kne(t)}const Gne=H1({to:xn(Hr,null),from:xn(Hr,null),contractAddress:xn(Hr,null),index:br,root:xn(At),gasUsed:St,logsBloom:xn(Nd),blockHash:ea,hash:ea,logs:H6(qne),blockNumber:br,cumulativeGasUsed:St,effectiveGasPrice:xn(St),status:xn(br),type:xn(br,0)},{effectiveGasPrice:["gasPrice"],hash:["transactionHash"],index:["transactionIndex"]});function Vne(t){return Gne(t)}function JC(t){t.to&&St(t.to)===g9&&(t.to="0x0000000000000000000000000000000000000000");const e=H1({hash:ea,type:r=>r==="0x"||r==null?0:br(r),accessList:xn(fu,null),blockHash:xn(ea,null),blockNumber:xn(br,null),transactionIndex:xn(br,null),from:Hr,gasPrice:xn(St),maxPriorityFeePerGas:xn(St),maxFeePerGas:xn(St),gasLimit:St,to:xn(Hr,null),value:St,nonce:br,data:Nd,creates:xn(Hr,null),chainId:xn(St,null)},{data:["input"],gasLimit:["gas"]})(t);if(e.to==null&&e.creates==null&&(e.creates=zte(e)),(t.type===1||t.type===2)&&t.accessList==null&&(e.accessList=[]),t.signature?e.signature=Va.from(t.signature):e.signature=Va.from(t),e.chainId==null){const r=e.signature.legacyChainId;r!=null&&(e.chainId=r)}return e.blockHash&&St(e.blockHash)===g9&&(e.blockHash=null),e}const Wne="0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e";class jy{constructor(e){xe(this,"name");Dt(this,{name:e})}clone(){return new jy(this.name)}}class zy extends jy{constructor(r,n){r==null&&(r=0);super(`org.ethers.network.plugins.GasCost#${r||0}`);xe(this,"effectiveBlock");xe(this,"txBase");xe(this,"txCreate");xe(this,"txDataZero");xe(this,"txDataNonzero");xe(this,"txAccessListStorageKey");xe(this,"txAccessListAddress");const s={effectiveBlock:r};function i(o,f){let u=(n||{})[o];u==null&&(u=f),ye(typeof u=="number",`invalud value for ${o}`,"costs",n),s[o]=u}i("txBase",21e3),i("txCreate",32e3),i("txDataZero",4),i("txDataNonzero",16),i("txAccessListStorageKey",1900),i("txAccessListAddress",2400),Dt(this,s)}clone(){return new zy(this.effectiveBlock,this)}}class Ky extends jy{constructor(r,n){super("org.ethers.plugins.network.Ens");xe(this,"address");xe(this,"targetNetwork");Dt(this,{address:r||Wne,targetNetwork:n??1})}clone(){return new Ky(this.address,this.targetNetwork)}}const Q2=new Map;var Gh,Vh,ul;const th=class{constructor(e,r){Fe(this,Gh,void 0);Fe(this,Vh,void 0);Fe(this,ul,void 0);le(this,Gh,e),le(this,Vh,St(r)),le(this,ul,new Map)}toJSON(){return{name:this.name,chainId:String(this.chainId)}}get name(){return te(this,Gh)}set name(e){le(this,Gh,e)}get chainId(){return te(this,Vh)}set chainId(e){le(this,Vh,St(e,"chainId"))}matches(e){if(e==null)return!1;if(typeof e=="string"){try{return this.chainId===St(e)}catch{}return this.name===e}if(typeof e=="number"||typeof e=="bigint"){try{return this.chainId===St(e)}catch{}return!1}if(typeof e=="object"){if(e.chainId!=null){try{return this.chainId===St(e.chainId)}catch{}return!1}return e.name!=null?this.name===e.name:!1}return!1}get plugins(){return Array.from(te(this,ul).values())}attachPlugin(e){if(te(this,ul).get(e.name))throw new Error(`cannot replace existing plugin: ${e.name} `);return te(this,ul).set(e.name,e.clone()),this}getPlugin(e){return te(this,ul).get(e)||null}getPlugins(e){return this.plugins.filter(r=>r.name.split("#")[0]===e)}clone(){const e=new th(this.name,this.chainId);return this.plugins.forEach(r=>{e.attachPlugin(r.clone())}),e}computeIntrinsicGas(e){const r=this.getPlugin("org.ethers.plugins.network.GasCost")||new zy;let n=r.txBase;if(e.to==null&&(n+=r.txCreate),e.data)for(let s=2;s{wf.register(i,s)})}t("mainnet",1,{ensNetwork:1,altNames:["homestead"]}),t("ropsten",3,{ensNetwork:3}),t("rinkeby",4,{ensNetwork:4}),t("goerli",5,{ensNetwork:5}),t("kovan",42,{ensNetwork:42}),t("sepolia",11155111,{}),t("classic",61,{}),t("classicKotti",6,{}),t("xdai",100,{ensNetwork:1}),t("optimism",10,{ensNetwork:1,etherscan:{url:"https://api-optimistic.etherscan.io/"}}),t("optimism-goerli",420,{etherscan:{url:"https://api-goerli-optimistic.etherscan.io/"}}),t("arbitrum",42161,{ensNetwork:1,etherscan:{url:"https://api.arbiscan.io/"}}),t("arbitrum-goerli",421613,{etherscan:{url:"https://api-goerli.arbiscan.io/"}}),t("matic",137,{ensNetwork:1,etherscan:{url:"https://api.polygonscan.com/"}}),t("matic-mumbai",80001,{altNames:["maticMumbai","maticmum"],etherscan:{url:"https://api-testnet.polygonscan.com/"}}),t("bnb",56,{ensNetwork:1,etherscan:{url:"http://api.bscscan.com"}}),t("bnbt",97,{etherscan:{url:"http://api-testnet.bscscan.com"}})}function _A(t){return JSON.parse(JSON.stringify(t))}var lf,Zs,hl,mo,Wh,hg;class Yne{constructor(e){Fe(this,Wh);Fe(this,lf,void 0);Fe(this,Zs,void 0);Fe(this,hl,void 0);Fe(this,mo,void 0);le(this,lf,e),le(this,Zs,null),le(this,hl,4e3),le(this,mo,-2)}get pollingInterval(){return te(this,hl)}set pollingInterval(e){le(this,hl,e)}start(){te(this,Zs)||(le(this,Zs,te(this,lf)._setTimeout(ct(this,Wh,hg).bind(this),te(this,hl))),ct(this,Wh,hg).call(this))}stop(){te(this,Zs)&&(te(this,lf)._clearTimeout(te(this,Zs)),le(this,Zs,null))}pause(e){this.stop(),e&&le(this,mo,-2)}resume(){this.start()}}lf=new WeakMap,Zs=new WeakMap,hl=new WeakMap,mo=new WeakMap,Wh=new WeakSet,hg=async function(){try{const e=await te(this,lf).getBlockNumber();if(te(this,mo)===-2){le(this,mo,e);return}if(e!==te(this,mo)){for(let r=te(this,mo)+1;r<=e;r++){if(te(this,Zs)==null)return;await te(this,lf).emit("block",r)}le(this,mo,e)}}catch{}te(this,Zs)!=null&&le(this,Zs,te(this,lf)._setTimeout(ct(this,Wh,hg).bind(this),te(this,hl)))};var Ec,Mc,dl;class $C{constructor(e){Fe(this,Ec,void 0);Fe(this,Mc,void 0);Fe(this,dl,void 0);le(this,Ec,e),le(this,dl,!1),le(this,Mc,r=>{this._poll(r,te(this,Ec))})}async _poll(e,r){throw new Error("sub-classes must override this")}start(){te(this,dl)||(le(this,dl,!0),te(this,Mc).call(this,-2),te(this,Ec).on("block",te(this,Mc)))}stop(){te(this,dl)&&(le(this,dl,!1),te(this,Ec).off("block",te(this,Mc)))}pause(e){this.stop()}resume(){this.start()}}Ec=new WeakMap,Mc=new WeakMap,dl=new WeakMap;var _v;class Qne extends $C{constructor(r,n){super(r);Fe(this,_v,void 0);le(this,_v,_A(n))}async _poll(r,n){throw new Error("@TODO")}}_v=new WeakMap;var Zh;class Xne extends $C{constructor(r,n){super(r);Fe(this,Zh,void 0);le(this,Zh,n)}async _poll(r,n){const s=await n.getTransactionReceipt(te(this,Zh));s&&n.emit(te(this,Zh),s)}}Zh=new WeakMap;var cf,Yh,Qh,pl,Ys,Rv,eT;class j6{constructor(e,r){Fe(this,Rv);Fe(this,cf,void 0);Fe(this,Yh,void 0);Fe(this,Qh,void 0);Fe(this,pl,void 0);Fe(this,Ys,void 0);le(this,cf,e),le(this,Yh,_A(r)),le(this,Qh,ct(this,Rv,eT).bind(this)),le(this,pl,!1),le(this,Ys,-2)}start(){te(this,pl)||(le(this,pl,!0),te(this,Ys)===-2&&te(this,cf).getBlockNumber().then(e=>{le(this,Ys,e)}),te(this,cf).on("block",te(this,Qh)))}stop(){te(this,pl)&&(le(this,pl,!1),te(this,cf).off("block",te(this,Qh)))}pause(e){this.stop(),e&&le(this,Ys,-2)}resume(){this.start()}}cf=new WeakMap,Yh=new WeakMap,Qh=new WeakMap,pl=new WeakMap,Ys=new WeakMap,Rv=new WeakSet,eT=async function(e){if(te(this,Ys)===-2)return;const r=_A(te(this,Yh));r.fromBlock=te(this,Ys)+1,r.toBlock=e;const n=await te(this,cf).getLogs(r);if(n.length===0){te(this,Ys){if(n==null)return"null";if(typeof n=="bigint")return`bigint:${n.toString()}`;if(typeof n=="string")return n.toLowerCase();if(typeof n=="object"&&!Array.isArray(n)){const s=Object.keys(n);return s.sort(),s.reduce((i,o)=>(i[o]=n[o],i),{})}return n})}class tT{constructor(e){xe(this,"name");Dt(this,{name:e})}start(){}stop(){}pause(e){}resume(){}}function eie(t){return JSON.parse(JSON.stringify(t))}function RA(t){return t=Array.from(new Set(t).values()),t.sort(),t}async function X2(t,e){if(t==null)throw new Error("invalid event");if(Array.isArray(t)&&(t={topics:t}),typeof t=="string")switch(t){case"block":case"pending":case"debug":case"error":case"network":return{type:t,tag:t}}if(Mn(t,32)){const r=t.toLowerCase();return{type:"transaction",tag:dg("tx",{hash:r}),hash:r}}if(t.orphan){const r=t;return{type:"orphan",tag:dg("orphan",r),filter:eie(r)}}if(t.address||t.topics){const r=t,n={topics:(r.topics||[]).map(s=>s==null?null:Array.isArray(s)?RA(s.map(i=>i.toLowerCase())):s.toLowerCase())};if(r.address){const s=[],i=[],o=f=>{Mn(f)?s.push(f):i.push((async()=>{s.push(await Rs(f,e))})())};Array.isArray(r.address)?r.address.forEach(o):o(r.address),i.length&&await Promise.all(i),n.address=RA(s.map(f=>f.toLowerCase()))}return{filter:n,tag:dg("event",n),type:"event"}}ye(!1,"unknown ProviderEvent","event",t)}function J2(){return new Date().getTime()}const tie={cacheTimeout:250};var ki,ml,Bi,Xh,As,Sc,gl,uf,Jp,Qs,Jh,$p,as,zs,e1,NA,t1,CA,_c,j0,Nv,rT,Rc,z0,$h,pg;class rie{constructor(e,r){Fe(this,as);Fe(this,e1);Fe(this,t1);Fe(this,_c);Fe(this,Nv);Fe(this,Rc);Fe(this,$h);Fe(this,ki,void 0);Fe(this,ml,void 0);Fe(this,Bi,void 0);Fe(this,Xh,void 0);Fe(this,As,void 0);Fe(this,Sc,void 0);Fe(this,gl,void 0);Fe(this,uf,void 0);Fe(this,Jp,void 0);Fe(this,Qs,void 0);Fe(this,Jh,void 0);Fe(this,$p,void 0);if(le(this,$p,Object.assign({},tie,r||{})),e==="any")le(this,Sc,!0),le(this,As,null);else if(e){const n=wf.from(e);le(this,Sc,!1),le(this,As,Promise.resolve(n)),setTimeout(()=>{this.emit("network",n,null)},0)}else le(this,Sc,!1),le(this,As,null);le(this,uf,-1),le(this,gl,new Map),le(this,ki,new Map),le(this,ml,new Map),le(this,Bi,null),le(this,Xh,!1),le(this,Jp,1),le(this,Qs,new Map),le(this,Jh,!1)}get provider(){return this}get plugins(){return Array.from(te(this,ml).values())}attachPlugin(e){if(te(this,ml).get(e.name))throw new Error(`cannot replace existing plugin: ${e.name} `);return te(this,ml).set(e.name,e.connect(this)),this}getPlugin(e){return te(this,ml).get(e)||null}get disableCcipRead(){return te(this,Jh)}set disableCcipRead(e){le(this,Jh,!!e)}async ccipReadFetch(e,r,n){if(this.disableCcipRead||n.length===0||e.to==null)return null;const s=e.to.toLowerCase(),i=r.toLowerCase(),o=[];for(let f=0;f=500,`response not found during CCIP fetch: ${d}`,"OFFCHAIN_FAULT",{reason:"404_MISSING_RESOURCE",transaction:e,info:{url:u,errorMessage:d}}),o.push(d)}nt(!1,`error encountered during CCIP fetch: ${o.map(f=>JSON.stringify(f)).join(", ")}`,"OFFCHAIN_FAULT",{reason:"500_SERVER_ERROR",transaction:e,info:{urls:n,errorMessages:o}})}_wrapBlock(e,r){return new Ene(zne(e),this)}_wrapLog(e,r){return new Hy(Hne(e),this)}_wrapTransactionReceipt(e,r){return new jC(Vne(e),this)}_wrapTransactionResponse(e,r){return new Kp(JC(e),this)}_detectNetwork(){nt(!1,"sub-classes must implement this","UNSUPPORTED_OPERATION",{operation:"_detectNetwork"})}async _perform(e){nt(!1,`unsupported method: ${e.method}`,"UNSUPPORTED_OPERATION",{operation:e.method,info:e})}async getBlockNumber(){const e=br(await ct(this,as,zs).call(this,{method:"getBlockNumber"}),"%response");return te(this,uf)>=0&&le(this,uf,e),e}_getAddress(e){return Rs(e,this)}_getBlockTag(e){if(e==null)return"latest";switch(e){case"earliest":return"0x0";case"latest":case"pending":case"safe":case"finalized":return e}if(Mn(e))return Mn(e,32)?e:$u(e);if(typeof e=="bigint"&&(e=br(e,"blockTag")),typeof e=="number")return e>=0?$u(e):te(this,uf)>=0?$u(te(this,uf)+e):this.getBlockNumber().then(r=>$u(r+e));ye(!1,"invalid blockTag","blockTag",e)}_getFilter(e){const r=(e.topics||[]).map(u=>u==null?null:Array.isArray(u)?RA(u.map(h=>h.toLowerCase())):u.toLowerCase()),n="blockHash"in e?e.blockHash:void 0,s=(u,h,p)=>{let d;switch(u.length){case 0:break;case 1:d=u[0];break;default:u.sort(),d=u}if(n&&(h!=null||p!=null))throw new Error("invalid filter");const v={};return d&&(v.address=d),r.length&&(v.topics=r),h&&(v.fromBlock=h),p&&(v.toBlock=p),n&&(v.blockHash=n),v};let i=[];if(e.address)if(Array.isArray(e.address))for(const u of e.address)i.push(this._getAddress(u));else i.push(this._getAddress(e.address));let o;"fromBlock"in e&&(o=this._getBlockTag(e.fromBlock));let f;return"toBlock"in e&&(f=this._getBlockTag(e.toBlock)),i.filter(u=>typeof u!="string").length||o!=null&&typeof o!="string"||f!=null&&typeof f!="string"?Promise.all([Promise.all(i),o,f]).then(u=>s(u[0],u[1],u[2])):s(i,o,f)}_getTransactionRequest(e){const r=yv(e),n=[];if(["to","from"].forEach(s=>{if(r[s]==null)return;const i=Rs(r[s]);Nm(i)?n.push(async function(){r[s]=await i}()):r[s]=i}),r.blockTag!=null){const s=this._getBlockTag(r.blockTag);Nm(s)?n.push(async function(){r.blockTag=await s}()):r.blockTag=s}return n.length?async function(){return await Promise.all(n),r}():r}async getNetwork(){if(te(this,As)==null){const s=this._detectNetwork().then(i=>(this.emit("network",i,null),i),i=>{throw te(this,As)===s&&le(this,As,null),i});return le(this,As,s),(await s).clone()}const e=te(this,As),[r,n]=await Promise.all([e,this._detectNetwork()]);return r.chainId!==n.chainId&&(te(this,Sc)?(this.emit("network",n,r),te(this,As)===e&&le(this,As,Promise.resolve(n))):nt(!1,`network changed: ${r.chainId} => ${n.chainId} `,"NETWORK_ERROR",{event:"changed"})),r.clone()}async getFeeData(){const{block:e,gasPrice:r}=await Gi({block:this.getBlock("latest"),gasPrice:(async()=>{try{const i=await ct(this,as,zs).call(this,{method:"getGasPrice"});return St(i,"%response")}catch{}return null})()});let n=null,s=null;return e&&e.baseFeePerGas&&(s=BigInt("1000000000"),n=e.baseFeePerGas*Jne+s),new xne(r,n,s)}async estimateGas(e){let r=this._getTransactionRequest(e);return Nm(r)&&(r=await r),St(await ct(this,as,zs).call(this,{method:"estimateGas",transaction:r}),"%response")}async call(e){const{tx:r,blockTag:n}=await Gi({tx:this._getTransactionRequest(e),blockTag:this._getBlockTag(e.blockTag)});return await ct(this,t1,CA).call(this,ct(this,e1,NA).call(this,r,n,e.enableCcipRead?0:-1))}async getBalance(e,r){return St(await ct(this,_c,j0).call(this,{method:"getBalance"},e,r),"%response")}async getTransactionCount(e,r){return br(await ct(this,_c,j0).call(this,{method:"getTransactionCount"},e,r),"%response")}async getCode(e,r){return At(await ct(this,_c,j0).call(this,{method:"getCode"},e,r))}async getStorage(e,r,n){const s=St(r,"position");return At(await ct(this,_c,j0).call(this,{method:"getStorage",position:s},e,n))}async broadcastTransaction(e){const{blockNumber:r,hash:n,network:s}=await Gi({blockNumber:this.getBlockNumber(),hash:this._perform({method:"broadcastTransaction",signedTransaction:e}),network:this.getNetwork()}),i=gv.from(e);if(i.hash!==n)throw new Error("@TODO: the returned hash did not match");return this._wrapTransactionResponse(i,s).replaceableTransaction(r)}async getBlock(e,r){const{network:n,params:s}=await Gi({network:this.getNetwork(),params:ct(this,Nv,rT).call(this,e,!!r)});return s==null?null:this._wrapBlock(s,n)}async getTransaction(e){const{network:r,params:n}=await Gi({network:this.getNetwork(),params:ct(this,as,zs).call(this,{method:"getTransaction",hash:e})});return n==null?null:this._wrapTransactionResponse(n,r)}async getTransactionReceipt(e){const{network:r,params:n}=await Gi({network:this.getNetwork(),params:ct(this,as,zs).call(this,{method:"getTransactionReceipt",hash:e})});if(n==null)return null;if(n.gasPrice==null&&n.effectiveGasPrice==null){const s=await ct(this,as,zs).call(this,{method:"getTransaction",hash:e});if(s==null)throw new Error("report this; could not find tx or effectiveGasPrice");n.effectiveGasPrice=s.gasPrice}return this._wrapTransactionReceipt(n,r)}async getTransactionResult(e){const{result:r}=await Gi({network:this.getNetwork(),result:ct(this,as,zs).call(this,{method:"getTransactionResult",hash:e})});return r==null?null:At(r)}async getLogs(e){let r=this._getFilter(e);Nm(r)&&(r=await r);const{network:n,params:s}=await Gi({network:this.getNetwork(),params:ct(this,as,zs).call(this,{method:"getLogs",filter:r})});return s.map(i=>this._wrapLog(i,n))}_getProvider(e){nt(!1,"provider cannot connect to target network","UNSUPPORTED_OPERATION",{operation:"_getProvider()"})}async getResolver(e){return await J0.fromName(this,e)}async getAvatar(e){const r=await this.getResolver(e);return r?await r.getAvatar():null}async resolveName(e){const r=await this.getResolver(e);return r?await r.getAddress():null}async lookupAddress(e){e=Hr(e);const r=bA(e.substring(2).toLowerCase()+".addr.reverse");try{const n=await J0.getEnsAddress(this),i=await new Uc(n,["function resolver(bytes32) view returns (address)"],this).resolver(r);if(i==null||i===gA)return null;const f=await new Uc(i,["function name(bytes32) view returns (string)"],this).name(r);return await this.resolveName(f)!==e?null:f}catch(n){if(ko(n,"BAD_DATA")&&n.value==="0x"||ko(n,"CALL_EXCEPTION"))return null;throw n}return null}async waitForTransaction(e,r,n){const s=r??1;return s===0?this.getTransactionReceipt(e):new Promise(async(i,o)=>{let f=null;const u=async h=>{try{const p=await this.getTransactionReceipt(e);if(p!=null&&h-p.blockNumber+1>=s){i(p),f&&(clearTimeout(f),f=null);return}}catch(p){console.log("EEE",p)}this.once("block",u)};n!=null&&(f=setTimeout(()=>{f!=null&&(f=null,this.off("block",u),o(oi("timeout","TIMEOUT",{reason:"timeout"})))},n)),u(await this.getBlockNumber())})}async waitForBlock(e){nt(!1,"not implemented yet","NOT_IMPLEMENTED",{operation:"waitForBlock"})}_clearTimeout(e){const r=te(this,Qs).get(e);r&&(r.timer&&clearTimeout(r.timer),te(this,Qs).delete(e))}_setTimeout(e,r){r==null&&(r=0);const n=a0(this,Jp)._++,s=()=>{te(this,Qs).delete(n),e()};if(this.paused)te(this,Qs).set(n,{timer:null,func:s,time:r});else{const i=setTimeout(s,r);te(this,Qs).set(n,{timer:i,func:s,time:J2()})}return n}_forEachSubscriber(e){for(const r of te(this,ki).values())e(r.subscriber)}_getSubscriber(e){switch(e.type){case"debug":case"error":case"network":return new tT(e.type);case"block":return new Yne(this);case"event":return new j6(this,e.filter);case"transaction":return new Xne(this,e.hash);case"orphan":return new Qne(this,e.filter)}throw new Error(`unsupported event: ${e.type}`)}_recoverSubscriber(e,r){for(const n of te(this,ki).values())if(n.subscriber===e){n.started&&n.subscriber.stop(),n.subscriber=r,n.started&&r.start(),te(this,Bi)!=null&&r.pause(te(this,Bi));break}}async on(e,r){const n=await ct(this,$h,pg).call(this,e);return n.listeners.push({listener:r,once:!1}),n.started||(n.subscriber.start(),n.started=!0,te(this,Bi)!=null&&n.subscriber.pause(te(this,Bi))),this}async once(e,r){const n=await ct(this,$h,pg).call(this,e);return n.listeners.push({listener:r,once:!0}),n.started||(n.subscriber.start(),n.started=!0,te(this,Bi)!=null&&n.subscriber.pause(te(this,Bi))),this}async emit(e,...r){const n=await ct(this,Rc,z0).call(this,e,r);if(!n||n.listeners.length===0)return!1;const s=n.listeners.length;return n.listeners=n.listeners.filter(({listener:i,once:o})=>{const f=new _N(this,o?null:i,e);try{i.call(this,...r,f)}catch{}return!o}),n.listeners.length===0&&(n.started&&n.subscriber.stop(),te(this,ki).delete(n.tag)),s>0}async listenerCount(e){if(e){const n=await ct(this,Rc,z0).call(this,e);return n?n.listeners.length:0}let r=0;for(const{listeners:n}of te(this,ki).values())r+=n.length;return r}async listeners(e){if(e){const n=await ct(this,Rc,z0).call(this,e);return n?n.listeners.map(({listener:s})=>s):[]}let r=[];for(const{listeners:n}of te(this,ki).values())r=r.concat(n.map(({listener:s})=>s));return r}async off(e,r){const n=await ct(this,Rc,z0).call(this,e);if(!n)return this;if(r){const s=n.listeners.map(({listener:i})=>i).indexOf(r);s>=0&&n.listeners.splice(s,1)}return(!r||n.listeners.length===0)&&(n.started&&n.subscriber.stop(),te(this,ki).delete(n.tag)),this}async removeAllListeners(e){if(e){const{tag:r,started:n,subscriber:s}=await ct(this,$h,pg).call(this,e);n&&s.stop(),te(this,ki).delete(r)}else for(const[r,{started:n,subscriber:s}]of te(this,ki))n&&s.stop(),te(this,ki).delete(r);return this}async addListener(e,r){return await this.on(e,r)}async removeListener(e,r){return this.off(e,r)}get destroyed(){return te(this,Xh)}destroy(){this.removeAllListeners();for(const e of te(this,Qs).keys())this._clearTimeout(e);le(this,Xh,!0)}get paused(){return te(this,Bi)!=null}set paused(e){!!e!==this.paused&&(this.paused?this.resume():this.pause(!1))}pause(e){if(le(this,uf,-1),te(this,Bi)!=null){if(te(this,Bi)==!!e)return;nt(!1,"cannot change pause type; resume first","UNSUPPORTED_OPERATION",{operation:"pause"})}this._forEachSubscriber(r=>r.pause(e)),le(this,Bi,!!e);for(const r of te(this,Qs).values())r.timer&&clearTimeout(r.timer),r.time=J2()-r.time}resume(){if(te(this,Bi)!=null){this._forEachSubscriber(e=>e.resume()),le(this,Bi,null);for(const e of te(this,Qs).values()){let r=e.time;r<0&&(r=0),e.time=J2(),setTimeout(e.func,r)}}}}ki=new WeakMap,ml=new WeakMap,Bi=new WeakMap,Xh=new WeakMap,As=new WeakMap,Sc=new WeakMap,gl=new WeakMap,uf=new WeakMap,Jp=new WeakMap,Qs=new WeakMap,Jh=new WeakMap,$p=new WeakMap,as=new WeakSet,zs=async function(e){const r=te(this,$p).cacheTimeout;if(r<0)return await this._perform(e);const n=dg(e.method,e);let s=te(this,gl).get(n);return s||(s=this._perform(e),te(this,gl).set(n,s),setTimeout(()=>{te(this,gl).get(n)===s&&te(this,gl).delete(n)},r)),await s},e1=new WeakSet,NA=async function(e,r,n){nt(n<$ne,"CCIP read exceeded maximum redirections","OFFCHAIN_FAULT",{reason:"TOO_MANY_REDIRECTS",transaction:Object.assign({},e,{blockTag:r,enableCcipRead:!0})});const s=yv(e);try{return At(await this._perform({method:"call",transaction:s,blockTag:r}))}catch(i){if(!this.disableCcipRead&&_6(i)&&i.data&&n>=0&&r==="latest"&&s.to!=null&&Cn(i.data,0,4)==="0x556f1830"){const o=i.data,f=await Rs(s.to,this);let u;try{u=oie(Cn(i.data,4))}catch(d){nt(!1,d.message,"OFFCHAIN_FAULT",{reason:"BAD_DATA",transaction:s,info:{data:o}})}nt(u.sender.toLowerCase()===f.toLowerCase(),"CCIP Read sender mismatch","CALL_EXCEPTION",{action:"call",data:o,reason:"OffchainLookup",transaction:s,invocation:null,revert:{signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",name:"OffchainLookup",args:u.errorArgs}});const h=await this.ccipReadFetch(s,u.calldata,u.urls);nt(h!=null,"CCIP Read failed to fetch data","OFFCHAIN_FAULT",{reason:"FETCH_FAILED",transaction:s,info:{data:i.data,errorArgs:u.errorArgs}});const p={to:f,data:jn([u.selector,aie([h,u.extraData])])};this.emit("debug",{action:"sendCcipReadCall",transaction:p});try{const d=await ct(this,e1,NA).call(this,p,r,n+1);return this.emit("debug",{action:"receiveCcipReadCallResult",transaction:Object.assign({},p),result:d}),d}catch(d){throw this.emit("debug",{action:"receiveCcipReadCallError",transaction:Object.assign({},p),error:d}),d}}throw i}},t1=new WeakSet,CA=async function(e){const{value:r}=await Gi({network:this.getNetwork(),value:e});return r},_c=new WeakSet,j0=async function(e,r,n){let s=this._getAddress(r),i=this._getBlockTag(n);return(typeof s!="string"||typeof i!="string")&&([s,i]=await Promise.all([s,i])),await ct(this,t1,CA).call(this,ct(this,as,zs).call(this,Object.assign(e,{address:s,blockTag:i})))},Nv=new WeakSet,rT=async function(e,r){if(Mn(e,32))return await ct(this,as,zs).call(this,{method:"getBlock",blockHash:e,includeTransactions:r});let n=this._getBlockTag(e);return typeof n!="string"&&(n=await n),await ct(this,as,zs).call(this,{method:"getBlock",blockTag:n,includeTransactions:r})},Rc=new WeakSet,z0=async function(e,r){let n=await X2(e,this);return n.type==="event"&&r&&r.length>0&&r[0].removed===!0&&(n=await X2({orphan:"drop-log",log:r[0]},this)),te(this,ki).get(n.tag)||null},$h=new WeakSet,pg=async function(e){const r=await X2(e,this),n=r.tag;let s=te(this,ki).get(n);return s||(s={subscriber:this._getSubscriber(r),tag:n,addressableMap:new WeakMap,nameMap:new Map,started:!1,listeners:[]},te(this,ki).set(n,s)),s};function nie(t,e){try{const r=TA(t,e);if(r)return N6(r)}catch{}return null}function TA(t,e){if(t==="0x")return null;try{const r=br(Cn(t,e,e+32)),n=br(Cn(t,r,r+32));return Cn(t,r+32,r+32+n)}catch{}return null}function y9(t){const e=_s(t);if(e.length>32)throw new Error("internal; should not happen");const r=new Uint8Array(32);return r.set(e,32-e.length),r}function iie(t){if(t.length%32===0)return t;const e=new Uint8Array(Math.ceil(t.length/32)*32);return e.set(t),e}const sie=new Uint8Array([]);function aie(t){const e=[];let r=0;for(let n=0;n=5*32,"insufficient OffchainLookup data","OFFCHAIN_FAULT",{reason:"insufficient OffchainLookup data"});const r=Cn(t,0,32);nt(Cn(r,0,12)===Cn(b9,0,12),"corrupt OffchainLookup sender","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup sender"}),e.sender=Cn(r,12);try{const n=[],s=br(Cn(t,32,64)),i=br(Cn(t,s,s+32)),o=Cn(t,s+32);for(let f=0;fe[n]),e}function Tu(t,e){if(t.provider)return t.provider;nt(!1,"missing provider","UNSUPPORTED_OPERATION",{operation:e})}async function w9(t,e){let r=yv(e);if(r.to!=null&&(r.to=Rs(r.to,t)),r.from!=null){const n=r.from;r.from=Promise.all([t.getAddress(),Rs(n,t)]).then(([s,i])=>(ye(s.toLowerCase()===i.toLowerCase(),"transaction from mismatch","tx.from",i),s))}else r.from=t.getAddress();return await Gi(r)}class fie{constructor(e){xe(this,"provider");Dt(this,{provider:e||null})}async getNonce(e){return Tu(this,"getTransactionCount").getTransactionCount(await this.getAddress(),e)}async populateCall(e){return await w9(this,e)}async populateTransaction(e){const r=Tu(this,"populateTransaction"),n=await w9(this,e);n.nonce==null&&(n.nonce=await this.getNonce("pending")),n.gasLimit==null&&(n.gasLimit=await this.estimateGas(n));const s=await this.provider.getNetwork();if(n.chainId!=null){const o=St(n.chainId);ye(o===s.chainId,"transaction chainId mismatch","tx.chainId",e.chainId)}else n.chainId=s.chainId;const i=n.maxFeePerGas!=null||n.maxPriorityFeePerGas!=null;if(n.gasPrice!=null&&(n.type===2||i)?ye(!1,"eip-1559 transaction do not support gasPrice","tx",e):(n.type===0||n.type===1)&&i&&ye(!1,"pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas","tx",e),(n.type===2||n.type==null)&&n.maxFeePerGas!=null&&n.maxPriorityFeePerGas!=null)n.type=2;else if(n.type===0||n.type===1){const o=await r.getFeeData();nt(o.gasPrice!=null,"network does not support gasPrice","UNSUPPORTED_OPERATION",{operation:"getGasPrice"}),n.gasPrice==null&&(n.gasPrice=o.gasPrice)}else{const o=await r.getFeeData();if(n.type==null)if(o.maxFeePerGas!=null&&o.maxPriorityFeePerGas!=null)if(n.type=2,n.gasPrice!=null){const f=n.gasPrice;delete n.gasPrice,n.maxFeePerGas=f,n.maxPriorityFeePerGas=f}else n.maxFeePerGas==null&&(n.maxFeePerGas=o.maxFeePerGas),n.maxPriorityFeePerGas==null&&(n.maxPriorityFeePerGas=o.maxPriorityFeePerGas);else o.gasPrice!=null?(nt(!i,"network does not support EIP-1559","UNSUPPORTED_OPERATION",{operation:"populateTransaction"}),n.gasPrice==null&&(n.gasPrice=o.gasPrice),n.type=0):nt(!1,"failed to get consistent fee data","UNSUPPORTED_OPERATION",{operation:"signer.getFeeData"});else n.type===2&&(n.maxFeePerGas==null&&(n.maxFeePerGas=o.maxFeePerGas),n.maxPriorityFeePerGas==null&&(n.maxPriorityFeePerGas=o.maxPriorityFeePerGas))}return await Gi(n)}async estimateGas(e){return Tu(this,"estimateGas").estimateGas(await this.populateCall(e))}async call(e){return Tu(this,"call").call(await this.populateCall(e))}async resolveName(e){return await Tu(this,"resolveName").resolveName(e)}async sendTransaction(e){const r=Tu(this,"sendTransaction"),n=await this.populateTransaction(e);delete n.from;const s=gv.from(n);return await r.broadcastTransaction(await this.signTransaction(s))}}function lie(t){return JSON.parse(JSON.stringify(t))}var os,go,Nc,vl,Cc,ed,r1,kA,n1,BA;class nT{constructor(e){Fe(this,r1);Fe(this,n1);Fe(this,os,void 0);Fe(this,go,void 0);Fe(this,Nc,void 0);Fe(this,vl,void 0);Fe(this,Cc,void 0);Fe(this,ed,void 0);le(this,os,e),le(this,go,null),le(this,Nc,ct(this,r1,kA).bind(this)),le(this,vl,!1),le(this,Cc,null),le(this,ed,!1)}_subscribe(e){throw new Error("subclasses must override this")}_emitResults(e,r){throw new Error("subclasses must override this")}_recover(e){throw new Error("subclasses must override this")}start(){te(this,vl)||(le(this,vl,!0),ct(this,r1,kA).call(this,-2))}stop(){te(this,vl)&&(le(this,vl,!1),le(this,ed,!0),ct(this,n1,BA).call(this),te(this,os).off("block",te(this,Nc)))}pause(e){e&&ct(this,n1,BA).call(this),te(this,os).off("block",te(this,Nc))}resume(){this.start()}}os=new WeakMap,go=new WeakMap,Nc=new WeakMap,vl=new WeakMap,Cc=new WeakMap,ed=new WeakMap,r1=new WeakSet,kA=async function(e){try{te(this,go)==null&&le(this,go,this._subscribe(te(this,os)));let r=null;try{r=await te(this,go)}catch(i){if(!ko(i,"UNSUPPORTED_OPERATION")||i.operation!=="eth_newFilter")throw i}if(r==null){le(this,go,null),te(this,os)._recoverSubscriber(this,this._recover(te(this,os)));return}const n=await te(this,os).getNetwork();if(te(this,Cc)||le(this,Cc,n),te(this,Cc).chainId!==n.chainId)throw new Error("chaid changed");if(te(this,ed))return;const s=await te(this,os).send("eth_getFilterChanges",[r]);await this._emitResults(te(this,os),s)}catch(r){console.log("@TODO",r)}te(this,os).once("block",te(this,Nc))},n1=new WeakSet,BA=function(){const e=te(this,go);e&&(le(this,go,null),e.then(r=>{te(this,os).send("eth_uninstallFilter",[r])}))};var Tc;class cie extends nT{constructor(r,n){super(r);Fe(this,Tc,void 0);le(this,Tc,lie(n))}_recover(r){return new j6(r,te(this,Tc))}async _subscribe(r){return await r.send("eth_newFilter",[te(this,Tc)])}async _emitResults(r,n){for(const s of n)r.emit(te(this,Tc),r._wrapLog(s,r._network))}}Tc=new WeakMap;class uie extends nT{async _subscribe(e){return await e.send("eth_newPendingTransactionFilter",[])}async _emitResults(e,r){for(const n of r)e.emit("pending",n)}}const hie="bigint,boolean,function,number,string,symbol".split(/,/g);function mg(t){if(t==null||hie.indexOf(typeof t)>=0||typeof t.getAddress=="function")return t;if(Array.isArray(t))return t.map(mg);if(typeof t=="object")return Object.keys(t).reduce((e,r)=>(e[r]=t[r],e),{});throw new Error(`should not happen: ${t} (${typeof t})`)}function die(t){return new Promise(e=>{setTimeout(e,t)})}function ku(t){return t&&t.toLowerCase()}function A9(t){return t&&typeof t.pollingInterval=="number"}const pie={polling:!1,staticNetwork:null,batchStallTime:10,batchMaxSize:1<<20,batchMaxCount:100,cacheTimeout:250};class $2 extends fie{constructor(r,n){super(r);xe(this,"address");n=Hr(n),Dt(this,{address:n})}connect(r){nt(!1,"cannot reconnect JsonRpcSigner","UNSUPPORTED_OPERATION",{operation:"signer.connect"})}async getAddress(){return this.address}async populateTransaction(r){return await this.populateCall(r)}async sendUncheckedTransaction(r){const n=mg(r),s=[];if(n.from){const o=n.from;s.push((async()=>{const f=await Rs(o,this.provider);ye(f!=null&&f.toLowerCase()===this.address.toLowerCase(),"from address mismatch","transaction",r),n.from=f})())}else n.from=this.address;if(n.gasLimit==null&&s.push((async()=>{n.gasLimit=await this.provider.estimateGas({...n,from:this.address})})()),n.to!=null){const o=n.to;s.push((async()=>{n.to=await Rs(o,this.provider)})())}s.length&&await Promise.all(s);const i=this.provider.getRpcTransaction(n);return this.provider.send("eth_sendTransaction",[i])}async sendTransaction(r){const n=await this.provider.getBlockNumber(),s=await this.sendUncheckedTransaction(r);return await new Promise((i,o)=>{const f=[1e3,100],u=async()=>{const h=await this.provider.getTransaction(s);if(h!=null){i(h.replaceableTransaction(n));return}this.provider._setTimeout(()=>{u()},f.pop()||4e3)};u()})}async signTransaction(r){const n=mg(r);if(n.from){const i=await Rs(n.from,this.provider);ye(i!=null&&i.toLowerCase()===this.address.toLowerCase(),"from address mismatch","transaction",r),n.from=i}else n.from=this.address;const s=this.provider.getRpcTransaction(n);return await this.provider.send("eth_signTransaction",[s])}async signMessage(r){const n=typeof r=="string"?xf(r):r;return await this.provider.send("personal_sign",[At(n),this.address.toLowerCase()])}async signTypedData(r,n,s){const i=mg(s),o=await vv.resolveNames(r,n,i,async f=>{const u=await Rs(f);return ye(u!=null,"TypedData does not support null address","value",f),u});return await this.provider.send("eth_signTypedData_v4",[this.address.toLowerCase(),JSON.stringify(vv.getPayload(o.domain,n,o.value))])}async unlock(r){return this.provider.send("personal_unlockAccount",[this.address.toLowerCase(),r,null])}async _legacySignMessage(r){const n=typeof r=="string"?xf(r):r;return await this.provider.send("eth_sign",[this.address.toLowerCase(),At(n)])}}var kc,td,hf,vo,Da,df,i1,IA;class mie extends rie{constructor(r,n){const s={};n&&n.cacheTimeout!=null&&(s.cacheTimeout=n.cacheTimeout);super(r,s);Fe(this,i1);Fe(this,kc,void 0);Fe(this,td,void 0);Fe(this,hf,void 0);Fe(this,vo,void 0);Fe(this,Da,void 0);Fe(this,df,void 0);le(this,td,1),le(this,kc,Object.assign({},pie,n||{})),le(this,hf,[]),le(this,vo,null),le(this,df,null);{let o=null;const f=new Promise(u=>{o=u});le(this,Da,{promise:f,resolve:o})}const i=this._getOption("staticNetwork");i&&(ye(r==null||i.matches(r),"staticNetwork MUST match network object","options",n),le(this,df,i))}_getOption(r){return te(this,kc)[r]}get _network(){return nt(te(this,df),"network is not available yet","NETWORK_ERROR"),te(this,df)}async _perform(r){if(r.method==="call"||r.method==="estimateGas"){let s=r.transaction;if(s&&s.type!=null&&St(s.type)&&s.maxFeePerGas==null&&s.maxPriorityFeePerGas==null){const i=await this.getFeeData();i.maxFeePerGas==null&&i.maxPriorityFeePerGas==null&&(r=Object.assign({},r,{transaction:Object.assign({},s,{type:void 0})}))}}const n=this.getRpcRequest(r);return n!=null?await this.send(n.method,n.args):super._perform(r)}async _detectNetwork(){const r=this._getOption("staticNetwork");if(r)return r;if(this.ready)return wf.from(St(await this.send("eth_chainId",[])));const n={id:a0(this,td)._++,method:"eth_chainId",params:[],jsonrpc:"2.0"};this.emit("debug",{action:"sendRpcPayload",payload:n});let s;try{s=(await this._send(n))[0]}catch(i){throw this.emit("debug",{action:"receiveRpcError",error:i}),i}if(this.emit("debug",{action:"receiveRpcResult",result:s}),"result"in s)return wf.from(St(s.result));throw this.getRpcError(n,s)}_start(){te(this,Da)==null||te(this,Da).resolve==null||(te(this,Da).resolve(),le(this,Da,null),(async()=>{for(;te(this,df)==null&&!this.destroyed;)try{le(this,df,await this._detectNetwork())}catch(r){console.log("JsonRpcProvider failed to detect network and cannot start up; retry in 1s (perhaps the URL is wrong or the node is not started)"),this.emit("error",oi("failed to bootstrap network detection","NETWORK_ERROR",{event:"initial-network-discovery",info:{error:r}})),await die(1e3)}ct(this,i1,IA).call(this)})())}async _waitUntilReady(){if(te(this,Da)!=null)return await te(this,Da).promise}_getSubscriber(r){return r.type==="pending"?new uie(this):r.type==="event"?this._getOption("polling")?new j6(this,r.filter):new cie(this,r.filter):r.type==="orphan"&&r.filter.orphan==="drop-log"?new tT("orphan"):super._getSubscriber(r)}get ready(){return te(this,Da)==null}getRpcTransaction(r){const n={};return["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach(s=>{if(r[s]==null)return;let i=s;s==="gasLimit"&&(i="gas"),n[i]=$u(St(r[s],`tx.${s}`))}),["from","to","data"].forEach(s=>{r[s]!=null&&(n[s]=At(r[s]))}),r.accessList&&(n.accessList=fu(r.accessList)),n}getRpcRequest(r){switch(r.method){case"chainId":return{method:"eth_chainId",args:[]};case"getBlockNumber":return{method:"eth_blockNumber",args:[]};case"getGasPrice":return{method:"eth_gasPrice",args:[]};case"getBalance":return{method:"eth_getBalance",args:[ku(r.address),r.blockTag]};case"getTransactionCount":return{method:"eth_getTransactionCount",args:[ku(r.address),r.blockTag]};case"getCode":return{method:"eth_getCode",args:[ku(r.address),r.blockTag]};case"getStorage":return{method:"eth_getStorageAt",args:[ku(r.address),"0x"+r.position.toString(16),r.blockTag]};case"broadcastTransaction":return{method:"eth_sendRawTransaction",args:[r.signedTransaction]};case"getBlock":if("blockTag"in r)return{method:"eth_getBlockByNumber",args:[r.blockTag,!!r.includeTransactions]};if("blockHash"in r)return{method:"eth_getBlockByHash",args:[r.blockHash,!!r.includeTransactions]};break;case"getTransaction":return{method:"eth_getTransactionByHash",args:[r.hash]};case"getTransactionReceipt":return{method:"eth_getTransactionReceipt",args:[r.hash]};case"call":return{method:"eth_call",args:[this.getRpcTransaction(r.transaction),r.blockTag]};case"estimateGas":return{method:"eth_estimateGas",args:[this.getRpcTransaction(r.transaction)]};case"getLogs":return r.filter&&r.filter.address!=null&&(Array.isArray(r.filter.address)?r.filter.address=r.filter.address.map(ku):r.filter.address=ku(r.filter.address)),{method:"eth_getLogs",args:[r.filter]}}return null}getRpcError(r,n){const{method:s}=r,{error:i}=n;if(s==="eth_estimateGas"&&i.message){const u=i.message;if(!u.match(/revert/i)&&u.match(/insufficient funds/i))return oi("insufficient funds","INSUFFICIENT_FUNDS",{transaction:r.params[0],info:{payload:r,error:i}})}if(s==="eth_call"||s==="eth_estimateGas"){const u=PA(i),h=zp.getBuiltinCallException(s==="eth_call"?"call":"estimateGas",r.params[0],u?u.data:null);return h.info={error:i,payload:r},h}const o=JSON.stringify(vie(i));if(typeof i.message=="string"&&i.message.match(/user denied|ethers-user-denied/i))return oi("user rejected action","ACTION_REJECTED",{action:{eth_sign:"signMessage",personal_sign:"signMessage",eth_signTypedData_v4:"signTypedData",eth_signTransaction:"signTransaction",eth_sendTransaction:"sendTransaction",eth_requestAccounts:"requestAccess",wallet_requestAccounts:"requestAccess"}[s]||"unknown",reason:"rejected",info:{payload:r,error:i}});if(s==="eth_sendRawTransaction"||s==="eth_sendTransaction"){const u=r.params[0];if(o.match(/insufficient funds|base fee exceeds gas limit/i))return oi("insufficient funds for intrinsic transaction cost","INSUFFICIENT_FUNDS",{transaction:u,info:{error:i}});if(o.match(/nonce/i)&&o.match(/too low/i))return oi("nonce has already been used","NONCE_EXPIRED",{transaction:u,info:{error:i}});if(o.match(/replacement transaction/i)&&o.match(/underpriced/i))return oi("replacement fee too low","REPLACEMENT_UNDERPRICED",{transaction:u,info:{error:i}});if(o.match(/only replay-protected/i))return oi("legacy pre-eip-155 transactions not supported","UNSUPPORTED_OPERATION",{operation:s,info:{transaction:u,info:{error:i}}})}let f=!!o.match(/the method .* does not exist/i);return f||i&&i.details&&i.details.startsWith("Unauthorized method:")&&(f=!0),f?oi("unsupported operation","UNSUPPORTED_OPERATION",{operation:r.method,info:{error:i,payload:r}}):oi("could not coalesce error","UNKNOWN_ERROR",{error:i,payload:r})}send(r,n){if(this.destroyed)return Promise.reject(oi("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:r}));const s=a0(this,td)._++,i=new Promise((o,f)=>{te(this,hf).push({resolve:o,reject:f,payload:{method:r,params:n,id:s,jsonrpc:"2.0"}})});return ct(this,i1,IA).call(this),i}async getSigner(r){r==null&&(r=0);const n=this.send("eth_accounts",[]);if(typeof r=="number"){const i=await n;if(r>=i.length)throw new Error("no such account");return new $2(this,i[r])}const{accounts:s}=await Gi({network:this.getNetwork(),accounts:n});r=Hr(r);for(const i of s)if(Hr(i)===r)return new $2(this,r);throw new Error("invalid account")}async listAccounts(){return(await this.send("eth_accounts",[])).map(n=>new $2(this,n))}destroy(){te(this,vo)&&(clearTimeout(te(this,vo)),le(this,vo,null));for(const{payload:r,reject:n}of te(this,hf))n(oi("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:r.method}));le(this,hf,[]),super.destroy()}}kc=new WeakMap,td=new WeakMap,hf=new WeakMap,vo=new WeakMap,Da=new WeakMap,df=new WeakMap,i1=new WeakSet,IA=function(){if(te(this,vo))return;const r=this._getOption("batchMaxCount")===1?0:this._getOption("batchStallTime");le(this,vo,setTimeout(()=>{le(this,vo,null);const n=te(this,hf);for(le(this,hf,[]);n.length;){const s=[n.shift()];for(;n.length&&s.length!==te(this,kc).batchMaxCount;)if(s.push(n.shift()),JSON.stringify(s.map(o=>o.payload)).length>te(this,kc).batchMaxSize){n.unshift(s.pop());break}(async()=>{const i=s.length===1?s[0].payload:s.map(o=>o.payload);this.emit("debug",{action:"sendRpcPayload",payload:i});try{const o=await this._send(i);this.emit("debug",{action:"receiveRpcResult",result:o});for(const{resolve:f,reject:u,payload:h}of s){if(this.destroyed){u(oi("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:h.method}));continue}const p=o.filter(d=>d.id===h.id)[0];if(p==null){const d=oi("missing response for request","BAD_DATA",{value:o,info:{payload:h}});this.emit("error",d),u(d);continue}if("error"in p){u(this.getRpcError(h,p));continue}f(p.result)}}catch(o){this.emit("debug",{action:"receiveRpcError",error:o});for(const{reject:f}of s)f(o)}})()}},r))};var yl;class gie extends mie{constructor(r,n){super(r,n);Fe(this,yl,void 0);le(this,yl,4e3)}_getSubscriber(r){const n=super._getSubscriber(r);return A9(n)&&(n.pollingInterval=te(this,yl)),n}get pollingInterval(){return te(this,yl)}set pollingInterval(r){if(!Number.isInteger(r)||r<0)throw new Error("invalid interval");le(this,yl,r),this._forEachSubscriber(n=>{A9(n)&&(n.pollingInterval=te(this,yl))})}}yl=new WeakMap;function PA(t){if(t==null)return null;if(typeof t.message=="string"&&t.message.match(/revert/i)&&Mn(t.data))return{message:t.message,data:t.data};if(typeof t=="object"){for(const e in t){const r=PA(t[e]);if(r)return r}return null}if(typeof t=="string")try{return PA(JSON.parse(t))}catch{}return null}function OA(t,e){if(t!=null){if(typeof t.message=="string"&&e.push(t.message),typeof t=="object")for(const r in t)OA(t[r],e);if(typeof t=="string")try{return OA(JSON.parse(t),e)}catch{}}}function vie(t){const e=[];return OA(t,e),e}var rd;class yie extends gie{constructor(r,n){super(n,{batchMaxCount:1});Fe(this,rd,void 0);le(this,rd,async(s,i)=>{const o={method:s,params:i};this.emit("debug",{action:"sendEip1193Request",payload:o});try{const f=await r.request(o);return this.emit("debug",{action:"receiveEip1193Result",result:f}),f}catch(f){const u=new Error(f.message);throw u.code=f.code,u.data=f.data,u.payload=o,this.emit("debug",{action:"receiveEip1193Error",error:u}),u}})}async send(r,n){return await this._start(),await super.send(r,n)}async _send(r){ye(!Array.isArray(r),"EIP-1193 does not support batch request","payload",r);try{const n=await te(this,rd).call(this,r.method,r.params||[]);return[{id:r.id,result:n}]}catch(n){return[{id:r.id,error:{code:n.code,data:n.data,message:n.message}}]}}getRpcError(r,n){switch(n=JSON.parse(JSON.stringify(n)),n.error.code||-1){case 4001:n.error.message=`ethers-user-denied: ${n.error.message}`;break;case 4200:n.error.message=`ethers-unsupported: ${n.error.message}`;break}return super.getRpcError(r,n)}async hasSigner(r){r==null&&(r=0);const n=await this.send("eth_accounts",[]);return typeof r=="number"?n.length>r:(r=r.toLowerCase(),n.filter(s=>s.toLowerCase()===r).length!==0)}async getSigner(r){if(r==null&&(r=0),!await this.hasSigner(r))try{await te(this,rd).call(this,"eth_requestAccounts",[])}catch(n){const s=n.payload;throw this.getRpcError(s,{id:s.id,error:n})}return await super.getSigner(r)}}rd=new WeakMap;window.web3gl={networkId:0,connect:bie,connectAccount:"",signMessage:xie,signMessageResponse:"",signTypedMessage:Eie,signTypedMessageResponse:"",callContract:_ie,callContractResponse:"",callContractError:"",sendTransaction:Mie,sendTransactionResponse:"",sha3Message:wie,hashMessageResponse:"",ecRecover:Aie,ecRecoverAddressResponse:"",sendTransactionData:Sie,sendTransactionResponseData:"",sendContract:Rie,sendContractResponse:""};let Mf;async function bie(){var e;if(window.web3ChainId&&!await lE.setChain({chainId:window.web3ChainId}))return;const t=await lE.connectWallet();t[0]!==null&&(Mf=new yie(t[0].provider),window.web3gl.networkId=Number((e=await Mf.getNetwork())==null?void 0:e.chainId),window.web3gl.connectAccount=await(await Mf.getSigner()).getAddress(),window.ethereum.on("accountsChanged",()=>{window.location.reload()}),window.ethereum.on("chainChanged",r=>{window.web3gl.networkId=parseInt(r)}))}async function wie(t){try{const e=await mn(t);e&&(window.web3gl.hashMessageResponse=e)}catch(e){window.web3gl.hashMessageResponse=e.message}}async function Aie(t,e){try{const r=await wA(t,e);window.web3gl.ecRecoverAddressResponse=r}catch(r){window.web3gl.ecRecoverAddressResponse=r.message}}async function xie(t){try{const r=await(await Mf.getSigner()).signMessage(t);window.web3gl.signMessageResponse=r}catch(e){window.web3gl.signMessageResponse=e.message}}async function Eie(t,e,r){try{const s=await(await Mf.getSigner()).signTypedData(JSON.parse(t),JSON.parse(e),JSON.parse(r));window.web3gl.signTypedMessageResponse=s}catch(n){window.web3gl.signTypedMessageResponse=n.message}}async function Mie(t,e,r,n){(await(await Mf.getSigner()).sendTransaction({to:t,value:e,gasLimit:r||void 0,gasPrice:n||void 0})).wait().then(o=>{if(!o)throw Error("Receipt not found");window.web3gl.sendTransactionResponse=o.hash}).catch(o=>window.web3gl.sendTransactionResponse=o.message)}async function Sie(t,e,r,n,s){(await(await Mf.getSigner()).sendTransaction({to:t,value:e,gasPrice:r||void 0,gasLimit:n||void 0,data:s||void 0})).wait().then(f=>{if(!f)throw Error("Receipt not found");window.web3gl.sendTransactionResponse=f.hash}).catch(f=>window.web3gl.sendTransactionResponseData=f.message)}async function _ie(t,e,r,n){const i=new Uc(r,JSON.parse(e),Mf)[t];i(...JSON.parse(n)).then(o=>window.web3gl.callContractResponse=o.toString()).catch(o=>window.web3gl.callContractError=o.message)}async function Rie(t,e,r,n,s,i,o){const f=await Mf.getSigner(),h=new Uc(r,JSON.parse(e),f)[t];(await h(...JSON.parse(n),{value:s,gasLimit:i,gasPrice:o})).wait().then(d=>window.web3gl.sendContractResponse=d.hash).catch(d=>window.web3gl.sendContractResponse=d.message)}export{Sf as $,Hie as A,Yi as B,Die as C,Uv as D,h5 as E,Z1 as F,zie as G,Sn as H,pT as I,kie as J,gT as K,$t as L,Mo as M,qn as N,LA as O,V6 as P,DA as Q,yT as R,Tie as S,bT as T,fT as U,ft as V,sp as W,Cv as X,Rl as Y,mL as Z,r4 as _,kn as a,Tl as a$,Hi as a0,$c as a1,Jr as a2,nB as a3,jk as a4,q9 as a5,z9 as a6,j9 as a7,lB as a8,Bf as a9,vB as aA,a1 as aB,$6 as aC,oB as aD,qA as aE,WA as aF,iw as aG,sw as aH,rb as aI,e4 as aJ,VA as aK,rp as aL,V9 as aM,aa as aN,Lk as aO,k9 as aP,FA as aQ,xl as aR,Dk as aS,nd as aT,rw as aU,aB as aV,Pie as aW,C9 as aX,iY as aY,Cl as aZ,pp as a_,zk as aa,oa as ab,ta as ac,$k as ad,M9 as ae,Tv as af,yg as ag,rB as ah,sd as ai,T9 as aj,jA as ak,s1 as al,Uk as am,HA as an,Bie as ao,kv as ap,Fk as aq,Jy as ar,X6 as as,Iie as at,nw as au,GA as av,tB as aw,eu as ax,fB as ay,G9 as az,t3 as b,pX as b$,xz as b0,h1 as b1,Ht as b2,hS as b3,gd as b4,b1 as b5,ri as b6,ti as b7,$n as b8,rn as b9,bt as bA,Ce as bB,oY as bC,OY as bD,zl as bE,Nse as bF,ZY as bG,$r as bH,Xi as bI,w6 as bJ,Tse as bK,kse as bL,Df as bM,Pf as bN,bse as bO,pse as bP,AN as bQ,Np as bR,Sse as bS,dse as bT,tv as bU,YY as bV,VY as bW,bN as bX,Kn as bY,KY as bZ,QQ as b_,it as ba,gs as bb,cn as bc,st as bd,un as be,Je as bf,rt as bg,Pi as bh,rr as bi,rN as bj,ky as bk,uN as bl,lr as bm,ir as bn,et as bo,sr as bp,Xe as bq,ve as br,ei as bs,vr as bt,Cp as bu,yse as bv,a6 as bw,gt as bx,wr as by,Ao as bz,ah as c,tN as c0,S6 as c1,wse as c2,E8 as c3,xse as c4,_se as c5,vse as c6,nX as c7,Xs as c8,zQ as c9,mse as ca,Mse as cb,jY as cc,Ese as cd,Rse as ce,wX as cf,EY as cg,w8 as ch,W0 as ci,hN as cj,Cse as ck,F2 as cl,gse as cm,$A as cn,PR as co,Ase as cp,tu as cq,yi as d,K0 as e,Ew as f,JO as g,Rr as h,Y1 as i,xi as j,fp as k,lp as l,fs as m,mt as n,ue as o,Fie as p,Lie as q,jie as r,Kie as s,Gie as t,Uie as u,sL as v,z7 as w,QO as x,j7 as y,EL as z}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-b28afd98.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-b28afd98.js.meta deleted file mode 100644 index 86ef96dbd..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-b28afd98.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: dee2272f6e5037d45b849f4d00c7ebd2 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js deleted file mode 100644 index 6ea11f43c..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js +++ /dev/null @@ -1,522 +0,0 @@ -import{U as Lt,n as Wn,V as ke}from"./index-b28afd98.js";import{d as Yn,e as Vn,f as Kn,b as Qn,h as Jn,j as jn,k as Gn,l as Zn,n as Xn,o as er,a as tr,p as nr,q as rr,g as or,t as ar,u as ir,v as lr,w as cr,x as ur,y as sr,i as fr,z as dr,c as _r,A as hr,m as gr,r as pr,B as mr,C as vr,D as wr,s as yr}from"./mobile-122d5339.js";function br(e,t){for(var n=0;nr[o]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}const Mt="https://registry.walletconnect.com";function Cr(){return Mt+"/api/v2/wallets"}function Er(){return Mt+"/api/v2/dapps"}function It(e,t="mobile"){var n;return{name:e.name||"",shortName:e.metadata.shortName||"",color:e.metadata.colors.primary||"",logo:(n=e.image_url.sm)!==null&&n!==void 0?n:"",universalLink:e[t].universal||"",deepLink:e[t].native||""}}function xr(e,t="mobile"){return Object.values(e).filter(n=>!!n[t].universal||!!n[t].native).map(n=>It(n,t))}const kr=Object.freeze(Object.defineProperty({__proto__:null,detectEnv:Yn,detectOS:Vn,formatIOSMobile:Kn,formatMobileRegistry:xr,formatMobileRegistryEntry:It,getClientMeta:Qn,getCrypto:Jn,getCryptoOrThrow:jn,getDappRegistryUrl:Er,getDocument:Gn,getDocumentOrThrow:Zn,getFromWindow:Xn,getFromWindowOrThrow:er,getLocal:tr,getLocalStorage:nr,getLocalStorageOrThrow:rr,getLocation:or,getLocationOrThrow:ar,getMobileLinkRegistry:ir,getMobileRegistryEntry:lr,getNavigator:cr,getNavigatorOrThrow:ur,getWalletRegistryUrl:Cr,isAndroid:sr,isBrowser:fr,isIOS:dr,isMobile:_r,isNode:hr,mobileLinkChoiceKey:gr,removeLocal:pr,safeJsonParse:mr,safeJsonStringify:vr,saveMobileLinkInfo:wr,setLocal:yr},Symbol.toStringTag,{value:"Module"})),Tr=Lt(kr);var le={},Ar=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},Dt={},H={},Nr={}.toString,We=Array.isArray||function(e){return Nr.call(e)=="[object Array]"},Sr=We;function Br(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},e.foo()===42}catch{return!1}}E.TYPED_ARRAY_SUPPORT=Br();var lt=E.TYPED_ARRAY_SUPPORT?2147483647:1073741823;function E(e,t,n){return!E.TYPED_ARRAY_SUPPORT&&!(this instanceof E)?new E(e,t,n):typeof e=="number"?Ut(this,e):Ur(this,e,t,n)}E.TYPED_ARRAY_SUPPORT&&(E.prototype.__proto__=Uint8Array.prototype,E.__proto__=Uint8Array,typeof Symbol<"u"&&Symbol.species&&E[Symbol.species]===E&&Object.defineProperty(E,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}));function Ye(e){if(e>=lt)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+lt.toString(16)+" bytes");return e|0}function Rr(e){return e!==e}function K(e,t){var n;return E.TYPED_ARRAY_SUPPORT?(n=new Uint8Array(t),n.__proto__=E.prototype):(n=e,n===null&&(n=new E(t)),n.length=t),n}function Ut(e,t){var n=K(e,t<0?0:Ye(t)|0);if(!E.TYPED_ARRAY_SUPPORT)for(var r=0;r55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(i+1===r){(t-=3)>-1&&a.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),o=n;continue}n=(o-55296<<10|n-56320)+65536}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,n&63|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw new Error("Invalid code point")}return a}function Ft(e){if(E.isBuffer(e))return e.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;typeof e!="string"&&(e=""+e);var t=e.length;return t===0?0:Ot(e).length}function Ir(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}function Dr(e,t,n,r){return Ir(Ot(t,e.length-n),e,n,r)}function Ur(e,t,n,r){if(typeof t=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer?Lr(e,t,n,r):typeof t=="string"?Pr(e,t):Mr(e,t)}E.prototype.write=function(t,n,r){n===void 0?(r=this.length,n=0):r===void 0&&typeof n=="string"?(r=this.length,n=0):isFinite(n)&&(n=n|0,isFinite(r)?r=r|0:r=void 0);var o=this.length-n;if((r===void 0||r>o)&&(r=o),t.length>0&&(r<0||n<0)||n>this.length)throw new RangeError("Attempt to write outside buffer bounds");return Dr(this,t,n,r)};E.prototype.slice=function(t,n){var r=this.length;t=~~t,n=n===void 0?r:~~n,t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),n<0?(n+=r,n<0&&(n=0)):n>r&&(n=r),n=t.length&&(n=t.length),n||(n=0),o>0&&o=this.length)throw new RangeError("sourceStart out of bounds");if(o<0)throw new RangeError("sourceEnd out of bounds");o>this.length&&(o=this.length),t.length-n=0;--i)t[i+n]=this[i+r];else if(a<1e3||!E.TYPED_ARRAY_SUPPORT)for(i=0;i>>0,r=r===void 0?this.length:r>>>0,t||(t=0);var a;if(typeof t=="number")for(a=n;a40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};L.getSymbolTotalCodewords=function(t){return Or[t]};L.getBCHDigit=function(e){for(var t=0;e!==0;)t++,e>>>=1;return t};L.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');Ve=t};L.isKanjiModeEnabled=function(){return typeof Ve<"u"};L.toSJIS=function(t){return Ve(t)};var we={};(function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(n){if(typeof n!="string")throw new Error("Param is not a string");var r=n.toLowerCase();switch(r){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+n)}}e.isValid=function(r){return r&&typeof r.bit<"u"&&r.bit>=0&&r.bit<4},e.from=function(r,o){if(e.isValid(r))return r;try{return t(r)}catch{return o}}})(we);function $t(){this.buffer=[],this.length=0}$t.prototype={get:function(e){var t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(var n=0;n>>t-n-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){var t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var Fr=$t,ct=H;function ce(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=ct.alloc(e*e),this.reservedBit=ct.alloc(e*e)}ce.prototype.set=function(e,t,n,r){var o=e*this.size+t;this.data[o]=n,r&&(this.reservedBit[o]=!0)};ce.prototype.get=function(e,t){return this.data[e*this.size+t]};ce.prototype.xor=function(e,t,n){this.data[e*this.size+t]^=n};ce.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};var $r=ce,zt={};(function(e){var t=L.getSymbolSize;e.getRowColCoords=function(r){if(r===1)return[];for(var o=Math.floor(r/7)+2,a=t(r),i=a===145?26:Math.ceil((a-13)/(2*o-2))*2,l=[a-7],u=1;u=0&&o<=7},e.from=function(o){return e.isValid(o)?parseInt(o,10):void 0},e.getPenaltyN1=function(o){for(var a=o.size,i=0,l=0,u=0,s=null,c=null,f=0;f=5&&(i+=t.N1+(l-5)),s=b,l=1),b=o.get(m,f),b===c?u++:(u>=5&&(i+=t.N1+(u-5)),c=b,u=1)}l>=5&&(i+=t.N1+(l-5)),u>=5&&(i+=t.N1+(u-5))}return i},e.getPenaltyN2=function(o){for(var a=o.size,i=0,l=0;l=10&&(l===1488||l===93)&&i++,u=u<<1&2047|o.get(c,s),c>=10&&(u===1488||u===93)&&i++}return i*t.N3},e.getPenaltyN4=function(o){for(var a=0,i=o.data.length,l=0;l=0;){for(var l=i[0],u=0;u0){var i=st.alloc(this.degree);return o.copy(i,a),i}return o};var qr=Ke,Kt={},q={},Qe={};Qe.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var I={},Qt="[0-9]+",Wr="[A-Z $%*+\\-./:]+",oe="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";oe=oe.replace(/u/g,"\\u");var Yr="(?:(?![A-Z0-9 $%*+\\-./:]|"+oe+`)(?:.|[\r -]))+`;I.KANJI=new RegExp(oe,"g");I.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");I.BYTE=new RegExp(Yr,"g");I.NUMERIC=new RegExp(Qt,"g");I.ALPHANUMERIC=new RegExp(Wr,"g");var Vr=new RegExp("^"+oe+"$"),Kr=new RegExp("^"+Qt+"$"),Qr=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");I.testKanji=function(t){return Vr.test(t)};I.testNumeric=function(t){return Kr.test(t)};I.testAlphanumeric=function(t){return Qr.test(t)};(function(e){var t=Qe,n=I;e.NUMERIC={id:"Numeric",bit:1<<0,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:1<<1,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:1<<2,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:1<<3,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(a,i){if(!a.ccBits)throw new Error("Invalid mode: "+a);if(!t.isValid(i))throw new Error("Invalid version: "+i);return i>=1&&i<10?a.ccBits[0]:i<27?a.ccBits[1]:a.ccBits[2]},e.getBestModeForData=function(a){return n.testNumeric(a)?e.NUMERIC:n.testAlphanumeric(a)?e.ALPHANUMERIC:n.testKanji(a)?e.KANJI:e.BYTE},e.toString=function(a){if(a&&a.id)return a.id;throw new Error("Invalid mode")},e.isValid=function(a){return a&&a.bit&&a.ccBits};function r(o){if(typeof o!="string")throw new Error("Param is not a string");var a=o.toLowerCase();switch(a){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+o)}}e.from=function(a,i){if(e.isValid(a))return a;try{return r(a)}catch{return i}}})(q);(function(e){var t=L,n=ye,r=we,o=q,a=Qe,i=We,l=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0,u=t.getBCHDigit(l);function s(b,h,y){for(var w=1;w<=40;w++)if(h<=e.getCapacity(w,y,b))return w}function c(b,h){return o.getCharCountIndicator(b,h)+4}function f(b,h){var y=0;return b.forEach(function(w){var v=c(w.mode,h);y+=v+w.getBitsLength()}),y}function m(b,h){for(var y=1;y<=40;y++){var w=f(b,y);if(w<=e.getCapacity(y,h,o.MIXED))return y}}e.from=function(h,y){return a.isValid(h)?parseInt(h,10):y},e.getCapacity=function(h,y,w){if(!a.isValid(h))throw new Error("Invalid QR Code version");typeof w>"u"&&(w=o.BYTE);var v=t.getSymbolTotalCodewords(h),g=n.getTotalCodewordsCount(h,y),p=(v-g)*8;if(w===o.MIXED)return p;var _=p-c(w,h);switch(w){case o.NUMERIC:return Math.floor(_/10*3);case o.ALPHANUMERIC:return Math.floor(_/11*2);case o.KANJI:return Math.floor(_/13);case o.BYTE:default:return Math.floor(_/8)}},e.getBestVersionForData=function(h,y){var w,v=r.from(y,r.M);if(i(h)){if(h.length>1)return m(h,v);if(h.length===0)return 1;w=h[0]}else w=h;return s(w.mode,w.getLength(),v)},e.getEncodedBits=function(h){if(!a.isValid(h)||h<7)throw new Error("Invalid QR Code version");for(var y=h<<12;t.getBCHDigit(y)-u>=0;)y^=l<=0;)o^=jt<0&&(r=this.data.substr(n),o=parseInt(r,10),t.put(o,a*3+1))};var Gr=Q,Zr=q,Te=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function J(e){this.mode=Zr.ALPHANUMERIC,this.data=e}J.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};J.prototype.getLength=function(){return this.data.length};J.prototype.getBitsLength=function(){return J.getBitsLength(this.data.length)};J.prototype.write=function(t){var n;for(n=0;n+2<=this.data.length;n+=2){var r=Te.indexOf(this.data[n])*45;r+=Te.indexOf(this.data[n+1]),t.put(r,11)}this.data.length%2&&t.put(Te.indexOf(this.data[n]),6)};var Xr=J,eo=H,to=q;function j(e){this.mode=to.BYTE,this.data=eo.from(e)}j.getBitsLength=function(t){return t*8};j.prototype.getLength=function(){return this.data.length};j.prototype.getBitsLength=function(){return j.getBitsLength(this.data.length)};j.prototype.write=function(e){for(var t=0,n=this.data.length;t=33088&&n<=40956)n-=33088;else if(n>=57408&&n<=60351)n-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` -Make sure your charset is UTF-8`);n=(n>>>8&255)*192+(n&255),e.put(n,13)}};var ao=G,Ie={},io={get exports(){return Ie},set exports(e){Ie=e}};(function(e){var t={single_source_shortest_paths:function(n,r,o){var a={},i={};i[r]=0;var l=t.PriorityQueue.make();l.push(r,0);for(var u,s,c,f,m,b,h,y,w;!l.empty();){u=l.pop(),s=u.value,f=u.cost,m=n[s]||{};for(c in m)m.hasOwnProperty(c)&&(b=m[c],h=f+b,y=i[c],w=typeof i[c]>"u",(w||y>h)&&(i[c]=h,l.push(c,h),a[c]=s))}if(typeof o<"u"&&typeof i[o]>"u"){var v=["Could not find a path from ",r," to ",o,"."].join("");throw new Error(v)}return a},extract_shortest_path_from_predecessor_list:function(n,r){for(var o=[],a=r;a;)o.push(a),n[a],a=n[a];return o.reverse(),o},find_path:function(n,r,o){var a=t.single_source_shortest_paths(n,r,o);return t.extract_shortest_path_from_predecessor_list(a,o)},PriorityQueue:{make:function(n){var r=t.PriorityQueue,o={},a;n=n||{};for(a in r)r.hasOwnProperty(a)&&(o[a]=r[a]);return o.queue=[],o.sorter=n.sorter||r.default_sorter,o},default_sorter:function(n,r){return n.cost-r.cost},push:function(n,r){var o={value:n,cost:r};this.queue.push(o),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};e.exports=t})(io);(function(e){var t=q,n=Gr,r=Xr,o=no,a=ao,i=I,l=L,u=Ie;function s(v){return unescape(encodeURIComponent(v)).length}function c(v,g,p){for(var _=[],x;(x=v.exec(p))!==null;)_.push({data:x[0],index:x.index,mode:g,length:x[0].length});return _}function f(v){var g=c(i.NUMERIC,t.NUMERIC,v),p=c(i.ALPHANUMERIC,t.ALPHANUMERIC,v),_,x;l.isKanjiModeEnabled()?(_=c(i.BYTE,t.BYTE,v),x=c(i.KANJI,t.KANJI,v)):(_=c(i.BYTE_KANJI,t.BYTE,v),x=[]);var T=g.concat(p,_,x);return T.sort(function(k,A){return k.index-A.index}).map(function(k){return{data:k.data,mode:k.mode,length:k.length}})}function m(v,g){switch(g){case t.NUMERIC:return n.getBitsLength(v);case t.ALPHANUMERIC:return r.getBitsLength(v);case t.KANJI:return a.getBitsLength(v);case t.BYTE:return o.getBitsLength(v)}}function b(v){return v.reduce(function(g,p){var _=g.length-1>=0?g[g.length-1]:null;return _&&_.mode===p.mode?(g[g.length-1].data+=p.data,g):(g.push(p),g)},[])}function h(v){for(var g=[],p=0;p=0&&l<=6&&(u===0||u===6)||u>=0&&u<=6&&(l===0||l===6)||l>=2&&l<=4&&u>=2&&u<=4?e.set(a+l,i+u,!0,!0):e.set(a+l,i+u,!1,!0))}function mo(e){for(var t=e.size,n=8;n>l&1)===1,e.set(o,a,i,!0),e.set(a,o,i,!0)}function Se(e,t,n){var r=e.size,o=_o.getEncodedBits(t,n),a,i;for(a=0;a<15;a++)i=(o>>a&1)===1,a<6?e.set(a,8,i,!0):a<8?e.set(a+1,8,i,!0):e.set(r-15+a,8,i,!0),a<8?e.set(8,r-a-1,i,!0):a<9?e.set(8,15-a-1+1,i,!0):e.set(8,15-a-1,i,!0);e.set(r-8,8,1,!0)}function yo(e,t){for(var n=e.size,r=-1,o=n-1,a=7,i=0,l=n-1;l>0;l-=2)for(l===6&&l--;;){for(var u=0;u<2;u++)if(!e.isReserved(o,l-u)){var s=!1;i>>a&1)===1),e.set(o,l-u,s),a--,a===-1&&(i++,a=7)}if(o+=r,o<0||n<=o){o-=r,r=-r;break}}}function bo(e,t,n){var r=new lo;n.forEach(function(s){r.put(s.mode.bit,4),r.put(s.getLength(),ho.getCharCountIndicator(s.mode,e)),s.write(r)});var o=Ce.getSymbolTotalCodewords(e),a=Ue.getTotalCodewordsCount(e,t),i=(o-a)*8;for(r.getLengthInBits()+4<=i&&r.put(0,4);r.getLengthInBits()%8!==0;)r.putBit(0);for(var l=(i-r.getLengthInBits())/8,u=0;u=7&&wo(c,t),yo(c,u),isNaN(r)&&(r=De.getBestMask(c,Se.bind(null,c,n))),De.applyMask(r,c),Se(c,n,r),{modules:c,version:t,errorCorrectionLevel:n,maskPattern:r,segments:o}}Dt.create=function(t,n){if(typeof t>"u"||t==="")throw new Error("No input text");var r=Ae.M,o,a;return typeof n<"u"&&(r=Ae.from(n.errorCorrectionLevel,Ae.M),o=ge.from(n.version),a=De.from(n.maskPattern),n.toSJISFunc&&Ce.setToSJISFunction(n.toSJISFunc)),Eo(t,o,r,a)};var Zt={},Je={};(function(e){function t(n){if(typeof n=="number"&&(n=n.toString()),typeof n!="string")throw new Error("Color should be defined as hex string");var r=n.slice().replace("#","").split("");if(r.length<3||r.length===5||r.length>8)throw new Error("Invalid hex color: "+n);(r.length===3||r.length===4)&&(r=Array.prototype.concat.apply([],r.map(function(a){return[a,a]}))),r.length===6&&r.push("F","F");var o=parseInt(r.join(""),16);return{r:o>>24&255,g:o>>16&255,b:o>>8&255,a:o&255,hex:"#"+r.slice(0,6).join("")}}e.getOptions=function(r){r||(r={}),r.color||(r.color={});var o=typeof r.margin>"u"||r.margin===null||r.margin<0?4:r.margin,a=r.width&&r.width>=21?r.width:void 0,i=r.scale||4;return{width:a,scale:a?4:i,margin:o,color:{dark:t(r.color.dark||"#000000ff"),light:t(r.color.light||"#ffffffff")},type:r.type,rendererOpts:r.rendererOpts||{}}},e.getScale=function(r,o){return o.width&&o.width>=r+o.margin*2?o.width/(r+o.margin*2):o.scale},e.getImageWidth=function(r,o){var a=e.getScale(r,o);return Math.floor((r+o.margin*2)*a)},e.qrToImageData=function(r,o,a){for(var i=o.modules.size,l=o.modules.data,u=e.getScale(i,a),s=Math.floor((i+a.margin*2)*u),c=a.margin*u,f=[a.color.light,a.color.dark],m=0;m=c&&b>=c&&m"u"&&(!i||!i.getContext)&&(u=i,i=void 0),i||(s=r()),u=t.getOptions(u);var c=t.getImageWidth(a.modules.size,u),f=s.getContext("2d"),m=f.createImageData(c,c);return t.qrToImageData(m.data,a,u),n(f,s,c),f.putImageData(m,0,0),s},e.renderToDataURL=function(a,i,l){var u=l;typeof u>"u"&&(!i||!i.getContext)&&(u=i,i=void 0),u||(u={});var s=e.render(a,i,u),c=u.type||"image/png",f=u.rendererOpts||{};return s.toDataURL(c,f.quality)}})(Zt);var Xt={},xo=Je;function _t(e,t){var n=e.a/255,r=t+'="'+e.hex+'"';return n<1?r+" "+t+'-opacity="'+n.toFixed(2).slice(1)+'"':r}function Be(e,t,n){var r=e+t;return typeof n<"u"&&(r+=" "+n),r}function ko(e,t,n){for(var r="",o=0,a=!1,i=0,l=0;l0&&u>0&&e[l-1]||(r+=a?Be("M",u+n,.5+s+n):Be("m",o,0),o=0,a=!1),u+1':"",s="',c='viewBox="0 0 '+l+" "+l+'"',f=o.width?'width="'+o.width+'" height="'+o.width+'" ':"",m=''+u+s+` -`;return typeof r=="function"&&r(null,m),m};var To=Ar,Oe=Dt,en=Zt,Ao=Xt;function je(e,t,n,r,o){var a=[].slice.call(arguments,1),i=a.length,l=typeof a[i-1]=="function";if(!l&&!To())throw new Error("Callback required as last argument");if(l){if(i<2)throw new Error("Too few arguments provided");i===2?(o=n,n=t,t=r=void 0):i===3&&(t.getContext&&typeof o>"u"?(o=r,r=void 0):(o=r,r=n,n=t,t=void 0))}else{if(i<1)throw new Error("Too few arguments provided");return i===1?(n=t,t=r=void 0):i===2&&!t.getContext&&(r=n,n=t,t=void 0),new Promise(function(s,c){try{var f=Oe.create(n,r);s(e(f,t,r))}catch(m){c(m)}})}try{var u=Oe.create(n,r);o(null,e(u,t,r))}catch(s){o(s)}}le.create=Oe.create;le.toCanvas=je.bind(null,en.render);le.toDataURL=je.bind(null,en.renderToDataURL);le.toString=je.bind(null,function(e,t,n){return Ao.render(e,n)});var No=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r"u"){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var f=ht[t.format]||ht.default;window.clipboardData.setData(f,e)}else c.clipboardData.clearData(),c.clipboardData.setData(t.format,e);t.onCopy&&(c.preventDefault(),t.onCopy(c.clipboardData))}),document.body.appendChild(l),a.selectNodeContents(l),i.addRange(a);var s=document.execCommand("copy");if(!s)throw new Error("copy command was unsuccessful");u=!0}catch(c){n&&console.error("unable to copy using execCommand: ",c),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(f){n&&console.error("unable to copy using clipboardData: ",f),n&&console.error("falling back to prompt"),r=Ro("message"in t?t.message:Bo),window.prompt(r,e)}}finally{i&&(typeof i.removeRange=="function"?i.removeRange(a):i.removeAllRanges()),l&&document.body.removeChild(l),o()}return u}var Lo=Po,C,ne,Ge,tn,gt,Ze,nn,O={},Ee=[],Mo=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord/i;function U(e,t){for(var n in t)e[n]=t[n];return e}function rn(e){var t=e.parentNode;t&&t.removeChild(e)}function F(e,t,n){var r,o=arguments,a={};for(r in t)r!=="key"&&r!=="ref"&&(a[r]=t[r]);if(arguments.length>3)for(n=[n],r=3;r2&&(t.children=Ee.slice.call(arguments,2)),n={},t)r!=="key"&&r!=="ref"&&(n[r]=t[r]);return pe(e.type,n,t.key||e.key,t.ref||e.ref,null)}function fn(e){var t={},n={__c:"__cC"+nn++,__:e,Consumer:function(r,o){return r.children(o)},Provider:function(r){var o,a=this;return this.getChildContext||(o=[],this.getChildContext=function(){return t[n.__c]=a,t},this.shouldComponentUpdate=function(i){a.props.value!==i.value&&o.some(function(l){l.context=i.value,_e(l)})},this.sub=function(i){o.push(i);var l=i.componentWillUnmount;i.componentWillUnmount=function(){o.splice(o.indexOf(i),1),l&&l.call(i)}}),r.children}};return n.Consumer.contextType=n,n.Provider.__=n,n}C={__e:function(e,t){for(var n,r;t=t.__;)if((n=t.__c)&&!n.__)try{if(n.constructor&&n.constructor.getDerivedStateFromError!=null&&(r=!0,n.setState(n.constructor.getDerivedStateFromError(e))),n.componentDidCatch!=null&&(r=!0,n.componentDidCatch(e)),r)return _e(n.__E=n)}catch(o){e=o}throw e}},M.prototype.setState=function(e,t){var n;n=this.__s!==this.state?this.__s:this.__s=U({},this.state),typeof e=="function"&&(e=e(n,this.props)),e&&U(n,e),e!=null&&this.__v&&(t&&this.__h.push(t),_e(this))},M.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),_e(this))},M.prototype.render=ue,ne=[],Ge=0,tn=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Ze=O,nn=0;var Y,R,vt,Z=0,Fe=[],wt=C.__r,yt=C.diffed,bt=C.__c,Ct=C.unmount;function X(e,t){C.__h&&C.__h(R,e,Z||t),Z=0;var n=R.__H||(R.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function et(e){return Z=1,tt(vn,e)}function tt(e,t,n){var r=X(Y++,2);return r.__c||(r.__c=R,r.__=[n?n(t):vn(void 0,t),function(o){var a=e(r.__[0],o);r.__[0]!==a&&(r.__[0]=a,r.__c.setState({}))}]),r.__}function dn(e,t){var n=X(Y++,3);!C.__s&&rt(n.__H,t)&&(n.__=e,n.__H=t,R.__H.__h.push(n))}function nt(e,t){var n=X(Y++,4);!C.__s&&rt(n.__H,t)&&(n.__=e,n.__H=t,R.__h.push(n))}function _n(e){return Z=5,xe(function(){return{current:e}},[])}function hn(e,t,n){Z=6,nt(function(){typeof e=="function"?e(t()):e&&(e.current=t())},n==null?n:n.concat(e))}function xe(e,t){var n=X(Y++,7);return rt(n.__H,t)?(n.__H=t,n.__h=e,n.__=e()):n.__}function gn(e,t){return Z=8,xe(function(){return e},t)}function pn(e){var t=R.context[e.__c],n=X(Y++,9);return n.__c=e,t?(n.__==null&&(n.__=!0,t.sub(R)),t.props.value):e.__}function mn(e,t){C.useDebugValue&&C.useDebugValue(t?t(e):e)}function $o(e){var t=X(Y++,10),n=et();return t.__=e,R.componentDidCatch||(R.componentDidCatch=function(r){t.__&&t.__(r),n[1](r)}),[n[0],function(){n[1](void 0)}]}function zo(){Fe.some(function(e){if(e.__P)try{e.__H.__h.forEach($e),e.__H.__h.forEach(ze),e.__H.__h=[]}catch(t){return e.__H.__h=[],C.__e(t,e.__v),!0}}),Fe=[]}function $e(e){e.t&&e.t()}function ze(e){var t=e.__();typeof t=="function"&&(e.t=t)}function rt(e,t){return!e||t.some(function(n,r){return n!==e[r]})}function vn(e,t){return typeof t=="function"?t(e):t}C.__r=function(e){wt&&wt(e),Y=0,(R=e.__c).__H&&(R.__H.__h.forEach($e),R.__H.__h.forEach(ze),R.__H.__h=[])},C.diffed=function(e){yt&&yt(e);var t=e.__c;if(t){var n=t.__H;n&&n.__h.length&&(Fe.push(t)!==1&&vt===C.requestAnimationFrame||((vt=C.requestAnimationFrame)||function(r){var o,a=function(){clearTimeout(i),cancelAnimationFrame(o),setTimeout(r)},i=setTimeout(a,100);typeof window<"u"&&(o=requestAnimationFrame(a))})(zo))}},C.__c=function(e,t){t.some(function(n){try{n.__h.forEach($e),n.__h=n.__h.filter(function(r){return!r.__||ze(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],C.__e(r,n.__v)}}),bt&&bt(e,t)},C.unmount=function(e){Ct&&Ct(e);var t=e.__c;if(t){var n=t.__H;if(n)try{n.__.forEach(function(r){return r.t&&r.t()})}catch(r){C.__e(r,t.__v)}}};function ot(e,t){for(var n in t)e[n]=t[n];return e}function He(e,t){for(var n in e)if(n!=="__source"&&!(n in t))return!0;for(var r in t)if(r!=="__source"&&e[r]!==t[r])return!0;return!1}var wn=function(e){var t,n;function r(o){var a;return(a=e.call(this,o)||this).isPureReactComponent=!0,a}return n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,r.prototype.shouldComponentUpdate=function(o,a){return He(this.props,o)||He(this.state,a)},r}(M);function yn(e,t){function n(o){var a=this.props.ref,i=a==o.ref;return!i&&a&&(a.call?a(null):a.current=null),t?!t(this.props,o)||!i:He(this.props,o)}function r(o){return this.shouldComponentUpdate=n,F(e,ot({},o))}return r.prototype.isReactComponent=!0,r.displayName="Memo("+(e.displayName||e.name)+")",r.t=!0,r}var Et=C.__b;function bn(e){function t(n){var r=ot({},n);return delete r.ref,e(r,n.ref)}return t.prototype.isReactComponent=t.t=!0,t.displayName="ForwardRef("+(e.displayName||e.name)+")",t}C.__b=function(e){e.type&&e.type.t&&e.ref&&(e.props.ref=e.ref,e.ref=null),Et&&Et(e)};var xt=function(e,t){return e?z(e).reduce(function(n,r,o){return n.concat(t(r,o))},[]):null},Cn={map:xt,forEach:xt,count:function(e){return e?z(e).length:0},only:function(e){if((e=z(e)).length!==1)throw new Error("Children.only() expects only one child.");return e[0]},toArray:z},Ho=C.__e;function En(e){return e&&((e=ot({},e)).__c=null,e.__k=e.__k&&e.__k.map(En)),e}function ve(){this.__u=0,this.o=null,this.__b=null}function xn(e){var t=e.__.__c;return t&&t.u&&t.u(e)}function kn(e){var t,n,r;function o(a){if(t||(t=e()).then(function(i){n=i.default||i},function(i){r=i}),r)throw r;if(!n)throw t;return F(n,a)}return o.displayName="Lazy",o.t=!0,o}function V(){this.i=null,this.l=null}C.__e=function(e,t,n){if(e.then){for(var r,o=t;o=o.__;)if((r=o.__c)&&r.__c)return r.__c(e,t.__c)}Ho(e,t,n)},(ve.prototype=new M).__c=function(e,t){var n=this;n.o==null&&(n.o=[]),n.o.push(t);var r=xn(n.__v),o=!1,a=function(){o||(o=!0,r?r(i):i())};t.__c=t.componentWillUnmount,t.componentWillUnmount=function(){a(),t.__c&&t.__c()};var i=function(){var l;if(!--n.__u)for(n.__v.__k[0]=n.state.u,n.setState({u:n.__b=null});l=n.o.pop();)l.forceUpdate()};n.__u++||n.setState({u:n.__b=n.__v.__k[0]}),e.then(a,a)},ve.prototype.render=function(e,t){return this.__b&&(this.__v.__k[0]=En(this.__b),this.__b=null),[F(M,null,t.u?null:e.children),t.u&&e.fallback]};var kt=function(e,t,n){if(++n[1]===n[0]&&e.l.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!=="t"||!e.l.size))for(n=e.i;n;){for(;n.length>3;)n.pop()();if(n[1]8?2.5:2.7)+"vw":"inherit";return d.createElement("a",{className:"walletconnect-connect__button__icon_anchor",href:n,onClick:a,rel:"noopener noreferrer",target:"_blank"},d.createElement("div",{className:"walletconnect-connect__button__icon",style:{background:"url('"+o+"') "+t,backgroundSize:"100%"}}),d.createElement("div",{style:{fontSize:i},className:"walletconnect-connect__button__text"},r))}var fa=5,Pe=12;function da(e){var t=B.isAndroid(),n=d.useState(""),r=n[0],o=n[1],a=d.useState(""),i=a[0],l=a[1],u=d.useState(1),s=u[0],c=u[1],f=i?e.links.filter(function(_){return _.name.toLowerCase().includes(i.toLowerCase())}):e.links,m=e.errorMessage,b=i||f.length>fa,h=Math.ceil(f.length/Pe),y=[(s-1)*Pe+1,s*Pe],w=f.length?f.filter(function(_,x){return x+1>=y[0]&&x+1<=y[1]}):[],v=!t&&h>1,g=void 0;function p(_){o(_.target.value),clearTimeout(g),_.target.value?g=setTimeout(function(){l(_.target.value),c(1)},1e3):(o(""),l(""),c(1))}return d.createElement("div",null,d.createElement("p",{id:Un,className:"walletconnect-qrcode__text"},t?e.text.connect_mobile_wallet:e.text.choose_preferred_wallet),!t&&d.createElement("input",{className:"walletconnect-search__input",placeholder:"Search",value:r,onChange:p}),d.createElement("div",{className:"walletconnect-connect__buttons__wrapper"+(t?"__android":b&&f.length?"__wrap":"")},t?d.createElement(la,{name:e.text.connect,color:ra,href:e.uri,onClick:d.useCallback(function(){B.saveMobileLinkInfo({name:"Unknown",href:e.uri})},[])}):w.length?w.map(function(_){var x=_.color,T=_.name,k=_.shortName,A=_.logo,S=B.formatIOSMobile(e.uri,_),N=d.useCallback(function(){B.saveMobileLinkInfo({name:T,href:S})},[w]);return b?d.createElement(sa,{color:x,href:S,name:k||T,logo:A,onClick:N}):d.createElement(ua,{color:x,href:S,name:T,logo:A,onClick:N})}):d.createElement(d.Fragment,null,d.createElement("p",null,m.length?e.errorMessage:e.links.length&&!f.length?e.text.no_wallets_found:e.text.loading))),v&&d.createElement("div",{className:"walletconnect-modal__footer"},Array(h).fill(0).map(function(_,x){var T=x+1,k=s===T;return d.createElement("a",{style:{margin:"auto 10px",fontWeight:k?"bold":"normal"},onClick:function(){return c(T)}},T)})))}function _a(e){var t=!!e.message.trim();return d.createElement("div",{className:"walletconnect-qrcode__notification"+(t?" notification__show":"")},e.message)}var ha=function(e){try{var t="";return Promise.resolve(Mn.toString(e,{margin:0,type:"svg"})).then(function(n){return typeof n=="string"&&(t=n.replace("0||d.useEffect(function(){var D=function(){try{if(t)return Promise.resolve();i(!0);var P=Xo(function(){var ee=e.qrcodeModalOptions&&e.qrcodeModalOptions.registryUrl?e.qrcodeModalOptions.registryUrl:B.getWalletRegistryUrl();return Promise.resolve(fetch(ee)).then(function($n){return Promise.resolve($n.json()).then(function(zn){var Hn=zn.listings,qn=n?"mobile":"desktop",se=B.getMobileLinkRegistry(B.formatMobileRegistry(Hn,qn),r);i(!1),s(!0),S(se.length?"":e.text.no_supported_wallets),T(se);var it=se.length===1;it&&(w(B.formatIOSMobile(e.uri,se[0])),m(!0)),p(it)})})},function(ee){i(!1),s(!0),S(e.text.something_went_wrong),console.error(ee)});return Promise.resolve(P&&P.then?P.then(function(){}):void 0)}catch(ee){return Promise.reject(ee)}};D()})};N();var W=n?f:!f;return d.createElement("div",{id:Dn,className:"walletconnect-qrcode__base animated fadeIn"},d.createElement("div",{className:"walletconnect-modal__base"},d.createElement(ia,{onClose:e.onClose}),g&&f?d.createElement("div",{className:"walletconnect-modal__single_wallet"},d.createElement("a",{onClick:function(){return B.saveMobileLinkInfo({name:x[0].name,href:y})},href:y,rel:"noopener noreferrer",target:"_blank"},e.text.connect_with+" "+(g?x[0].name:"")+" ›")):t||a||!a&&x.length?d.createElement("div",{className:"walletconnect-modal__mobile__toggle"+(W?" right__selected":"")},d.createElement("div",{className:"walletconnect-modal__mobile__toggle_selector"}),n?d.createElement(d.Fragment,null,d.createElement("a",{onClick:function(){return m(!1),N()}},e.text.mobile),d.createElement("a",{onClick:function(){return m(!0)}},e.text.qrcode)):d.createElement(d.Fragment,null,d.createElement("a",{onClick:function(){return m(!0)}},e.text.qrcode),d.createElement("a",{onClick:function(){return m(!1),N()}},e.text.desktop))):null,d.createElement("div",null,f||!t&&!a&&!x.length?d.createElement(ga,Object.assign({},b)):d.createElement(da,Object.assign({},b,{links:x,errorMessage:A})))))}var ma={choose_preferred_wallet:"Wähle bevorzugte Wallet",connect_mobile_wallet:"Verbinde mit Mobile Wallet",scan_qrcode_with_wallet:"Scanne den QR-code mit einer WalletConnect kompatiblen Wallet",connect:"Verbinden",qrcode:"QR-Code",mobile:"Mobile",desktop:"Desktop",copy_to_clipboard:"In die Zwischenablage kopieren",copied_to_clipboard:"In die Zwischenablage kopiert!",connect_with:"Verbinden mit Hilfe von",loading:"Laden...",something_went_wrong:"Etwas ist schief gelaufen",no_supported_wallets:"Es gibt noch keine unterstützten Wallet",no_wallets_found:"keine Wallet gefunden"},va={choose_preferred_wallet:"Choose your preferred wallet",connect_mobile_wallet:"Connect to Mobile Wallet",scan_qrcode_with_wallet:"Scan QR code with a WalletConnect-compatible wallet",connect:"Connect",qrcode:"QR Code",mobile:"Mobile",desktop:"Desktop",copy_to_clipboard:"Copy to clipboard",copied_to_clipboard:"Copied to clipboard!",connect_with:"Connect with",loading:"Loading...",something_went_wrong:"Something went wrong",no_supported_wallets:"There are no supported wallets yet",no_wallets_found:"No wallets found"},wa={choose_preferred_wallet:"Elige tu billetera preferida",connect_mobile_wallet:"Conectar a billetera móvil",scan_qrcode_with_wallet:"Escanea el código QR con una billetera compatible con WalletConnect",connect:"Conectar",qrcode:"Código QR",mobile:"Móvil",desktop:"Desktop",copy_to_clipboard:"Copiar",copied_to_clipboard:"Copiado!",connect_with:"Conectar mediante",loading:"Cargando...",something_went_wrong:"Algo salió mal",no_supported_wallets:"Todavía no hay billeteras compatibles",no_wallets_found:"No se encontraron billeteras"},ya={choose_preferred_wallet:"Choisissez votre portefeuille préféré",connect_mobile_wallet:"Se connecter au portefeuille mobile",scan_qrcode_with_wallet:"Scannez le QR code avec un portefeuille compatible WalletConnect",connect:"Se connecter",qrcode:"QR Code",mobile:"Mobile",desktop:"Desktop",copy_to_clipboard:"Copier",copied_to_clipboard:"Copié!",connect_with:"Connectez-vous à l'aide de",loading:"Chargement...",something_went_wrong:"Quelque chose a mal tourné",no_supported_wallets:"Il n'y a pas encore de portefeuilles pris en charge",no_wallets_found:"Aucun portefeuille trouvé"},ba={choose_preferred_wallet:"원하는 지갑을 선택하세요",connect_mobile_wallet:"모바일 지갑과 연결",scan_qrcode_with_wallet:"WalletConnect 지원 지갑에서 QR코드를 스캔하세요",connect:"연결",qrcode:"QR 코드",mobile:"모바일",desktop:"데스크탑",copy_to_clipboard:"클립보드에 복사",copied_to_clipboard:"클립보드에 복사되었습니다!",connect_with:"와 연결하다",loading:"로드 중...",something_went_wrong:"문제가 발생했습니다.",no_supported_wallets:"아직 지원되는 지갑이 없습니다",no_wallets_found:"지갑을 찾을 수 없습니다"},Ca={choose_preferred_wallet:"Escolha sua carteira preferida",connect_mobile_wallet:"Conectar-se à carteira móvel",scan_qrcode_with_wallet:"Ler o código QR com uma carteira compatível com WalletConnect",connect:"Conectar",qrcode:"Código QR",mobile:"Móvel",desktop:"Desktop",copy_to_clipboard:"Copiar",copied_to_clipboard:"Copiado!",connect_with:"Ligar por meio de",loading:"Carregamento...",something_went_wrong:"Algo correu mal",no_supported_wallets:"Ainda não há carteiras suportadas",no_wallets_found:"Nenhuma carteira encontrada"},Ea={choose_preferred_wallet:"选择你的钱包",connect_mobile_wallet:"连接至移动端钱包",scan_qrcode_with_wallet:"使用兼容 WalletConnect 的钱包扫描二维码",connect:"连接",qrcode:"二维码",mobile:"移动",desktop:"桌面",copy_to_clipboard:"复制到剪贴板",copied_to_clipboard:"复制到剪贴板成功!",connect_with:"通过以下方式连接",loading:"正在加载...",something_went_wrong:"出了问题",no_supported_wallets:"目前还没有支持的钱包",no_wallets_found:"没有找到钱包"},xa={choose_preferred_wallet:"کیف پول مورد نظر خود را انتخاب کنید",connect_mobile_wallet:"به کیف پول موبایل وصل شوید",scan_qrcode_with_wallet:"کد QR را با یک کیف پول سازگار با WalletConnect اسکن کنید",connect:"اتصال",qrcode:"کد QR",mobile:"سیار",desktop:"دسکتاپ",copy_to_clipboard:"کپی به کلیپ بورد",copied_to_clipboard:"در کلیپ بورد کپی شد!",connect_with:"ارتباط با",loading:"...بارگذاری",something_went_wrong:"مشکلی پیش آمد",no_supported_wallets:"هنوز هیچ کیف پول پشتیبانی شده ای وجود ندارد",no_wallets_found:"هیچ کیف پولی پیدا نشد"},Rt={de:ma,en:va,es:wa,fr:ya,ko:ba,pt:Ca,zh:Ea,fa:xa};function ka(){var e=B.getDocumentOrThrow(),t=e.getElementById(Bt);t&&e.head.removeChild(t);var n=e.createElement("style");n.setAttribute("id",Bt),n.innerText=Zo,e.head.appendChild(n)}function Ta(){var e=B.getDocumentOrThrow(),t=e.createElement("div");return t.setAttribute("id",In),e.body.appendChild(t),t}function On(){var e=B.getDocumentOrThrow(),t=e.getElementById(Dn);t&&(t.className=t.className.replace("fadeIn","fadeOut"),setTimeout(function(){var n=e.getElementById(In);n&&e.body.removeChild(n)},na))}function Aa(e){return function(){On(),e&&e()}}function Na(){var e=B.getNavigatorOrThrow().language.split("-")[0]||"en";return Rt[e]||Rt.en}function Sa(e,t,n){ka();var r=Ta();d.render(d.createElement(pa,{text:Na(),uri:e,onClose:Aa(t),qrcodeModalOptions:n}),r)}function Ba(){On()}var Fn=function(){return typeof ke<"u"&&typeof ke.versions<"u"&&typeof ke.versions.node<"u"};function Ra(e,t,n){console.log(e),Fn()?Go(e):Sa(e,t,n)}function Pa(){Fn()||Ba()}var La={open:Ra,close:Pa},Pt=La;const Da=br({__proto__:null,default:Pt},[Pt]);export{Da as i}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js.meta deleted file mode 100644 index 549fef194..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-f4328d31.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 474a54f7bed29a54798a11e44b15d129 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js deleted file mode 100644 index 3e650a4fb..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js +++ /dev/null @@ -1,42 +0,0 @@ -import{_ as $}from"./tslib.es6-c2094241.js";var ze={},We=9007199254740991,Nn="[object Arguments]",Vn="[object Function]",qn="[object GeneratorFunction]",Yn=/^(?:0|[1-9]\d*)$/;function $e(n,t,e){switch(e.length){case 0:return n.call(t);case 1:return n.call(t,e[0]);case 2:return n.call(t,e[0],e[1]);case 3:return n.call(t,e[0],e[1],e[2])}return n.apply(t,e)}function Gn(n,t){for(var e=-1,r=Array(n);++e1?e[s-1]:void 0,o=s>2?e[2]:void 0;for(i=n.length>3&&typeof i=="function"?(s--,i):void 0,o&&rr(e[0],e[1],o)&&(i=s<3?void 0:i,s=1),t=Object(t);++r-1&&n%1==0&&n-1&&n%1==0&&n<=We}function W0(n){var t=typeof n;return!!n&&(t=="object"||t=="function")}function lr(n){return!!n&&typeof n=="object"}var hr=nr(function(n,t,e,r){er(t,dr(t),n,r)}),xr=Ue(function(n){return n.push(void 0,Jn),$e(hr,void 0,n)});function dr(n){return z0(n)?Qn(n,!0):tr(n)}var pr=xr;Object.defineProperty(ze,"__esModule",{value:!0});var br=pr,yr="Provided shouldReconnect() returned false. Closing permanently.",_r="Provided shouldReconnect() resolved to false. Closing permanently.",wr=function(){function n(t,e,r){if(this.url=t,this.onclose=null,this.onerror=null,this.onmessage=null,this.onopen=null,this.ondown=null,this.onreopen=null,this.CONNECTING=n.CONNECTING,this.OPEN=n.OPEN,this.CLOSING=n.CLOSING,this.CLOSED=n.CLOSED,this.hasBeenOpened=!1,this.isClosed=!1,this.messageBuffer=[],this.nextRetryTime=0,this.reconnectCount=0,this.lastKnownExtensions="",this.lastKnownProtocol="",this.listeners={},e==null||typeof e=="string"||Array.isArray(e)?this.protocols=e:r=e,this.options=br({},r,n.DEFAULT_OPTIONS),!this.options.wsConstructor)if(typeof WebSocket<"u")this.options.wsConstructor=WebSocket;else throw new Error("WebSocket not present in global scope and no wsConstructor option was provided.");this.openNewWebSocket()}return Object.defineProperty(n.prototype,"binaryType",{get:function(){return this.binaryTypeInternal||"blob"},set:function(t){this.binaryTypeInternal=t,this.ws&&(this.ws.binaryType=t)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"bufferedAmount",{get:function(){var t=this.ws?this.ws.bufferedAmount:0,e=!1;return this.messageBuffer.forEach(function(r){var s=mr(r);s!=null?t+=s:e=!0}),e&&this.debugLog("Some buffered data had unknown length. bufferedAmount() return value may be below the correct amount."),t},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"extensions",{get:function(){return this.ws?this.ws.extensions:this.lastKnownExtensions},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"protocol",{get:function(){return this.ws?this.ws.protocol:this.lastKnownProtocol},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"readyState",{get:function(){return this.isClosed?n.CLOSED:n.OPEN},enumerable:!0,configurable:!0}),n.prototype.close=function(t,e){this.ws&&this.ws.close(t,e),this.shutdown(),this.debugLog("WebSocket permanently closed by client.")},n.prototype.send=function(t){this.ws&&this.ws.readyState===this.OPEN?this.ws.send(t):this.messageBuffer.push(t)},n.prototype.addEventListener=function(t,e){this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push(e)},n.prototype.dispatchEvent=function(t){return this.dispatchEventOfType(t.type,t)},n.prototype.removeEventListener=function(t,e){this.listeners[t]&&(this.listeners[t]=this.listeners[t].filter(function(r){return r!==e}))},n.prototype.openNewWebSocket=function(){var t=this;if(!this.isClosed){var e=this.options,r=e.connectTimeout,s=e.wsConstructor;this.debugLog("Opening new WebSocket to "+this.url+".");var i=new s(this.url,this.protocols);i.onclose=function(o){return t.handleClose(o)},i.onerror=function(o){return t.handleError(o)},i.onmessage=function(o){return t.handleMessage(o)},i.onopen=function(o){return t.handleOpen(o)},this.connectTimeoutId=setTimeout(function(){t.clearConnectTimeout(),i.close()},r),this.ws=i}},n.prototype.handleOpen=function(t){var e=this;if(!(!this.ws||this.isClosed)){var r=this.options.allClearResetTime;this.debugLog("WebSocket opened."),this.binaryTypeInternal!=null?this.ws.binaryType=this.binaryTypeInternal:this.binaryTypeInternal=this.ws.binaryType,this.clearConnectTimeout(),this.hasBeenOpened?this.dispatchEventOfType("reopen",t):(this.dispatchEventOfType("open",t),this.hasBeenOpened=!0),this.messageBuffer.forEach(function(s){return e.send(s)}),this.messageBuffer=[],this.allClearTimeoutId=setTimeout(function(){e.clearAllClearTimeout(),e.nextRetryTime=0,e.reconnectCount=0;var s=r/1e3|0;e.debugLog("WebSocket remained open for "+s+" seconds. Resetting retry time and count.")},r)}},n.prototype.handleMessage=function(t){this.isClosed||this.dispatchEventOfType("message",t)},n.prototype.handleClose=function(t){var e=this;if(!this.isClosed){var r=this.options,s=r.maxReconnectAttempts,i=r.shouldReconnect;if(this.clearConnectTimeout(),this.clearAllClearTimeout(),this.ws&&(this.lastKnownExtensions=this.ws.extensions,this.lastKnownProtocol=this.ws.protocol,this.ws=void 0),this.dispatchEventOfType("down",t),this.reconnectCount>=s){this.stopReconnecting(t,this.getTooManyFailedReconnectsMessage());return}var o=i(t);typeof o=="boolean"?this.handleWillReconnect(o,t,yr):o.then(function(c){e.isClosed||e.handleWillReconnect(c,t,_r)})}},n.prototype.handleError=function(t){this.dispatchEventOfType("error",t),this.debugLog("WebSocket encountered an error.")},n.prototype.handleWillReconnect=function(t,e,r){t?this.reconnect():this.stopReconnecting(e,r)},n.prototype.reconnect=function(){var t=this,e=this.options,r=e.minReconnectDelay,s=e.maxReconnectDelay,i=e.reconnectBackoffFactor;this.reconnectCount++;var o=this.nextRetryTime;this.nextRetryTime=Math.max(r,Math.min(this.nextRetryTime*i,s)),setTimeout(function(){return t.openNewWebSocket()},o);var c=o/1e3|0;this.debugLog("WebSocket was closed. Re-opening in "+c+" seconds.")},n.prototype.stopReconnecting=function(t,e){this.debugLog(e),this.shutdown(),this.dispatchEventOfType("close",t)},n.prototype.shutdown=function(){this.isClosed=!0,this.clearAllTimeouts(),this.messageBuffer=[]},n.prototype.clearAllTimeouts=function(){this.clearConnectTimeout(),this.clearAllClearTimeout()},n.prototype.clearConnectTimeout=function(){this.connectTimeoutId!=null&&(clearTimeout(this.connectTimeoutId),this.connectTimeoutId=void 0)},n.prototype.clearAllClearTimeout=function(){this.allClearTimeoutId!=null&&(clearTimeout(this.allClearTimeoutId),this.allClearTimeoutId=void 0)},n.prototype.dispatchEventOfType=function(t,e){var r=this;switch(t){case"close":this.onclose&&this.onclose(e);break;case"error":this.onerror&&this.onerror(e);break;case"message":this.onmessage&&this.onmessage(e);break;case"open":this.onopen&&this.onopen(e);break;case"down":this.ondown&&this.ondown(e);break;case"reopen":this.onreopen&&this.onreopen(e);break}return t in this.listeners&&this.listeners[t].slice().forEach(function(s){return r.callListener(s,e)}),!e||!e.defaultPrevented},n.prototype.callListener=function(t,e){typeof t=="function"?t.call(this,e):t.handleEvent.call(this,e)},n.prototype.debugLog=function(t){this.options.debug&&console.log(t)},n.prototype.getTooManyFailedReconnectsMessage=function(){var t=this.options.maxReconnectAttempts;return"Failed to reconnect after "+t+" "+vr("attempt",t)+". Closing permanently."},n.DEFAULT_OPTIONS={allClearResetTime:5e3,connectTimeout:5e3,debug:!1,minReconnectDelay:1e3,maxReconnectDelay:3e4,maxReconnectAttempts:Number.POSITIVE_INFINITY,reconnectBackoffFactor:1.5,shouldReconnect:function(){return!0},wsConstructor:void 0},n.CONNECTING=0,n.OPEN=1,n.CLOSING=2,n.CLOSED=3,n}(),gr=ze.default=wr;function mr(n){return typeof n=="string"?2*n.length:n instanceof ArrayBuffer?n.byteLength:n instanceof Blob?n.size:void 0}function vr(n,t){return t===1?n:n+"s"}class C{static create(...t){return new this(...t)}mixIn(t){return Object.assign(this,t)}clone(){const t=new this.constructor;return Object.assign(t,this),t}}class A extends C{constructor(t=[],e=t.length*4){super();let r=t;if(r instanceof ArrayBuffer&&(r=new Uint8Array(r)),(r instanceof Int8Array||r instanceof Uint8ClampedArray||r instanceof Int16Array||r instanceof Uint16Array||r instanceof Int32Array||r instanceof Uint32Array||r instanceof Float32Array||r instanceof Float64Array)&&(r=new Uint8Array(r.buffer,r.byteOffset,r.byteLength)),r instanceof Uint8Array){const s=r.byteLength,i=[];for(let o=0;o>>2]|=r[o]<<24-o%4*8;this.words=i,this.sigBytes=s}else this.words=t,this.sigBytes=e}static random(t){const e=[],r=s=>{let i=s,o=987654321;const c=4294967295;return()=>{o=36969*(o&65535)+(o>>16)&c,i=18e3*(i&65535)+(i>>16)&c;let a=(o<<16)+i&c;return a/=4294967296,a+=.5,a*(Math.random()>.5?1:-1)}};for(let s=0,i;s>>2]>>>24-o%4*8&255;e[s+o>>>2]|=c<<24-(s+o)%4*8}else for(let o=0;o>>2]=r[o>>>2];return this.sigBytes+=i,this}clamp(){const{words:t,sigBytes:e}=this;t[e>>>2]&=4294967295<<32-e%4*8,t.length=Math.ceil(e/4)}clone(){const t=super.clone.call(this);return t.words=this.words.slice(0),t}}const f0={stringify(n){const{words:t,sigBytes:e}=n,r=[];for(let s=0;s>>2]>>>24-s%4*8&255;r.push((i>>>4).toString(16)),r.push((i&15).toString(16))}return r.join("")},parse(n){const t=n.length,e=[];for(let r=0;r>>3]|=parseInt(n.substr(r,2),16)<<24-r%8*4;return new A(e,t/2)}},T0={stringify(n){const{words:t,sigBytes:e}=n,r=[];for(let s=0;s>>2]>>>24-s%4*8&255;r.push(String.fromCharCode(i))}return r.join("")},parse(n){const t=n.length,e=[];for(let r=0;r>>2]|=(n.charCodeAt(r)&255)<<24-r%4*8;return new A(e,t)}},$0={stringify(n){try{return decodeURIComponent(escape(T0.stringify(n)))}catch{throw new Error("Malformed UTF-8 data")}},parse(n){return T0.parse(unescape(encodeURIComponent(n)))}};class j0 extends C{constructor(){super(),this._minBufferSize=0}reset(){this._data=new A,this._nDataBytes=0}_append(t){let e=t;typeof e=="string"&&(e=$0.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes}_process(t){let e;const{_data:r,blockSize:s}=this,i=r.words,o=r.sigBytes,c=s*4;let a=o/c;t?a=Math.ceil(a):a=Math.max((a|0)-this._minBufferSize,0);const u=a*s,h=Math.min(u*4,o);if(u){for(let l=0;lnew t(r).finalize(e)}static _createHmacHelper(t){return(e,r)=>new U0(t,r).finalize(e)}reset(){super.reset.call(this),this._doReset()}update(t){return this._append(t),this._process(),this}finalize(t){return t&&this._append(t),this._doFinalize()}}class U0 extends C{constructor(t,e){super();const r=new t;this._hasher=r;let s=e;typeof s=="string"&&(s=$0.parse(s));const i=r.blockSize,o=i*4;s.sigBytes>o&&(s=r.finalize(e)),s.clamp();const c=s.clone();this._oKey=c;const a=s.clone();this._iKey=a;const u=c.words,h=a.words;for(let l=0;l{const r=[];let s=0;for(let i=0;i>>6-i%4*2,a=o|c;r[s>>>2]|=a<<24-s%4*8,s+=1}return A.create(r,s)},A0={stringify(n){const{words:t,sigBytes:e}=n,r=this._map;n.clamp();const s=[];for(let o=0;o>>2]>>>24-o%4*8&255,a=t[o+1>>>2]>>>24-(o+1)%4*8&255,u=t[o+2>>>2]>>>24-(o+2)%4*8&255,h=c<<16|a<<8|u;for(let l=0;l<4&&o+l*.75>>6*(3-l)&63))}const i=r.charAt(64);if(i)for(;s.length%4;)s.push(i);return s.join("")},parse(n){let t=n.length;const e=this._map;let r=this._reverseMap;if(!r){this._reverseMap=[],r=this._reverseMap;for(let i=0;i{const c=n+(t&e|~t&r)+s+o;return(c<>>32-i)+t},H=(n,t,e,r,s,i,o)=>{const c=n+(t&r|e&~r)+s+o;return(c<>>32-i)+t},M=(n,t,e,r,s,i,o)=>{const c=n+(t^e^r)+s+o;return(c<>>32-i)+t},D=(n,t,e,r,s,i,o)=>{const c=n+(e^(t|~r))+s+o;return(c<>>32-i)+t};class b0 extends P{_doReset(){this._hash=new A([1732584193,4023233417,2562383102,271733878])}_doProcessBlock(t,e){const r=t;for(let at=0;at<16;at+=1){const Pt=e+at,nt=t[Pt];r[Pt]=(nt<<8|nt>>>24)&16711935|(nt<<24|nt>>>8)&4278255360}const s=this._hash.words,i=r[e+0],o=r[e+1],c=r[e+2],a=r[e+3],u=r[e+4],h=r[e+5],l=r[e+6],y=r[e+7],v=r[e+8],m=r[e+9],g=r[e+10],S=r[e+11],_=r[e+12],B=r[e+13],E=r[e+14],I=r[e+15];let f=s[0],x=s[1],p=s[2],b=s[3];f=R(f,x,p,b,i,7,w[0]),b=R(b,f,x,p,o,12,w[1]),p=R(p,b,f,x,c,17,w[2]),x=R(x,p,b,f,a,22,w[3]),f=R(f,x,p,b,u,7,w[4]),b=R(b,f,x,p,h,12,w[5]),p=R(p,b,f,x,l,17,w[6]),x=R(x,p,b,f,y,22,w[7]),f=R(f,x,p,b,v,7,w[8]),b=R(b,f,x,p,m,12,w[9]),p=R(p,b,f,x,g,17,w[10]),x=R(x,p,b,f,S,22,w[11]),f=R(f,x,p,b,_,7,w[12]),b=R(b,f,x,p,B,12,w[13]),p=R(p,b,f,x,E,17,w[14]),x=R(x,p,b,f,I,22,w[15]),f=H(f,x,p,b,o,5,w[16]),b=H(b,f,x,p,l,9,w[17]),p=H(p,b,f,x,S,14,w[18]),x=H(x,p,b,f,i,20,w[19]),f=H(f,x,p,b,h,5,w[20]),b=H(b,f,x,p,g,9,w[21]),p=H(p,b,f,x,I,14,w[22]),x=H(x,p,b,f,u,20,w[23]),f=H(f,x,p,b,m,5,w[24]),b=H(b,f,x,p,E,9,w[25]),p=H(p,b,f,x,a,14,w[26]),x=H(x,p,b,f,v,20,w[27]),f=H(f,x,p,b,B,5,w[28]),b=H(b,f,x,p,c,9,w[29]),p=H(p,b,f,x,y,14,w[30]),x=H(x,p,b,f,_,20,w[31]),f=M(f,x,p,b,h,4,w[32]),b=M(b,f,x,p,v,11,w[33]),p=M(p,b,f,x,S,16,w[34]),x=M(x,p,b,f,E,23,w[35]),f=M(f,x,p,b,o,4,w[36]),b=M(b,f,x,p,u,11,w[37]),p=M(p,b,f,x,y,16,w[38]),x=M(x,p,b,f,g,23,w[39]),f=M(f,x,p,b,B,4,w[40]),b=M(b,f,x,p,i,11,w[41]),p=M(p,b,f,x,a,16,w[42]),x=M(x,p,b,f,l,23,w[43]),f=M(f,x,p,b,m,4,w[44]),b=M(b,f,x,p,_,11,w[45]),p=M(p,b,f,x,I,16,w[46]),x=M(x,p,b,f,c,23,w[47]),f=D(f,x,p,b,i,6,w[48]),b=D(b,f,x,p,y,10,w[49]),p=D(p,b,f,x,E,15,w[50]),x=D(x,p,b,f,h,21,w[51]),f=D(f,x,p,b,_,6,w[52]),b=D(b,f,x,p,a,10,w[53]),p=D(p,b,f,x,g,15,w[54]),x=D(x,p,b,f,o,21,w[55]),f=D(f,x,p,b,v,6,w[56]),b=D(b,f,x,p,I,10,w[57]),p=D(p,b,f,x,l,15,w[58]),x=D(x,p,b,f,B,21,w[59]),f=D(f,x,p,b,u,6,w[60]),b=D(b,f,x,p,S,10,w[61]),p=D(p,b,f,x,c,15,w[62]),x=D(x,p,b,f,m,21,w[63]),s[0]=s[0]+f|0,s[1]=s[1]+x|0,s[2]=s[2]+p|0,s[3]=s[3]+b|0}_doFinalize(){const t=this._data,e=t.words,r=this._nDataBytes*8,s=t.sigBytes*8;e[s>>>5]|=128<<24-s%32;const i=Math.floor(r/4294967296),o=r;e[(s+64>>>9<<4)+15]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360,e[(s+64>>>9<<4)+14]=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,t.sigBytes=(e.length+1)*4,this._process();const c=this._hash,a=c.words;for(let u=0;u<4;u+=1){const h=a[u];a[u]=(h<<8|h>>>24)&16711935|(h<<24|h>>>8)&4278255360}return c}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const kr=P._createHelper(b0),Tr=P._createHmacHelper(b0);class N0 extends C{constructor(t){super(),this.cfg=Object.assign(new C,{keySize:128/32,hasher:b0,iterations:1},t)}compute(t,e){let r;const{cfg:s}=this,i=s.hasher.create(),o=A.create(),c=o.words,{keySize:a,iterations:u}=s;for(;c.lengthN0.create(e).compute(n,t);class bt extends j0{constructor(t,e,r){super(),this.cfg=Object.assign(new C,r),this._xformMode=t,this._key=e,this.reset()}static createEncryptor(t,e){return this.create(this._ENC_XFORM_MODE,t,e)}static createDecryptor(t,e){return this.create(this._DEC_XFORM_MODE,t,e)}static _createHelper(t){const e=r=>typeof r=="string"?V0:pt;return{encrypt(r,s,i){return e(s).encrypt(t,r,s,i)},decrypt(r,s,i){return e(s).decrypt(t,r,s,i)}}}reset(){super.reset.call(this),this._doReset()}process(t){return this._append(t),this._process()}finalize(t){return t&&this._append(t),this._doFinalize()}}bt._ENC_XFORM_MODE=1;bt._DEC_XFORM_MODE=2;bt.keySize=128/32;bt.ivSize=128/32;class ht extends bt{constructor(...t){super(...t),this.blockSize=1}_doFinalize(){return this._process(!0)}}class yt extends C{constructor(t,e){super(),this._cipher=t,this._iv=e}static createEncryptor(t,e){return this.Encryptor.create(t,e)}static createDecryptor(t,e){return this.Decryptor.create(t,e)}}function Ne(n,t,e){const r=n;let s;const i=this._iv;i?(s=i,this._iv=void 0):s=this._prevBlock;for(let o=0;o>>2]&255;t.sigBytes-=e}};class _t extends bt{constructor(t,e,r){super(t,e,Object.assign({mode:Bt,padding:Ve},r)),this.blockSize=128/32}reset(){let t;super.reset.call(this);const{cfg:e}=this,{iv:r,mode:s}=e;this._xformMode===this.constructor._ENC_XFORM_MODE?t=s.createEncryptor:(t=s.createDecryptor,this._minBufferSize=1),this._mode=t.call(s,this,r&&r.words),this._mode.__creator=t}_doProcessBlock(t,e){this._mode.processBlock(t,e)}_doFinalize(){let t;const{padding:e}=this.cfg;return this._xformMode===this.constructor._ENC_XFORM_MODE?(e.pad(this._data,this.blockSize),t=this._process(!0)):(t=this._process(!0),e.unpad(t)),t}}class Jt extends C{constructor(t){super(),this.mixIn(t)}toString(t){return(t||this.formatter).stringify(this)}}const qe={stringify(n){let t;const{ciphertext:e,salt:r}=n;return r?t=A.create([1398893684,1701076831]).concat(r).concat(e):t=e,t.toString(A0)},parse(n){let t;const e=A0.parse(n),r=e.words;return r[0]===1398893684&&r[1]===1701076831&&(t=A.create(r.slice(2,4)),r.splice(0,4),e.sigBytes-=16),Jt.create({ciphertext:e,salt:t})}};class pt extends C{static encrypt(t,e,r,s){const i=Object.assign(new C,this.cfg,s),o=t.createEncryptor(r,i),c=o.finalize(e),a=o.cfg;return Jt.create({ciphertext:c,key:r,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:o.blockSize,formatter:i.format})}static decrypt(t,e,r,s){let i=e;const o=Object.assign(new C,this.cfg,s);return i=this._parse(i,o.format),t.createDecryptor(r,o).finalize(i.ciphertext)}static _parse(t,e){return typeof t=="string"?e.parse(t,this):t}}pt.cfg=Object.assign(new C,{format:qe});const Ye={execute(n,t,e,r){let s=r;s||(s=A.random(64/8));const i=N0.create({keySize:t+e}).compute(n,s),o=A.create(i.words.slice(t),e*4);return i.sigBytes=t*4,Jt.create({key:i,iv:o,salt:s})}};class V0 extends pt{static encrypt(t,e,r,s){const i=Object.assign(new C,this.cfg,s),o=i.kdf.execute(r,t.keySize,t.ivSize);i.iv=o.iv;const c=pt.encrypt.call(this,t,e,o.key,i);return c.mixIn(o),c}static decrypt(t,e,r,s){let i=e;const o=Object.assign(new C,this.cfg,s);i=this._parse(i,o.format);const c=o.kdf.execute(r,t.keySize,t.ivSize,i.salt);return o.iv=c.iv,pt.decrypt.call(this,t,i,c.key,o)}}V0.cfg=Object.assign(pt.cfg,{kdf:Ye});const be=n=>n<<8&4278255360|n>>>8&16711935,Ge={stringify(n){const{words:t,sigBytes:e}=n,r=[];for(let s=0;s>>2]>>>16-s%4*8&65535;r.push(String.fromCharCode(i))}return r.join("")},parse(n){const t=n.length,e=[];for(let r=0;r>>1]|=n.charCodeAt(r)<<16-r%2*16;return A.create(e,t*2)}},Br=Ge,Ir={stringify(n){const{words:t,sigBytes:e}=n,r=[];for(let s=0;s>>2]>>>16-s%4*8&65535);r.push(String.fromCharCode(i))}return r.join("")},parse(n){const t=n.length,e=[];for(let r=0;r>>1]|=be(n.charCodeAt(r)<<16-r%2*16);return A.create(e,t*2)}},xt=[];class y0 extends P{_doReset(){this._hash=new A([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const r=this._hash.words;let s=r[0],i=r[1],o=r[2],c=r[3],a=r[4];for(let u=0;u<80;u+=1){if(u<16)xt[u]=t[e+u]|0;else{const l=xt[u-3]^xt[u-8]^xt[u-14]^xt[u-16];xt[u]=l<<1|l>>>31}let h=(s<<5|s>>>27)+a+xt[u];u<20?h+=(i&o|~i&c)+1518500249:u<40?h+=(i^o^c)+1859775393:u<60?h+=(i&o|i&c|o&c)-1894007588:h+=(i^o^c)-899497514,a=c,c=o,o=i<<30|i>>>2,i=s,s=h}r[0]=r[0]+s|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+c|0,r[4]=r[4]+a|0}_doFinalize(){const t=this._data,e=t.words,r=this._nDataBytes*8,s=t.sigBytes*8;return e[s>>>5]|=128<<24-s%32,e[(s+64>>>9<<4)+14]=Math.floor(r/4294967296),e[(s+64>>>9<<4)+15]=r,t.sigBytes=e.length*4,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Cr=P._createHelper(y0),Pr=P._createHmacHelper(y0),Xe=[],Qe=[],Rr=n=>{const t=Math.sqrt(n);for(let e=2;e<=t;e+=1)if(!(n%e))return!1;return!0},ye=n=>(n-(n|0))*4294967296|0;let s0=2,Wt=0;for(;Wt<64;)Rr(s0)&&(Wt<8&&(Xe[Wt]=ye(s0**(1/2))),Qe[Wt]=ye(s0**(1/3)),Wt+=1),s0+=1;const dt=[];class It extends P{_doReset(){this._hash=new A(Xe.slice(0))}_doProcessBlock(t,e){const r=this._hash.words;let s=r[0],i=r[1],o=r[2],c=r[3],a=r[4],u=r[5],h=r[6],l=r[7];for(let y=0;y<64;y+=1){if(y<16)dt[y]=t[e+y]|0;else{const E=dt[y-15],I=(E<<25|E>>>7)^(E<<14|E>>>18)^E>>>3,f=dt[y-2],x=(f<<15|f>>>17)^(f<<13|f>>>19)^f>>>10;dt[y]=I+dt[y-7]+x+dt[y-16]}const v=a&u^~a&h,m=s&i^s&o^i&o,g=(s<<30|s>>>2)^(s<<19|s>>>13)^(s<<10|s>>>22),S=(a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25),_=l+S+v+Qe[y]+dt[y],B=g+m;l=h,h=u,u=a,a=c+_|0,c=o,o=i,i=s,s=_+B|0}r[0]=r[0]+s|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+c|0,r[4]=r[4]+a|0,r[5]=r[5]+u|0,r[6]=r[6]+h|0,r[7]=r[7]+l|0}_doFinalize(){const t=this._data,e=t.words,r=this._nDataBytes*8,s=t.sigBytes*8;return e[s>>>5]|=128<<24-s%32,e[(s+64>>>9<<4)+14]=Math.floor(r/4294967296),e[(s+64>>>9<<4)+15]=r,t.sigBytes=e.length*4,this._process(),this._hash}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Hr=P._createHelper(It),Mr=P._createHmacHelper(It);class q0 extends It{_doReset(){this._hash=new A([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=4,t}}const Dr=It._createHelper(q0),Or=It._createHmacHelper(q0),Lr=[new d(1116352408,3609767458),new d(1899447441,602891725),new d(3049323471,3964484399),new d(3921009573,2173295548),new d(961987163,4081628472),new d(1508970993,3053834265),new d(2453635748,2937671579),new d(2870763221,3664609560),new d(3624381080,2734883394),new d(310598401,1164996542),new d(607225278,1323610764),new d(1426881987,3590304994),new d(1925078388,4068182383),new d(2162078206,991336113),new d(2614888103,633803317),new d(3248222580,3479774868),new d(3835390401,2666613458),new d(4022224774,944711139),new d(264347078,2341262773),new d(604807628,2007800933),new d(770255983,1495990901),new d(1249150122,1856431235),new d(1555081692,3175218132),new d(1996064986,2198950837),new d(2554220882,3999719339),new d(2821834349,766784016),new d(2952996808,2566594879),new d(3210313671,3203337956),new d(3336571891,1034457026),new d(3584528711,2466948901),new d(113926993,3758326383),new d(338241895,168717936),new d(666307205,1188179964),new d(773529912,1546045734),new d(1294757372,1522805485),new d(1396182291,2643833823),new d(1695183700,2343527390),new d(1986661051,1014477480),new d(2177026350,1206759142),new d(2456956037,344077627),new d(2730485921,1290863460),new d(2820302411,3158454273),new d(3259730800,3505952657),new d(3345764771,106217008),new d(3516065817,3606008344),new d(3600352804,1432725776),new d(4094571909,1467031594),new d(275423344,851169720),new d(430227734,3100823752),new d(506948616,1363258195),new d(659060556,3750685593),new d(883997877,3785050280),new d(958139571,3318307427),new d(1322822218,3812723403),new d(1537002063,2003034995),new d(1747873779,3602036899),new d(1955562222,1575990012),new d(2024104815,1125592928),new d(2227730452,2716904306),new d(2361852424,442776044),new d(2428436474,593698344),new d(2756734187,3733110249),new d(3204031479,2999351573),new d(3329325298,3815920427),new d(3391569614,3928383900),new d(3515267271,566280711),new d(3940187606,3454069534),new d(4118630271,4000239992),new d(116418474,1914138554),new d(174292421,2731055270),new d(289380356,3203993006),new d(460393269,320620315),new d(685471733,587496836),new d(852142971,1086792851),new d(1017036298,365543100),new d(1126000580,2618297676),new d(1288033470,3409855158),new d(1501505948,4234509866),new d(1607167915,987167468),new d(1816402316,1246189591)],kt=[];for(let n=0;n<80;n+=1)kt[n]=new d;class Ct extends P{constructor(){super(),this.blockSize=1024/32}_doReset(){this._hash=new K0([new d(1779033703,4089235720),new d(3144134277,2227873595),new d(1013904242,4271175723),new d(2773480762,1595750129),new d(1359893119,2917565137),new d(2600822924,725511199),new d(528734635,4215389547),new d(1541459225,327033209)])}_doProcessBlock(t,e){const r=this._hash.words,s=r[0],i=r[1],o=r[2],c=r[3],a=r[4],u=r[5],h=r[6],l=r[7],y=s.high;let v=s.low;const m=i.high;let g=i.low;const S=o.high;let _=o.low;const B=c.high;let E=c.low;const I=a.high;let f=a.low;const x=u.high;let p=u.low;const b=h.high;let at=h.low;const Pt=l.high;let nt=l.low,U=y,F=v,Rt=m,wt=g,Ht=S,gt=_,m0=B,Mt=E,K=I,z=f,n0=x,Dt=p,r0=b,Ot=at,v0=Pt,Lt=nt;for(let N=0;N<80;N+=1){let G,ut;const mt=kt[N];if(N<16)mt.high=t[e+N*2]|0,ut=mt.high,mt.low=t[e+N*2+1]|0,G=mt.low;else{const ae=kt[N-15],vt=ae.high,Ft=ae.low,Wn=(vt>>>1|Ft<<31)^(vt>>>8|Ft<<24)^vt>>>7,ue=(Ft>>>1|vt<<31)^(Ft>>>8|vt<<24)^(Ft>>>7|vt<<25),fe=kt[N-2],St=fe.high,zt=fe.low,$n=(St>>>19|zt<<13)^(St<<3|zt>>>29)^St>>>6,le=(zt>>>19|St<<13)^(zt<<3|St>>>29)^(zt>>>6|St<<26),he=kt[N-7],jn=he.high,Un=he.low,xe=kt[N-16],Kn=xe.high,de=xe.low;G=ue+Un,ut=Wn+jn+(G>>>0>>0?1:0),G+=le,ut=ut+$n+(G>>>0>>0?1:0),G+=de,ut=ut+Kn+(G>>>0>>0?1:0),mt.high=ut,mt.low=G}const Rn=K&n0^~K&r0,re=z&Dt^~z&Ot,Hn=U&Rt^U&Ht^Rt&Ht,Mn=F&wt^F>^wt>,Dn=(U>>>28|F<<4)^(U<<30|F>>>2)^(U<<25|F>>>7),se=(F>>>28|U<<4)^(F<<30|U>>>2)^(F<<25|U>>>7),On=(K>>>14|z<<18)^(K>>>18|z<<14)^(K<<23|z>>>9),Ln=(z>>>14|K<<18)^(z>>>18|K<<14)^(z<<23|K>>>9),ie=Lr[N],Fn=ie.high,oe=ie.low;let X=Lt+Ln,ft=v0+On+(X>>>0>>0?1:0);X+=re,ft=ft+Rn+(X>>>0>>0?1:0),X+=oe,ft=ft+Fn+(X>>>0>>0?1:0),X+=G,ft=ft+ut+(X>>>0>>0?1:0);const ce=se+Mn,zn=Dn+Hn+(ce>>>0>>0?1:0);v0=r0,Lt=Ot,r0=n0,Ot=Dt,n0=K,Dt=z,z=Mt+X|0,K=m0+ft+(z>>>0>>0?1:0)|0,m0=Ht,Mt=gt,Ht=Rt,gt=wt,Rt=U,wt=F,F=X+ce|0,U=ft+zn+(F>>>0>>0?1:0)|0}s.low=v+F,v=s.low,s.high=y+U+(v>>>0>>0?1:0),i.low=g+wt,g=i.low,i.high=m+Rt+(g>>>0>>0?1:0),o.low=_+gt,_=o.low,o.high=S+Ht+(_>>>0>>0?1:0),c.low=E+Mt,E=c.low,c.high=B+m0+(E>>>0>>0?1:0),a.low=f+z,f=a.low,a.high=I+K+(f>>>0>>0?1:0),u.low=p+Dt,p=u.low,u.high=x+n0+(p>>>0
>>0?1:0),h.low=at+Ot,at=h.low,h.high=b+r0+(at>>>0>>0?1:0),l.low=nt+Lt,nt=l.low,l.high=Pt+v0+(nt>>>0>>0?1:0)}_doFinalize(){const t=this._data,e=t.words,r=this._nDataBytes*8,s=t.sigBytes*8;return e[s>>>5]|=128<<24-s%32,e[(s+128>>>10<<5)+30]=Math.floor(r/4294967296),e[(s+128>>>10<<5)+31]=r,t.sigBytes=e.length*4,this._process(),this._hash.toX32()}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Fr=P._createHelper(Ct),zr=P._createHmacHelper(Ct);class Y0 extends Ct{_doReset(){this._hash=new K0([new d(3418070365,3238371032),new d(1654270250,914150663),new d(2438529370,812702999),new d(355462360,4144912697),new d(1731405415,4290775857),new d(2394180231,1750603025),new d(3675008525,1694076839),new d(1203062813,3204075428)])}_doFinalize(){const t=super._doFinalize.call(this);return t.sigBytes-=16,t}}const Wr=Ct._createHelper(Y0),$r=Ct._createHmacHelper(Y0),Je=[],Ze=[],tn=[];let S0=1,i0=0;for(let n=0;n<24;n+=1){Je[S0+5*i0]=(n+1)*(n+2)/2%64;const t=i0%5,e=(2*S0+3*i0)%5;S0=t,i0=e}for(let n=0;n<5;n+=1)for(let t=0;t<5;t+=1)Ze[n+5*t]=t+(2*n+3*t)%5*5;let $t=1;for(let n=0;n<24;n+=1){let t=0,e=0;for(let r=0;r<7;r+=1){if($t&1){const s=(1<>>24)&16711935|(o<<24|o>>>8)&4278255360,c=(c<<8|c>>>24)&16711935|(c<<24|c>>>8)&4278255360;const a=r[i];a.high^=c,a.low^=o}for(let i=0;i<24;i+=1){for(let h=0;h<5;h+=1){let l=0,y=0;for(let m=0;m<5;m+=1){const g=r[h+5*m];l^=g.high,y^=g.low}const v=ot[h];v.high=l,v.low=y}for(let h=0;h<5;h+=1){const l=ot[(h+4)%5],y=ot[(h+1)%5],v=y.high,m=y.low,g=l.high^(v<<1|m>>>31),S=l.low^(m<<1|v>>>31);for(let _=0;_<5;_+=1){const B=r[h+5*_];B.high^=g,B.low^=S}}for(let h=1;h<25;h+=1){let l,y;const v=r[h],m=v.high,g=v.low,S=Je[h];S<32?(l=m<>>32-S,y=g<>>32-S):(l=g<>>64-S,y=m<>>64-S);const _=ot[Ze[h]];_.high=l,_.low=y}const o=ot[0],c=r[0];o.high=c.high,o.low=c.low;for(let h=0;h<5;h+=1)for(let l=0;l<5;l+=1){const y=h+5*l,v=r[y],m=ot[y],g=ot[(h+1)%5+5*l],S=ot[(h+2)%5+5*l];v.high=m.high^~g.high&S.high,v.low=m.low^~g.low&S.low}const a=r[0],u=tn[i];a.high^=u.high,a.low^=u.low}}_doFinalize(){const t=this._data,e=t.words,r=t.sigBytes*8,s=this.blockSize*32;e[r>>>5]|=1<<24-r%32,e[(Math.ceil((r+1)/s)*s>>>5)-1]|=128,t.sigBytes=e.length*4,this._process();const i=this._state,o=this.cfg.outputLength/8,c=o/8,a=[];for(let u=0;u>>24)&16711935|(l<<24|l>>>8)&4278255360,y=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,a.push(y),a.push(l)}return new A(a,o)}clone(){const t=super.clone.call(this);t._state=this._state.slice(0);const e=t._state;for(let r=0;r<25;r+=1)e[r]=e[r].clone();return t}}const jr=P._createHelper(G0),Ur=P._createHmacHelper(G0);/** @preserve -(c) 2012 by Cédric Mesnil. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted -provided that the following conditions are met: - - - Redistributions of source code must retain the above copyright notice, this list of - conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, this list - of conditions and the following disclaimer in the documentation and/or other materials - provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS -OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR -CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY -WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/const Kr=A.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),Nr=A.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),Vr=A.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),qr=A.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),Yr=A.create([0,1518500249,1859775393,2400959708,2840853838]),Gr=A.create([1352829926,1548603684,1836072691,2053994217,0]),_e=(n,t,e)=>n^t^e,we=(n,t,e)=>n&t|~n&e,ge=(n,t,e)=>(n|~t)^e,me=(n,t,e)=>n&e|t&~e,ve=(n,t,e)=>n^(t|~e),o0=(n,t)=>n<>>32-t;class X0 extends P{_doReset(){this._hash=A.create([1732584193,4023233417,2562383102,271733878,3285377520])}_doProcessBlock(t,e){const r=t;for(let x=0;x<16;x+=1){const p=e+x,b=r[p];r[p]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360}const s=this._hash.words,i=Yr.words,o=Gr.words,c=Kr.words,a=Nr.words,u=Vr.words,h=qr.words;let l=s[0],y=s[1],v=s[2],m=s[3],g=s[4],S=s[0],_=s[1],B=s[2],E=s[3],I=s[4],f;for(let x=0;x<80;x+=1)f=l+r[e+c[x]]|0,x<16?f+=_e(y,v,m)+i[0]:x<32?f+=we(y,v,m)+i[1]:x<48?f+=ge(y,v,m)+i[2]:x<64?f+=me(y,v,m)+i[3]:f+=ve(y,v,m)+i[4],f|=0,f=o0(f,u[x]),f=f+g|0,l=g,g=m,m=o0(v,10),v=y,y=f,f=S+r[e+a[x]]|0,x<16?f+=ve(_,B,E)+o[0]:x<32?f+=me(_,B,E)+o[1]:x<48?f+=ge(_,B,E)+o[2]:x<64?f+=we(_,B,E)+o[3]:f+=_e(_,B,E)+o[4],f|=0,f=o0(f,h[x]),f=f+I|0,S=I,I=E,E=o0(B,10),B=_,_=f;f=s[1]+v+E|0,s[1]=s[2]+m+I|0,s[2]=s[3]+g+S|0,s[3]=s[4]+l+_|0,s[4]=s[0]+y+B|0,s[0]=f}_doFinalize(){const t=this._data,e=t.words,r=this._nDataBytes*8,s=t.sigBytes*8;e[s>>>5]|=128<<24-s%32,e[(s+64>>>9<<4)+14]=(r<<8|r>>>24)&16711935|(r<<24|r>>>8)&4278255360,t.sigBytes=(e.length+1)*4,this._process();const i=this._hash,o=i.words;for(let c=0;c<5;c+=1){const a=o[c];o[c]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360}return i}clone(){const t=super.clone.call(this);return t._hash=this._hash.clone(),t}}const Xr=P._createHelper(X0),Qr=P._createHmacHelper(X0);class en extends C{constructor(t){super(),this.cfg=Object.assign(new C,{keySize:128/32,hasher:y0,iterations:1},t)}compute(t,e){const{cfg:r}=this,s=U0.create(r.hasher,t),i=A.create(),o=A.create([1]),c=i.words,a=o.words,{keySize:u,iterations:h}=r;for(;c.lengthen.create(e).compute(n,t),L=[],nn=[],rn=[],sn=[],on=[],cn=[],B0=[],I0=[],C0=[],P0=[],q=[];for(let n=0;n<256;n+=1)n<128?q[n]=n<<1:q[n]=n<<1^283;let V=0,rt=0;for(let n=0;n<256;n+=1){let t=rt^rt<<1^rt<<2^rt<<3^rt<<4;t=t>>>8^t&255^99,L[V]=t,nn[t]=V;const e=q[V],r=q[e],s=q[r];let i=q[t]*257^t*16843008;rn[V]=i<<24|i>>>8,sn[V]=i<<16|i>>>16,on[V]=i<<8|i>>>24,cn[V]=i,i=s*16843009^r*65537^e*257^V*16843008,B0[t]=i<<24|i>>>8,I0[t]=i<<16|i>>>16,C0[t]=i<<8|i>>>24,P0[t]=i,V?(V=e^q[q[q[s^e]]],rt^=q[q[rt]]):(rt=1,V=rt)}const Zr=[0,1,2,4,8,16,32,64,128,27,54];class Q0 extends _t{_doReset(){let t;if(this._nRounds&&this._keyPriorReset===this._key)return;this._keyPriorReset=this._key;const e=this._keyPriorReset,r=e.words,s=e.sigBytes/4;this._nRounds=s+6;const o=(this._nRounds+1)*4;this._keySchedule=[];const c=this._keySchedule;for(let u=0;u6&&u%s===4&&(t=L[t>>>24]<<24|L[t>>>16&255]<<16|L[t>>>8&255]<<8|L[t&255]):(t=t<<8|t>>>24,t=L[t>>>24]<<24|L[t>>>16&255]<<16|L[t>>>8&255]<<8|L[t&255],t^=Zr[u/s|0]<<24),c[u]=c[u-s]^t);this._invKeySchedule=[];const a=this._invKeySchedule;for(let u=0;u>>24]]^I0[L[t>>>16&255]]^C0[L[t>>>8&255]]^P0[L[t&255]]}}encryptBlock(t,e){this._doCryptBlock(t,e,this._keySchedule,rn,sn,on,cn,L)}decryptBlock(t,e){const r=t;let s=r[e+1];r[e+1]=r[e+3],r[e+3]=s,this._doCryptBlock(r,e,this._invKeySchedule,B0,I0,C0,P0,nn),s=r[e+1],r[e+1]=r[e+3],r[e+3]=s}_doCryptBlock(t,e,r,s,i,o,c,a){const u=t,h=this._nRounds;let l=u[e]^r[0],y=u[e+1]^r[1],v=u[e+2]^r[2],m=u[e+3]^r[3],g=4;for(let I=1;I>>24]^i[y>>>16&255]^o[v>>>8&255]^c[m&255]^r[g];g+=1;const x=s[y>>>24]^i[v>>>16&255]^o[m>>>8&255]^c[l&255]^r[g];g+=1;const p=s[v>>>24]^i[m>>>16&255]^o[l>>>8&255]^c[y&255]^r[g];g+=1;const b=s[m>>>24]^i[l>>>16&255]^o[y>>>8&255]^c[v&255]^r[g];g+=1,l=f,y=x,v=p,m=b}const S=(a[l>>>24]<<24|a[y>>>16&255]<<16|a[v>>>8&255]<<8|a[m&255])^r[g];g+=1;const _=(a[y>>>24]<<24|a[v>>>16&255]<<16|a[m>>>8&255]<<8|a[l&255])^r[g];g+=1;const B=(a[v>>>24]<<24|a[m>>>16&255]<<16|a[l>>>8&255]<<8|a[y&255])^r[g];g+=1;const E=(a[m>>>24]<<24|a[l>>>16&255]<<16|a[y>>>8&255]<<8|a[v&255])^r[g];g+=1,u[e]=S,u[e+1]=_,u[e+2]=B,u[e+3]=E}}Q0.keySize=256/32;const ts=_t._createHelper(Q0),es=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],Se=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],ns=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],rs=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],ss=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];function Et(n,t){const e=(this._lBlock>>>n^this._rBlock)&t;this._rBlock^=e,this._lBlock^=e<>>n^this._lBlock)&t;this._lBlock^=e,this._rBlock^=e<>>5]>>>31-c%32&1}this._subKeys=[];const s=this._subKeys;for(let o=0;o<16;o+=1){s[o]=[];const c=s[o],a=ns[o];for(let u=0;u<24;u+=1)c[u/6|0]|=r[(Se[u]-1+a)%28]<<31-u%6,c[4+(u/6|0)]|=r[28+(Se[u+24]-1+a)%28]<<31-u%6;c[0]=c[0]<<1|c[0]>>>31;for(let u=1;u<7;u+=1)c[u]>>>=(u-1)*4+3;c[7]=c[7]<<5|c[7]>>>27}this._invSubKeys=[];const i=this._invSubKeys;for(let o=0;o<16;o+=1)i[o]=s[15-o]}encryptBlock(t,e){this._doCryptBlock(t,e,this._subKeys)}decryptBlock(t,e){this._doCryptBlock(t,e,this._invSubKeys)}_doCryptBlock(t,e,r){const s=t;this._lBlock=t[e],this._rBlock=t[e+1],Et.call(this,4,252645135),Et.call(this,16,65535),c0.call(this,2,858993459),c0.call(this,8,16711935),Et.call(this,1,1431655765);for(let o=0;o<16;o+=1){const c=r[o],a=this._lBlock,u=this._rBlock;let h=0;for(let l=0;l<8;l+=1)h|=rs[l][((u^c[l])&ss[l])>>>0];this._lBlock=u,this._rBlock=a^h}const i=this._lBlock;this._lBlock=this._rBlock,this._rBlock=i,Et.call(this,1,1431655765),c0.call(this,8,16711935),c0.call(this,2,858993459),Et.call(this,16,65535),Et.call(this,4,252645135),s[e]=this._lBlock,s[e+1]=this._rBlock}}lt.keySize=64/32;lt.ivSize=64/32;lt.blockSize=64/32;const is=_t._createHelper(lt);class Zt extends _t{_doReset(){const e=this._key.words;if(e.length!==2&&e.length!==4&&e.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");const r=e.slice(0,2),s=e.length<4?e.slice(0,2):e.slice(2,4),i=e.length<6?e.slice(0,2):e.slice(4,6);this._des1=lt.createEncryptor(A.create(r)),this._des2=lt.createEncryptor(A.create(s)),this._des3=lt.createEncryptor(A.create(i))}encryptBlock(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)}decryptBlock(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)}}Zt.keySize=192/32;Zt.ivSize=64/32;Zt.blockSize=64/32;const os=_t._createHelper(Zt),Q=[],st=[],k=[];function E0(){const n=this._X,t=this._C;for(let e=0;e<8;e+=1)st[e]=t[e];t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0>>0?1:0)|0,this._b=t[7]>>>0>>0?1:0;for(let e=0;e<8;e+=1){const r=n[e]+t[e],s=r&65535,i=r>>>16,o=((s*s>>>17)+s*i>>>15)+i*i,c=((r&4294901760)*r|0)+((r&65535)*r|0);k[e]=o^c}n[0]=k[0]+(k[7]<<16|k[7]>>>16)+(k[6]<<16|k[6]>>>16)|0,n[1]=k[1]+(k[0]<<8|k[0]>>>24)+k[7]|0,n[2]=k[2]+(k[1]<<16|k[1]>>>16)+(k[0]<<16|k[0]>>>16)|0,n[3]=k[3]+(k[2]<<8|k[2]>>>24)+k[1]|0,n[4]=k[4]+(k[3]<<16|k[3]>>>16)+(k[2]<<16|k[2]>>>16)|0,n[5]=k[5]+(k[4]<<8|k[4]>>>24)+k[3]|0,n[6]=k[6]+(k[5]<<16|k[5]>>>16)+(k[4]<<16|k[4]>>>16)|0,n[7]=k[7]+(k[6]<<8|k[6]>>>24)+k[5]|0}class an extends ht{constructor(...t){super(...t),this.blockSize=128/32,this.ivSize=64/32}_doReset(){const t=this._key.words,{iv:e}=this.cfg;for(let i=0;i<4;i+=1)t[i]=(t[i]<<8|t[i]>>>24)&16711935|(t[i]<<24|t[i]>>>8)&4278255360;this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const r=this._X;this._C=[t[2]<<16|t[2]>>>16,t[0]&4294901760|t[1]&65535,t[3]<<16|t[3]>>>16,t[1]&4294901760|t[2]&65535,t[0]<<16|t[0]>>>16,t[2]&4294901760|t[3]&65535,t[1]<<16|t[1]>>>16,t[3]&4294901760|t[0]&65535];const s=this._C;this._b=0;for(let i=0;i<4;i+=1)E0.call(this);for(let i=0;i<8;i+=1)s[i]^=r[i+4&7];if(e){const i=e.words,o=i[0],c=i[1],a=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,u=(c<<8|c>>>24)&16711935|(c<<24|c>>>8)&4278255360,h=a>>>16|u&4294901760,l=u<<16|a&65535;s[0]^=a,s[1]^=h,s[2]^=u,s[3]^=l,s[4]^=a,s[5]^=h,s[6]^=u,s[7]^=l;for(let y=0;y<4;y+=1)E0.call(this)}}_doProcessBlock(t,e){const r=t,s=this._X;E0.call(this),Q[0]=s[0]^s[5]>>>16^s[3]<<16,Q[1]=s[2]^s[7]>>>16^s[5]<<16,Q[2]=s[4]^s[1]>>>16^s[7]<<16,Q[3]=s[6]^s[3]>>>16^s[1]<<16;for(let i=0;i<4;i+=1)Q[i]=(Q[i]<<8|Q[i]>>>24)&16711935|(Q[i]<<24|Q[i]>>>8)&4278255360,r[e+i]^=Q[i]}}const cs=ht._createHelper(an),J=[],it=[],T=[];function k0(){const n=this._X,t=this._C;for(let e=0;e<8;e+=1)it[e]=t[e];t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0>>0?1:0)|0,this._b=t[7]>>>0>>0?1:0;for(let e=0;e<8;e+=1){const r=n[e]+t[e],s=r&65535,i=r>>>16,o=((s*s>>>17)+s*i>>>15)+i*i,c=((r&4294901760)*r|0)+((r&65535)*r|0);T[e]=o^c}n[0]=T[0]+(T[7]<<16|T[7]>>>16)+(T[6]<<16|T[6]>>>16)|0,n[1]=T[1]+(T[0]<<8|T[0]>>>24)+T[7]|0,n[2]=T[2]+(T[1]<<16|T[1]>>>16)+(T[0]<<16|T[0]>>>16)|0,n[3]=T[3]+(T[2]<<8|T[2]>>>24)+T[1]|0,n[4]=T[4]+(T[3]<<16|T[3]>>>16)+(T[2]<<16|T[2]>>>16)|0,n[5]=T[5]+(T[4]<<8|T[4]>>>24)+T[3]|0,n[6]=T[6]+(T[5]<<16|T[5]>>>16)+(T[4]<<16|T[4]>>>16)|0,n[7]=T[7]+(T[6]<<8|T[6]>>>24)+T[5]|0}class un extends ht{constructor(...t){super(...t),this.blockSize=128/32,this.ivSize=64/32}_doReset(){const t=this._key.words,{iv:e}=this.cfg;this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16];const r=this._X;this._C=[t[2]<<16|t[2]>>>16,t[0]&4294901760|t[1]&65535,t[3]<<16|t[3]>>>16,t[1]&4294901760|t[2]&65535,t[0]<<16|t[0]>>>16,t[2]&4294901760|t[3]&65535,t[1]<<16|t[1]>>>16,t[3]&4294901760|t[0]&65535];const s=this._C;this._b=0;for(let i=0;i<4;i+=1)k0.call(this);for(let i=0;i<8;i+=1)s[i]^=r[i+4&7];if(e){const i=e.words,o=i[0],c=i[1],a=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,u=(c<<8|c>>>24)&16711935|(c<<24|c>>>8)&4278255360,h=a>>>16|u&4294901760,l=u<<16|a&65535;s[0]^=a,s[1]^=h,s[2]^=u,s[3]^=l,s[4]^=a,s[5]^=h,s[6]^=u,s[7]^=l;for(let y=0;y<4;y+=1)k0.call(this)}}_doProcessBlock(t,e){const r=t,s=this._X;k0.call(this),J[0]=s[0]^s[5]>>>16^s[3]<<16,J[1]=s[2]^s[7]>>>16^s[5]<<16,J[2]=s[4]^s[1]>>>16^s[7]<<16,J[3]=s[6]^s[3]>>>16^s[1]<<16;for(let i=0;i<4;i+=1)J[i]=(J[i]<<8|J[i]>>>24)&16711935|(J[i]<<24|J[i]>>>8)&4278255360,r[e+i]^=J[i]}}const as=ht._createHelper(un);function fn(){const n=this._S;let t=this._i,e=this._j,r=0;for(let s=0;s<4;s+=1){t=(t+1)%256,e=(e+n[t])%256;const i=n[t];n[t]=n[e],n[e]=i,r|=n[(n[t]+n[e])%256]<<24-s*8}return this._i=t,this._j=e,r}class t0 extends ht{_doReset(){const t=this._key,e=t.words,r=t.sigBytes;this._S=[];const s=this._S;for(let i=0;i<256;i+=1)s[i]=i;for(let i=0,o=0;i<256;i+=1){const c=i%r,a=e[c>>>2]>>>24-c%4*8&255;o=(o+s[i]+a)%256;const u=s[i];s[i]=s[o],s[o]=u}this._j=0,this._i=this._j}_doProcessBlock(t,e){const r=t;r[e]^=fn.call(this)}}t0.keySize=256/32;t0.ivSize=0;const us=ht._createHelper(t0);class ln extends t0{constructor(...t){super(...t),Object.assign(this.cfg,{drop:192})}_doReset(){super._doReset.call(this);for(let t=this.cfg.drop;t>0;t-=1)fn.call(this)}}const fs=ht._createHelper(ln);function hn(n,t,e,r){const s=n;let i;const o=this._iv;o?(i=o.slice(0),this._iv=void 0):i=this._prevBlock,r.encryptBlock(i,0);for(let c=0;c{let t=n;if((n>>24&255)===255){let e=n>>16&255,r=n>>8&255,s=n&255;e===255?(e=0,r===255?(r=0,s===255?s=0:s+=1):r+=1):e+=1,t=0,t+=e<<16,t+=r<<8,t+=s}else t+=1<<24;return t},ls=n=>{const t=n;return t[0]=Ee(t[0]),t[0]===0&&(t[1]=Ee(t[1])),t};/** @preserve - * Counter block mode compatible with Dr Brian Gladman fileenc.c - * derived from CryptoJS.mode.CTR - * Jan Hruby jhruby.web@gmail.com - */class Nt extends yt{}Nt.Encryptor=class extends Nt{processBlock(n,t){const e=n,r=this._cipher,{blockSize:s}=r,i=this._iv;let o=this._counter;i&&(this._counter=i.slice(0),o=this._counter,this._iv=void 0),ls(o);const c=o.slice(0);r.encryptBlock(c,0);for(let a=0;a>>2]|=i<<24-o%4*8,e.sigBytes+=i},unpad(n){const t=n,e=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=e}},xs={pad(n,t){const e=t*4,r=e-n.sigBytes%e;n.concat(A.random(r-1)).concat(A.create([r<<24],1))},unpad(n){const t=n,e=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=e}},R0={pad(n,t){const e=n,r=t*4;e.clamp(),e.sigBytes+=r-(n.sigBytes%r||r)},unpad(n){const t=n,e=t.words;for(let r=t.sigBytes-1;r>=0;r-=1)if(e[r>>>2]>>>24-r%4*8&255){t.sigBytes=r+1;break}}},ds={pad(n,t){n.concat(A.create([2147483648],1)),R0.pad(n,t)},unpad(n){const t=n;R0.unpad(t),t.sigBytes-=1}},ps={pad(){},unpad(){}},bs={stringify(n){return n.ciphertext.toString(f0)},parse(n){const t=f0.parse(n);return Jt.create({ciphertext:t})}},ys={lib:{Base:C,WordArray:A,BufferedBlockAlgorithm:j0,Hasher:P,Cipher:bt,StreamCipher:ht,BlockCipherMode:yt,BlockCipher:_t,CipherParams:Jt,SerializableCipher:pt,PasswordBasedCipher:V0},x64:{Word:d,WordArray:K0},enc:{Hex:f0,Latin1:T0,Utf8:$0,Utf16:Br,Utf16BE:Ge,Utf16LE:Ir,Base64:A0},algo:{HMAC:U0,MD5:b0,SHA1:y0,SHA224:q0,SHA256:It,SHA384:Y0,SHA512:Ct,SHA3:G0,RIPEMD160:X0,PBKDF2:en,EvpKDF:N0,AES:Q0,DES:lt,TripleDES:Zt,Rabbit:an,RabbitLegacy:un,RC4:t0,RC4Drop:ln},mode:{CBC:Bt,CFB:Ut,CTR:Kt,CTRGladman:Nt,ECB:Vt,OFB:qt},pad:{Pkcs7:Ve,AnsiX923:hs,Iso10126:xs,Iso97971:ds,NoPadding:ps,ZeroPadding:R0},format:{OpenSSL:qe,Hex:bs},kdf:{OpenSSL:Ye},MD5:kr,HmacMD5:Tr,SHA1:Cr,HmacSHA1:Pr,SHA224:Dr,HmacSHA224:Or,SHA256:Hr,HmacSHA256:Mr,SHA384:Wr,HmacSHA384:$r,SHA512:Fr,HmacSHA512:zr,SHA3:jr,HmacSHA3:Ur,RIPEMD160:Xr,HmacRIPEMD160:Qr,PBKDF2:Jr,EvpKDF:Ar,AES:ts,DES:is,TripleDES:os,Rabbit:cs,RabbitLegacy:as,RC4:us,RC4Drop:fs};let xn=(n=21)=>crypto.getRandomValues(new Uint8Array(n)).reduce((t,e)=>(e&=63,e<36?t+=e.toString(36):e<62?t+=(e-26).toString(36).toUpperCase():e>62?t+="-":t+="_",t),"");function l0(n){return typeof n=="function"}var ke=!1,Z={Promise:void 0,set useDeprecatedSynchronousErrorHandling(n){if(n){var t=new Error;""+t.stack}ke=n},get useDeprecatedSynchronousErrorHandling(){return ke}};function Tt(n){setTimeout(function(){throw n},0)}var h0={closed:!0,next:function(n){},error:function(n){if(Z.useDeprecatedSynchronousErrorHandling)throw n;Tt(n)},complete:function(){}},J0=function(){return Array.isArray||function(n){return n&&typeof n.length=="number"}}();function dn(n){return n!==null&&typeof n=="object"}var _s=function(){function n(t){return Error.call(this),this.message=t?t.length+` errors occurred during unsubscription: -`+t.map(function(e,r){return r+1+") "+e.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=t,this}return n.prototype=Object.create(Error.prototype),n}(),a0=_s,et=function(){function n(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}return n.prototype.unsubscribe=function(){var t;if(!this.closed){var e=this,r=e._parentOrParents,s=e._ctorUnsubscribe,i=e._unsubscribe,o=e._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,r instanceof n)r.remove(this);else if(r!==null)for(var c=0;c0?this._next(e.shift()):this.active===0&&this.hasCompleted&&this.destination.complete()},t}(Ns);function Gs(n){return n===void 0&&(n=Number.POSITIVE_INFINITY),vn(pn,n)}function Sn(n,t,e,r){return l0(e)&&(r=e,e=void 0),r?Sn(n,t,e).pipe(_n(function(s){return J0(s)?r.apply(void 0,s):r(s)})):new W(function(s){function i(o){arguments.length>1?s.next(Array.prototype.slice.call(arguments)):s.next(o)}En(n,t,i,s,e)})}function En(n,t,e,r,s){var i;if(Js(n)){var o=n;n.addEventListener(t,e,s),i=function(){return o.removeEventListener(t,e,s)}}else if(Qs(n)){var c=n;n.on(t,e),i=function(){return c.off(t,e)}}else if(Xs(n)){var a=n;n.addListener(t,e),i=function(){return a.removeListener(t,e)}}else if(n&&n.length)for(var u=0,h=n.length;u=0}function Zs(){for(var n=[],t=0;t1&&typeof n[n.length-1]=="number"&&(e=n.pop())):typeof s=="number"&&(e=n.pop()),r===null&&n.length===1&&n[0]instanceof W?n[0]:Gs(e)(Bs(n,r))}function ti(n,t,e){n===void 0&&(n=0);var r=-1;return Pe(t)?r=Number(t)<1&&1||Number(t):H0(t)&&(e=t),H0(e)||(e=Cs),new W(function(s){var i=Pe(n)?n:+n-e.now();return e.schedule(ei,i,{index:0,period:r,subscriber:s})})}function ei(n){var t=n.index,e=n.period,r=n.subscriber;if(r.next(t),!r.closed){if(e===-1)return r.complete();n.index=t+1,this.schedule(n,e)}}const kn={ethereum:{1:"main",5:"goerli",100:"xdai",137:"matic-main",80001:"matic-mumbai"}},ni=[2,3,4,42,56,250],Tn={points:150,duration:1},Re=1e4;function O(n){const{name:t,value:e,type:r,optional:s,customValidation:i}=n;if(!s&&typeof e>"u")throw new Error(`"${t}" is required`);if(typeof e<"u"&&(r==="array"?Array.isArray(r):typeof e!==r))throw new Error(`"${t}" must be of type: ${r}, received type: ${typeof e} from value: ${e}`);if(typeof e<"u"&&i&&!i(e))throw new Error(`"${e}" is not a valid "${t}"`)}function ri(n){O({name:"sdk options",value:n,type:"object"});const{dappId:t,system:e,name:r,appVersion:s,networkId:i,transactionHandlers:o,apiUrl:c,ws:a,onopen:u,ondown:h,onreopen:l,onerror:y,onclose:v,...m}=n;ii(m,["dappId","system","name","appVersion","networkId","transactionHandlers","apiUrl","ws","onopen","ondown","onreopen","onerror","onclose"],"Initialization Options"),O({name:"dappId",value:t,type:"string",optional:!0}),O({name:"system",value:e,type:"string",optional:!0,customValidation:si}),O({name:"name",value:r,type:"string",optional:!0}),O({name:"appVersion",value:s,type:"string",optional:!0}),O({name:"networkId",value:i,type:"number"}),ni.includes(i)&&console.error(`Blocknative SDK: Network with ID: ${i} has been deprecated and you will no longer receive transaction events on this network.`),O({name:"transactionHandler",value:o,type:"array",optional:!0}),o&&o.forEach(g=>O({name:"transactionHandler",value:g,type:"function"})),O({name:"apiUrl",value:c,type:"string",optional:!0}),O({name:"ws",value:a,type:"function",optional:!0}),O({name:"onopen",value:u,type:"function",optional:!0}),O({name:"ondown",value:h,type:"function",optional:!0}),O({name:"onreopen",value:l,type:"function",optional:!0}),O({name:"onerror",value:y,type:"function",optional:!0}),O({name:"onclose",value:v,type:"function",optional:!0})}function si(n){return!!kn[n]}function ii(n,t,e){const r=Object.keys(n);if(r.length>0)throw new Error(`${r[0]} is not a valid parameter for ${e}, must be one of the following valid parameters: ${t.join(", ")}`)}function Z0(){return{listeners:{},on:function(n,t){switch(n){case"txSent":case"txPool":case"txConfirmed":case"txSpeedUp":case"txCancel":case"txFailed":case"txDropped":case"txRequest":case"nsfFail":case"txRepeat":case"txAwaitingApproval":case"txConfirmReminder":case"txSendFail":case"txError":case"txUnderPriced":case"txPoolSimulation":case"all":break;default:throw new Error(`${n} is not a valid event code, for a list of valid event codes see: https://docs.blocknative.com/notify-sdk#event-codes`)}if(typeof t!="function")throw new Error("Listener must be a function");this.listeners[n]=t},off:function(n){delete this.listeners[n]},emit:function(n){if(this.listeners[n.eventCode])return this.listeners[n.eventCode](n);if(this.listeners.all)return this.listeners.all(n)}}}function An(n,t){return kn[n][t]}function oi(n){switch(n){case"txRequest":case"nsfFail":case"txRepeat":case"txAwaitingApproval":case"txConfirmReminder":case"txSendFail":case"txError":case"txUnderPriced":case"txSent":return!0;default:return!1}}function ci(n){return n.reverse()[0]}function ai(n,t){switch(n){case"ethereum":return t.length===42;case"bitcoin":return t.length!==64;default:return!1}}function ui(n,t){switch(n){case"ethereum":return t.length===66;case"bitcoin":return t.length===64;default:return!1}}function M0(n){return new Promise(t=>{setTimeout(t,n)})}const fi=(n,t)=>t===void 0?"undefined":t;function Bn(){if(typeof window<"u"&&"localStorage"in window){const t="__testLocalStorage";try{return window.localStorage.setItem(t,"1"),window.localStorage.removeItem(t),!0}catch{return!1}}return!1}function li(n,t){if(this._destroyed)throw new Error("The WebSocket instance has been destroyed, re-initialize to continue making requests.");const e=Date.now(),r=Z0(),s="txSent";this.watchedTransactions.push({hash:n,emitter:r});const o={...this._system==="ethereum"?{hash:n}:{txid:n},id:t||n,startTime:e,status:"sent"},c={...o,eventCode:s};this._sendMessage({eventCode:s,categoryCode:"activeTransaction",transaction:o});const a={details:c,emitter:r};function u(){const h=r.emit(c);this._transactionHandlers.forEach(l=>l({transaction:c,emitterResult:h}))}return setTimeout(u.bind(this),5),a}function hi(n){if(this._destroyed)throw new Error("The WebSocket instance has been destroyed, re-initialize to continue making requests.");n=this._system==="ethereum"?n.toLowerCase():n;const t=Z0(),e="watch",r=this.watchedAccounts.find(s=>s.address===n);return r?r.emitters.push(t):this.watchedAccounts.push({address:n,emitters:[t]}),this._sendMessage({eventCode:e,categoryCode:"accountAddress",account:{address:n}}),{emitter:t,details:{address:n}}}function xi(n){if(this._destroyed)throw new Error("The WebSocket instance has been destroyed, re-initialize to continue making requests.");this._sendMessage(n)}/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at http://www.apache.org/licenses/LICENSE-2.0 - -THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED -WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, -MERCHANTABLITY OR NON-INFRINGEMENT. - -See the Apache Version 2.0 License for specific language governing permissions -and limitations under the License. -***************************************************************************** */var D0=function(n,t){return D0=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var s in r)r.hasOwnProperty(s)&&(e[s]=r[s])},D0(n,t)};function j(n,t){D0(n,t);function e(){this.constructor=n}n.prototype=t===null?Object.create(t):(e.prototype=t.prototype,new e)}function O0(n){return typeof n=="function"}var He=!1,tt={Promise:void 0,set useDeprecatedSynchronousErrorHandling(n){if(n){var t=new Error;""+t.stack}He=n},get useDeprecatedSynchronousErrorHandling(){return He}};function At(n){setTimeout(function(){throw n},0)}var d0={closed:!0,next:function(n){},error:function(n){if(tt.useDeprecatedSynchronousErrorHandling)throw n;At(n)},complete:function(){}},di=function(){return Array.isArray||function(n){return n&&typeof n.length=="number"}}();function In(n){return n!==null&&typeof n=="object"}var pi=function(){function n(t){return Error.call(this),this.message=t?t.length+` errors occurred during unsubscription: -`+t.map(function(e,r){return r+1+") "+e.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=t,this}return n.prototype=Object.create(Error.prototype),n}(),u0=pi,te=function(){function n(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}return n.prototype.unsubscribe=function(){var t;if(!this.closed){var e=this,r=e._parentOrParents,s=e._ctorUnsubscribe,i=e._unsubscribe,o=e._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,r instanceof n)r.remove(this);else if(r!==null)for(var c=0;c{p0.pipe(w0(({eventId:o})=>o===r),g0(1)).subscribe({next:({transaction:o})=>s(o),error:({error:o})=>i(o.message)})})}function io(n){if(this._destroyed)throw new Error("The WebSocket instance has been destroyed, re-initialize to continue making requests.");const t=xn();return this._sendMessage({categoryCode:"simulate",eventCode:"txSimulation",eventId:t,transaction:n}),new Promise((e,r)=>{p0.pipe(w0(({eventId:s})=>s===t),g0(1)).subscribe({next:({transaction:s})=>e(s),error:({error:s})=>r(s.message)})})}function oo(n){if(this._destroyed)throw new Error("The WebSocket instance has been destroyed, re-initialize to continue making requests.");const t=ai(this._system,n),e=ui(this._system,n);if(t){const r=this._system==="ethereum"?n.toLowerCase():n;this.watchedAccounts=this.watchedAccounts.filter(s=>s.address!==r),this.configurations.delete(r),this._sendMessage({categoryCode:"accountAddress",eventCode:"unwatch",account:{address:r}})}else if(e){this.watchedTransactions=this.watchedTransactions.filter(i=>i.hash!==n);const s={...this._system==="ethereum"?{hash:n}:{txid:n},id:n,status:"unsubscribed"};this._sendMessage({categoryCode:"activeTransaction",eventCode:"unwatch",transaction:s})}else throw new Error(`Error trying to unsubscribe ${n}: not a valid address or transaction id/hash`)}function co(n){if(this._destroyed)throw new Error("The WebSocket instance has been destroyed, re-initialize to continue making requests.");const t=this._system==="ethereum"?n.scope.toLowerCase():n.scope,e=this.configurations.get(t);e&&e.subscription&&e.subscription.next();const r=new Yt,s=n.watchAddress?{emitter:Z0()}:{};return this.configurations.set(t,{...n,...s,subscription:r}),this._sendMessage({categoryCode:"configs",eventCode:"put",config:n}),new Promise((i,o)=>{r.pipe(g0(1),ro(5e3)).subscribe({next:()=>i({...s,details:{config:n}}),error:c=>{const a=c.message==="Timeout has occurred"?`Configuration with scope: ${n.scope} has been sent to the Blocknative server, but has not received a reply within 5 seconds.`:c.message;this._onerror?(this._onerror({message:a}),i(`Error: ${a}`)):o(a)}})})}function ao(n){const{id:t,chainId:e,type:r}=n;if(!An("ethereum",parseInt(e,16)))throw new Error(`chainId: ${e} is an unsupported network`);this.connections[e]||(this.connections[e]=new this.Blocknative({system:"ethereum",networkId:parseInt(e,16),dappId:this.apiKey,ws:this.ws,apiUrl:this.apiUrl,transactionHandlers:[({transaction:i})=>{this.onTransaction$.next(i)}],onerror:i=>this.errors$.next(i)}));const s=this.connections[e];if(r==="account"){const{filters:i=[],abi:o}=n;return s.configuration({scope:t,filters:i,...o?{abi:o}:{},watchAddress:!0}),this.transactions$.pipe(w0(({watchedAddress:c})=>c===t),Fe(()=>{this.unsubscribe({id:t,chainId:e})}))}else{const{emitter:i}=s.transaction(t);return Sn(i,"all").pipe(Gi(({status:o})=>o!=="confirmed"&&o!=="failed"&&o!=="dropped",!0),Fe(()=>{this.unsubscribe({id:t,chainId:e})}))}}function uo(n){const{id:t,chainId:e,timeout:r=0}=n,s=ti(r),i=this.transactions$.pipe(w0(({hash:o,watchedAddress:c})=>o===t||c===t));Zs(i,s).pipe(g0(1)).subscribe(o=>{typeof o=="number"?Object.entries(this.connections).filter(([a,u])=>u!==null).forEach(([a,u])=>{e&&a!==e||(u.unsubscribe(t),!u.watchedAccounts.length&&!u.watchedTransactions.length&&!u.configurations.size&&(u.destroy(),this.connections[a]=null))}):this.unsubscribe(n)})}class fo{constructor(t,e){const{ws:r}=t,{apiKey:s}=t,{apiUrl:i}=t;this.apiKey=s,this.apiUrl=i,this.ws=r,this.connections={},this.onTransaction$=new Yt,this.transactions$=this.onTransaction$.asObservable(),this.errors$=new Yt,this.Blocknative=e,this.subscribe=ao.bind(this),this.unsubscribe=uo.bind(this)}}var lo="4.6.7";function ho(n){if(this._queuedMessages.length>Re)throw new Error(`Queue limit of ${Re} messages has been reached.`);this._queuedMessages.push(ne.bind(this)(n)),this._processingQueue||this._processQueue()}async function xo(){for(this._processingQueue=!0,this._connected||await bo.bind(this)();this._queuedMessages.length>0;){await M0(1),this._waitToRetry!==null&&(await this._waitToRetry,this._waitToRetry=null);const n=this._queuedMessages.shift(),t=this._limitRules.duration/this._limitRules.points*1e3;await M0(t),this._socket.send(n)}this._processingQueue=!1,this._limitRules=Tn}function po(n){const{status:t,reason:e,event:r,connectionId:s,serverVersion:i,retryMs:o,limitRules:c,blockedMsg:a,dispatchTimestamp:u}=JSON.parse(n.data);if(s&&(Bn()&&window.localStorage.setItem(this._storageKey,s),this._connectionId=s),t==="error"){if(e.includes("ratelimit")&&!e.match(/IP (PendingSimulation|Notification) ratelimit reached/)){this._waitToRetry=M0(o),this._limitRules=c,a&&this._queuedMessages.unshift(a);return}if(e.includes("upgrade your plan"))if(this._onerror){this._onerror({message:e});return}else throw new Error(e);if(e.includes("not a valid API key"))if(this._onerror){this._onerror({message:e});return}else throw new Error(e);if(e.includes("network not supported"))if(this._onerror){this._onerror({message:e});return}else throw new Error(e);if(e.includes("maximum allowed amount"))if(this._onerror){this._onerror({message:e});return}else throw new Error(e);if(e.includes("invalid txid")){const h=`${r.transaction.txid} is an invalid txid`;if(this._onerror){this._onerror({message:h,transaction:r.transaction.txid});return}else throw new Error(h)}if(e.includes("invalid hash")){const h=`${r.transaction.hash} is an invalid transaction hash`;if(this._onerror){this._onerror({message:h,transaction:r.transaction.hash});return}else throw new Error(h)}if(e.includes("invalid address")){const h=`${r.account.address} is an invalid address`;if(this._onerror){this._onerror({message:h,account:r.account.address});return}else throw new Error(h)}if(e.includes("not a valid Bitcoin"))if(this._onerror){this._onerror({message:e,account:r.account.address});return}else throw new Error(e);if(e.includes("not a valid Ethereum"))if(this._onerror){this._onerror({message:e,account:r.account.address});return}else throw new Error(e);if(r&&r.categoryCode==="simulate"){p0.error({eventId:r.eventId,error:{message:e}});return}if(r&&r.config){const h=this.configurations.get(r.config.scope);h&&h.subscription&&h.subscription.error({message:e});return}if(this._onerror){this._onerror({message:e});return}else throw new Error(e)}if(r&&r.config){const h=this._system==="ethereum"?r.config.scope.toLowerCase():r.config.scope,l=this.configurations.get(h);l&&l.subscription&&l.subscription.next()}if(r&&r.transaction){const{eventId:h,transaction:l,eventCode:y,contractCall:v,timeStamp:m,blockchain:{system:g,network:S}}=r,_=this._system==="ethereum"?{...l,serverVersion:i,eventCode:y,timeStamp:m,dispatchTimestamp:u,system:g,network:S,contractCall:v}:{...l,serverVersion:i,eventCode:y,timeStamp:m,dispatchTimestamp:u,system:g,network:S};if(oi(y)||l.status==="unsubscribed")return;if(_.originalHash&&(_.replaceHash=_.hash,_.hash=_.originalHash,delete _.originalHash),y==="txSpeedUp"&&_.status!=="speedup"&&(_.status="speedup"),y==="txCancel"&&_.status!=="cancel"&&(_.status="cancel"),(y==="txSpeedUp"||y==="txCancel")&&(this.watchedTransactions=this.watchedTransactions.map(E=>(E.hash===_.replaceHash&&(E.hash=l.hash||l.txid),E))),r&&r.categoryCode==="simulate"){_.contractCall=r.transaction.contractCall,delete _.dispatchTimestamp,p0.next({eventId:h,transaction:_});return}const B=l.watchedAddress&&this._system==="ethereum"?l.watchedAddress.toLowerCase():l.watchedAddress;if(B){const E=this.watchedAccounts.find(p=>p.address===B),I=E?ci(E.emitters.map(p=>p.emit(_))):!1,f=this.configurations.get(B),x=f&&f.emitter&&f.emitter.emit(_)||I;this._transactionHandlers.forEach(p=>p({transaction:_,emitterResult:x}))}else{const E=this.watchedTransactions.find(f=>f.hash===_.hash||_.txid),I=E&&E.emitter.emit(_);this._transactionHandlers.forEach(f=>f({transaction:_,emitterResult:I})),(_.status==="speedup"||_.status==="cancel")&&(this.watchedTransactions=this.watchedTransactions.map(f=>f.hash===_.hash||_.txid?{...f,hash:_.replaceHash}:f))}}}function ne(n){return JSON.stringify({timeStamp:new Date().toISOString(),dappId:this._dappId,version:lo,appName:this._appName,appVersion:this._appVersion,blockchain:{system:this._system,network:An(this._system,this._networkId)||"local"},...n},n.categoryCode==="configs"?fi:void 0)}function bo(){return new Promise(n=>{const t=setInterval(()=>{this._connected&&(setTimeout(n,100),clearInterval(t))})})}const yo="unknown",_o="unknown",wo="ethereum";class Eo{constructor(t){ri(t);const{system:e=wo,name:r=yo,appVersion:s=_o,networkId:i,transactionHandlers:o=[],ws:c,onopen:a,ondown:u,onreopen:h,onerror:l,onclose:y}=t,{apiUrl:v}=t,{dappId:m}=t,g={connectTimeout:1e4},S=new gr(v||"wss://api.blocknative.com/v0",c?{wsConstructor:c,...g}:{...g});S.onopen=go.bind(this,a),S.ondown=mo.bind(this,u),S.onreopen=vo.bind(this,h),S.onmessage=po.bind(this),S.onerror=E=>l&&l({message:"There was a WebSocket error",error:E}),S.onclose=()=>{this._pingTimeout&&clearInterval(this._pingTimeout),y&&y()};const _=ys.SHA1(`${m} - ${r}`).toString(),B=Bn()&&window.localStorage.getItem(_);this._storageKey=_,this._connectionId=B||void 0,this._dappId=m,this._system=e,this._networkId=i,this._appName=r,this._appVersion=s,this._transactionHandlers=o,this._socket=S,this._connected=!1,this._sendMessage=ho.bind(this),this._pingTimeout=void 0,this._destroyed=!1,this._onerror=l,this._queuedMessages=[],this._limitRules=Tn,this._waitToRetry=null,this._processingQueue=!1,this._processQueue=xo.bind(this),this._socket.ws.on&&(this._heartbeat=()=>{this._pingTimeout&&clearTimeout(this._pingTimeout),this._pingTimeout=setTimeout(()=>{this._socket.ws.terminate()},3e4+1e3)},this._socket.ws.on("ping",()=>{this._heartbeat&&this._heartbeat()})),this.watchedTransactions=[],this.watchedAccounts=[],this.configurations=new Map,this.transaction=li.bind(this),this.account=hi.bind(this),this.event=xi.bind(this),this.simulate=so.bind(this),this.multiSim=io.bind(this),this.unsubscribe=oo.bind(this),this.configuration=co.bind(this),this.destroy=()=>{this._socket.close(),this._destroyed=!0,this._socket.onclose()}}static multichain(t){return new fo(t,this)}}function go(n){this._connected=!0;const t={categoryCode:"initialize",eventCode:"checkDappId",connectionId:this._connectionId};this._socket.send(ne.bind(this)(t)),this._heartbeat&&this._heartbeat(),n&&n()}function mo(n,t){this._connected=!1,n&&n(t),this._pingTimeout&&clearTimeout(this._pingTimeout)}async function vo(n){this._connected=!0;const t={categoryCode:"initialize",eventCode:"checkDappId",connectionId:this._connectionId};this._socket.send(ne.bind(this)(t));const e=Array.from(this.configurations.values()),r=this.configurations.get("global");if(r)try{const{emitter:i,subscription:o,...c}=r;await this.configuration(c)}catch(i){console.warn("Error re-sending global configuration upon reconnection:",i)}e.filter(({scope:i})=>i!=="global").forEach(i=>{const{emitter:o,subscription:c,...a}=i;this._sendMessage({categoryCode:"configs",eventCode:"put",config:a})}),this.watchedAccounts.forEach(i=>{this._sendMessage({eventCode:"accountAddress",categoryCode:"watch",account:{address:i.address}})}),n&&n(),this._socket.ws&&this._socket.ws.on&&(this._socket.ws.on("ping",()=>{this._heartbeat&&this._heartbeat()}),this._heartbeat())}export{Eo as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js.meta deleted file mode 100644 index c79dcacef..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/index-fff385ce.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 646f320eb21e01246ae9946faf6ebe8c -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js deleted file mode 100644 index cf0de02d9..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js +++ /dev/null @@ -1,13 +0,0 @@ -const o=` - - - - - - - - - - - -`;export{o as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js.meta deleted file mode 100644 index 0b270a923..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/liquality-0e245cbb.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ad389691bb575ff4c921b718cf461bcb -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js deleted file mode 100644 index 7ab78a91e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js +++ /dev/null @@ -1,47 +0,0 @@ -const e=` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js.meta deleted file mode 100644 index e00e8ae7c..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mathwallet-ff05f48e.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 33ae36e6a3825b747bed75f86c4d6670 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js deleted file mode 100644 index 44e881fb2..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js +++ /dev/null @@ -1,10 +0,0 @@ -const A=` - - - - - - - - -`;export{A as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js.meta deleted file mode 100644 index ab60a0c2b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/meetone-d2b0ac23.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: c95b15eb4d552554abdda9027de8c4d7 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/merge-7af99d5f.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/merge-7af99d5f.js deleted file mode 100644 index b8464ed81..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/merge-7af99d5f.js +++ /dev/null @@ -1 +0,0 @@ -import{aP as o,aW as t,aj as m,ab as u,aD as g,ah as l}from"./index-b28afd98.js";function h(){for(var r=[],a=0;a - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`;export{s as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/metamask-1c685b94.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/metamask-1c685b94.js.meta deleted file mode 100644 index f6936ff15..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/metamask-1c685b94.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 6358fb1328ca4a8438f3753b5631b94b -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js deleted file mode 100644 index 9af1a8442..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js +++ /dev/null @@ -1 +0,0 @@ -import{V as S}from"./index-b28afd98.js";var y={},r={};Object.defineProperty(r,"__esModule",{value:!0});r.getLocalStorage=r.getLocalStorageOrThrow=r.getCrypto=r.getCryptoOrThrow=r.getLocation=r.getLocationOrThrow=r.getNavigator=r.getNavigatorOrThrow=r.getDocument=r.getDocumentOrThrow=r.getFromWindowOrThrow=r.getFromWindow=void 0;function w(t){let e;return typeof window<"u"&&typeof window[t]<"u"&&(e=window[t]),e}r.getFromWindow=w;function m(t){const e=w(t);if(!e)throw new Error(`${t} is not defined in Window`);return e}r.getFromWindowOrThrow=m;function G(){return m("document")}r.getDocumentOrThrow=G;function H(){return w("document")}r.getDocument=H;function Q(){return m("navigator")}r.getNavigatorOrThrow=Q;function z(){return w("navigator")}r.getNavigator=z;function Y(){return m("location")}r.getLocationOrThrow=Y;function q(){return w("location")}r.getLocation=q;function Z(){return m("crypto")}r.getCryptoOrThrow=Z;function tt(){return w("crypto")}r.getCrypto=tt;function et(){return m("localStorage")}r.getLocalStorageOrThrow=et;function ot(){return w("localStorage")}r.getLocalStorage=ot;Object.defineProperty(y,"__esModule",{value:!0});var B=y.getWindowMetadata=void 0;const $=r;function rt(){let t,e;try{t=$.getDocumentOrThrow(),e=$.getLocationOrThrow()}catch{return null}function o(){const g=t.getElementsByTagName("link"),d=[];for(let l=0;l-1){const s=p.getAttribute("href");if(s)if(s.toLowerCase().indexOf("https:")===-1&&s.toLowerCase().indexOf("http:")===-1&&s.indexOf("//")!==0){let T=e.protocol+"//"+e.host;if(s.indexOf("/")===0)T+=s;else{const b=e.pathname.split("/");b.pop();const X=b.join("/");T+=X+"/"+s}d.push(T)}else if(s.indexOf("//")===0){const T=e.protocol+s;d.push(T)}else d.push(s)}}return d}function n(...g){const d=t.getElementsByTagName("meta");for(let l=0;lp.getAttribute(s)).filter(s=>s?g.includes(s):!1);if(O.length&&O){const s=p.getAttribute("content");if(s)return s}}return""}function a(){let g=n("name","og:site_name","og:title","twitter:title");return g||(g=t.title),g}function c(){return n("description","og:description","twitter:description","keywords")}const u=a(),f=c(),K=e.origin,U=o();return{description:f,url:K,icons:U,name:u}}B=y.getWindowMetadata=rt;var i={};Object.defineProperty(i,"__esModule",{value:!0});var A=i.getLocalStorage=V=i.getLocalStorageOrThrow=j=i.getCrypto=F=i.getCryptoOrThrow=R=i.getLocation=P=i.getLocationOrThrow=x=i.getNavigator=D=i.getNavigatorOrThrow=I=i.getDocument=k=i.getDocumentOrThrow=M=i.getFromWindowOrThrow=E=i.getFromWindow=void 0;function h(t){let e;return typeof window<"u"&&typeof window[t]<"u"&&(e=window[t]),e}var E=i.getFromWindow=h;function v(t){const e=h(t);if(!e)throw new Error(`${t} is not defined in Window`);return e}var M=i.getFromWindowOrThrow=v;function nt(){return v("document")}var k=i.getDocumentOrThrow=nt;function it(){return h("document")}var I=i.getDocument=it;function at(){return v("navigator")}var D=i.getNavigatorOrThrow=at;function st(){return h("navigator")}var x=i.getNavigator=st;function ct(){return v("location")}var P=i.getLocationOrThrow=ct;function ut(){return h("location")}var R=i.getLocation=ut;function gt(){return v("crypto")}var F=i.getCryptoOrThrow=gt;function ft(){return h("crypto")}var j=i.getCrypto=ft;function dt(){return v("localStorage")}var V=i.getLocalStorageOrThrow=dt;function lt(){return h("localStorage")}A=i.getLocalStorage=lt;var wt=globalThis&&globalThis.__spreadArrays||function(){for(var t=0,e=0,o=arguments.length;e"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new Ot:typeof navigator<"u"?_(navigator.userAgent):$t()}function Wt(t){return t!==""&&yt.reduce(function(e,o){var n=o[0],a=o[1];if(e)return e;var c=a.exec(t);return!!c&&[n,c]},!1)}function _(t){var e=Wt(t);if(!e)return null;var o=e[0],n=e[1];if(o==="searchbot")return new pt;var a=n[1]&&n[1].split(/[._]/).slice(0,3);a?a.length1:!1}function jt(){return L()?Nt()||_t():!1}function Bt(){const t=J();return t&&t.name?t.name.toLowerCase()==="node":!1}function Vt(){return!Bt()&&!!At()}const Jt=E,Kt=M,Ut=k,Xt=I,Gt=D,At=x,Ht=P,Qt=R,zt=F,Yt=j,qt=V,W=A;function Zt(){return B()}function Et(t){if(typeof t!="string")throw new Error(`Cannot safe json parse value of type ${typeof t}`);try{return JSON.parse(t)}catch{return t}}function Mt(t){return typeof t=="string"?t:JSON.stringify(t)}const kt=Et,It=Mt;function Dt(t,e){const o=It(e),n=W();n&&n.setItem(t,o)}function te(t){let e=null,o=null;const n=W();return n&&(o=n.getItem(t)),e=o&&kt(o),e}function ee(t){const e=W();e&&e.removeItem(t)}const xt="WALLETCONNECT_DEEPLINK_CHOICE";function oe(t,e){const o=encodeURIComponent(t);return e.universalLink?`${e.universalLink}/wc?uri=${o}`:e.deepLink?`${e.deepLink}${e.deepLink.endsWith(":")?"//":"/"}wc?uri=${o}`:""}function re(t){const e=t.href.split("?")[0];Dt(xt,Object.assign(Object.assign({},t),{href:e}))}function Pt(t,e){return t.filter(o=>o.name.toLowerCase().includes(e.toLowerCase()))[0]}function ne(t,e){let o=t;return e&&(o=e.map(n=>Pt(t,n)).filter(Boolean)),o}export{Bt as A,kt as B,It as C,re as D,te as a,Zt as b,jt as c,J as d,L as e,oe as f,Qt as g,Yt as h,Vt as i,zt as j,Xt as k,Ut as l,xt as m,Jt as n,Kt as o,W as p,qt as q,ee as r,Dt as s,Ht as t,ne as u,Pt as v,At as w,Gt as x,Nt as y,_t as z}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js.meta deleted file mode 100644 index 985aa4b08..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mobile-122d5339.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 8b127fcd28a5e254fbb3f8d7994e216a -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js deleted file mode 100644 index da6979fde..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js +++ /dev/null @@ -1,10 +0,0 @@ -const A=` - - - - - - - - -`;export{A as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js.meta deleted file mode 100644 index 8d414404f..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/mykey-4e0c6565.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 2f0229121ed94a348a502cb230a8b058 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js deleted file mode 100644 index 4a8d47fa4..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js +++ /dev/null @@ -1,5 +0,0 @@ -const C=` - - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js.meta deleted file mode 100644 index 410cc23a1..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/okxwallet-1c6a2600.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 46b82c1e98ac8aa4a96da6087ff59268 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js deleted file mode 100644 index b651d0670..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js +++ /dev/null @@ -1,69 +0,0 @@ -const c=` - - - -`;export{c as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js.meta deleted file mode 100644 index 92ee9197a..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/oneInch-104b3cc4.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d7ab0eaa9b2cdeb4d8bf091afc9446ff -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js deleted file mode 100644 index 5121b722e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js +++ /dev/null @@ -1,21 +0,0 @@ -const o=` - - - - - - - - - - - - - - - - - - - -`;export{o as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js.meta deleted file mode 100644 index 9a554eb5b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/opera-02e3a0e8.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 8b366cf0f0369894692a66372299ec25 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js deleted file mode 100644 index b307bfa1a..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js +++ /dev/null @@ -1,15 +0,0 @@ -const e=` - -Shape Copy -Created with Sketch. - - - - - - - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js.meta deleted file mode 100644 index e4b9b8c17..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/ownbit-fa6734bd.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 34c3f36a24d1b674b84087eebb0f7731 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js deleted file mode 100644 index 606c3eac6..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js +++ /dev/null @@ -1,32 +0,0 @@ -const e=` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js.meta deleted file mode 100644 index 8bdeaba54..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/phantom-9b3bd709.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 184b6394238d74b498819aea5c0a4ca6 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js deleted file mode 100644 index 7cc044408..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js +++ /dev/null @@ -1,24 +0,0 @@ -const e=` - - - - - - - - - - - - - - - - - - - - - - -`;export{e as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js.meta deleted file mode 100644 index c10f7f01d..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rabby-fc161279.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a652ddea2fbd23741bb55ec9823116df -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js deleted file mode 100644 index e733cd032..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js +++ /dev/null @@ -1,66 +0,0 @@ -const a=` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`;export{a as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js.meta deleted file mode 100644 index f79cb4ca8..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/rainbow-1fe0d81a.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 9d18c52c3c03a944a92497331dd86d90 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js deleted file mode 100644 index 7bb6bfce8..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js +++ /dev/null @@ -1,102 +0,0 @@ -const A=` -`;export{A as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js.meta deleted file mode 100644 index 958b5f91b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/safepal-7fa6b910.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d025996c0abd83a49992a22624b04e25 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js deleted file mode 100644 index e447d396e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js +++ /dev/null @@ -1,67 +0,0 @@ -const i=` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -`;export{i as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js.meta deleted file mode 100644 index 9f8292360..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/sequence-c07eb3ae.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: b5763bcffab231a4c9d9a3f6afd52dfd -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/skip-2d52d7ac.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/skip-2d52d7ac.js deleted file mode 100644 index 7b41f88b7..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/skip-2d52d7ac.js +++ /dev/null @@ -1 +0,0 @@ -import{a1 as c,X as A,Y as d,$ as f,aU as g,aX as I,aN as w,ac as b,ai as m}from"./index-b28afd98.js";var _=function(r){c(n,r);function n(t,i){return r.call(this)||this}return n.prototype.schedule=function(t,i){return this},n}(A),l={setInterval:function(r,n){for(var t=[],i=2;i - - - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tallywallet-a671320d.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tallywallet-a671320d.js.meta deleted file mode 100644 index 7192e358b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tallywallet-a671320d.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 330b86d424aa30441b0ebb93049a48ba -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js deleted file mode 100644 index 3d980d04b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js +++ /dev/null @@ -1,15 +0,0 @@ -const t=` - - - - - - - - `;export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js.meta deleted file mode 100644 index bb6a80f16..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenary-f771c254.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: df7544c4deb0e5a48a268f83175f7ae0 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js deleted file mode 100644 index 82dec9506..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js +++ /dev/null @@ -1,25 +0,0 @@ -const t=` - - - - - - - - - - - - - - - - - - - - - - - -`;export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js.meta deleted file mode 100644 index af601266b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tokenpocket-a7e81129.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: f9f2166f86591d645bbab29e7e4059a3 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js deleted file mode 100644 index 381b513c9..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js +++ /dev/null @@ -1,16 +0,0 @@ -import{o as he,aY as jn,n as pe,aZ as yi,V as Z,U as mi,a_ as mt,a$ as nt,b0 as vi,b1 as Wr,b2 as it,b3 as bi,b4 as Xr,b5 as wi}from"./index-b28afd98.js";function _i(e,t){if(e==null)return{};var r={},n=Object.keys(e),i,o;for(o=0;o=0)&&(r[i]=e[i]);return r}function Si(e,t){if(e==null)return{};var r=_i(e,t),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function ve(e){return ve=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ve(e)}function Ei(e,t){if(ve(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(ve(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Un(e){var t=Ei(e,"string");return ve(t)==="symbol"?t:String(t)}function P(e,t,r){return t=Un(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var dt={},Oi={get exports(){return dt},set exports(e){dt=e}};(function(e){(function(t,r){e.exports?e.exports=r():t.log=r()})(he,function(){var t=function(){},r="undefined",n=typeof window!==r&&typeof window.navigator!==r&&/Trident\/|MSIE /.test(window.navigator.userAgent),i=["trace","debug","info","warn","error"];function o(_,T){var A=_[T];if(typeof A.bind=="function")return A.bind(_);try{return Function.prototype.bind.call(A,_)}catch{return function(){return Function.prototype.apply.apply(A,[_,arguments])}}}function a(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function c(_){return _==="debug"&&(_="log"),typeof console===r?!1:_==="trace"&&n?a:console[_]!==void 0?o(console,_):console.log!==void 0?o(console,"log"):t}function d(_,T){for(var A=0;A=0&&L<=E.levels.SILENT){if(U=L,G!==!1&&q(L),d.call(E,L,_),typeof console===r&&L1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const n={mode:"cors",headers:{}};r.useAPIKey&&(n.headers=Zr(Zr({},n.headers),Pi()));const i=jn(n,t,{method:"GET"}),o=await Ai(e,i);if(o.ok)return o.json();throw Ti(o),o};function We(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Qr(e,t){for(var r=0;r=0;--g){var w=this.tryEntries[g],M=w.completion;if(w.tryLoc==="root")return f("end");if(w.tryLoc<=this.prev){var I=o.call(w,"catchLoc"),x=o.call(w,"finallyLoc");if(I&&x){if(this.prev=0;--f){var g=this.tryEntries[f];if(g.tryLoc<=this.prev&&o.call(g,"finallyLoc")&&this.prev=0;--l){var f=this.tryEntries[l];if(f.finallyLoc===v)return this.complete(f.completion,f.afterLoc),H(f),O}},catch:function(v){for(var l=this.tryEntries.length-1;l>=0;--l){var f=this.tryEntries[l];if(f.tryLoc===v){var g=f.completion;if(g.type==="throw"){var w=g.arg;H(f)}return w}}throw new Error("illegal catch attempt")},delegateYield:function(v,l,f){return this.delegate={iterator:se(v),resultName:l,nextLoc:f},this.method==="next"&&(this.arg=void 0),O}},n}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports})(Mi);var ut=Dr(),ee=ut;try{regeneratorRuntime=ut}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=ut:Function("r","regeneratorRuntime = r")(ut)}function Di(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function Li(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function lt(e,t,r){return Li()?lt=Reflect.construct.bind():lt=function(i,o,a){var c=[null];c.push.apply(c,o);var d=Function.bind.apply(i,c),m=new d;return a&&Ze(m,a.prototype),m},lt.apply(null,arguments)}function Nr(e){var t=typeof Map=="function"?new Map:void 0;return Nr=function(n){if(n===null||!Di(n))return n;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(typeof t<"u"){if(t.has(n))return t.get(n);t.set(n,i)}function i(){return lt(n,arguments,re(this).constructor)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),Ze(i,n)},Nr(e)}var tn={},Ni={get exports(){return tn},set exports(e){tn=e}},Hr={},$r={};Object.defineProperty($r,"__esModule",{value:!0});function ki(e){var t=4,r=e.length,n=r%t;if(!n)return e;var i=r,o=t-n,a=r+o,c=pe.Buffer.alloc(a);for(c.write(e);o--;)c.write("=",i++);return c.toString()}$r.default=ki;Object.defineProperty(Hr,"__esModule",{value:!0});var Bi=$r;function Hn(e,t){return t===void 0&&(t="utf8"),pe.Buffer.isBuffer(e)?kr(e.toString("base64")):kr(pe.Buffer.from(e,t).toString("base64"))}function ji(e,t){return t===void 0&&(t="utf8"),pe.Buffer.from(Fr(e),"base64").toString(t)}function Fr(e){return e=e.toString(),Bi.default(e).replace(/\-/g,"+").replace(/_/g,"/")}function kr(e){return e.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Ui(e){return pe.Buffer.from(Fr(e),"base64")}var qe=Hn;qe.encode=Hn;qe.decode=ji;qe.toBase64=Fr;qe.fromBase64=kr;qe.toBuffer=Ui;Hr.default=qe;(function(e){e.exports=Hr.default,e.exports.default=e.exports})(Ni);var $n={};const rn=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];$n.p1600=function(e){for(let t=0;t<24;++t){const r=e[0]^e[10]^e[20]^e[30]^e[40],n=e[1]^e[11]^e[21]^e[31]^e[41],i=e[2]^e[12]^e[22]^e[32]^e[42],o=e[3]^e[13]^e[23]^e[33]^e[43],a=e[4]^e[14]^e[24]^e[34]^e[44],c=e[5]^e[15]^e[25]^e[35]^e[45],d=e[6]^e[16]^e[26]^e[36]^e[46],m=e[7]^e[17]^e[27]^e[37]^e[47],y=e[8]^e[18]^e[28]^e[38]^e[48],p=e[9]^e[19]^e[29]^e[39]^e[49];let h=y^(i<<1|o>>>31),b=p^(o<<1|i>>>31);const O=e[0]^h,_=e[1]^b,T=e[10]^h,A=e[11]^b,E=e[20]^h,U=e[21]^b,k=e[30]^h,q=e[31]^b,j=e[40]^h,V=e[41]^b;h=r^(a<<1|c>>>31),b=n^(c<<1|a>>>31);const X=e[2]^h,L=e[3]^b,G=e[12]^h,H=e[13]^b,ne=e[22]^h,se=e[23]^b,ie=e[32]^h,C=e[33]^b,v=e[42]^h,l=e[43]^b;h=i^(d<<1|m>>>31),b=o^(m<<1|d>>>31);const f=e[4]^h,g=e[5]^b,w=e[14]^h,M=e[15]^b,I=e[24]^h,x=e[25]^b,$=e[34]^h,z=e[35]^b,J=e[44]^h,s=e[45]^b;h=a^(y<<1|p>>>31),b=c^(p<<1|y>>>31);const u=e[6]^h,S=e[7]^b,R=e[16]^h,B=e[17]^b,D=e[26]^h,N=e[27]^b,_e=e[36]^h,Pe=e[37]^b,Ve=e[46]^h,at=e[47]^b;h=d^(r<<1|n>>>31),b=m^(n<<1|r>>>31);const Te=e[8]^h,Ge=e[9]^b,Me=e[18]^h,Ie=e[19]^b,De=e[28]^h,ye=e[29]^b,fe=e[38]^h,me=e[39]^b,zr=e[48]^h,Yr=e[49]^b,Pt=O,Tt=_,Mt=A<<4|T>>>28,It=T<<4|A>>>28,Dt=E<<3|U>>>29,Lt=U<<3|E>>>29,Nt=q<<9|k>>>23,kt=k<<9|q>>>23,Bt=j<<18|V>>>14,jt=V<<18|j>>>14,Ut=X<<1|L>>>31,xt=L<<1|X>>>31,Wt=H<<12|G>>>20,Ht=G<<12|H>>>20,$t=ne<<10|se>>>22,Ft=se<<10|ne>>>22,qt=C<<13|ie>>>19,Kt=ie<<13|C>>>19,Vt=v<<2|l>>>30,Gt=l<<2|v>>>30,zt=g<<30|f>>>2,Yt=f<<30|g>>>2,Xt=w<<6|M>>>26,Jt=M<<6|w>>>26,Zt=x<<11|I>>>21,Qt=I<<11|x>>>21,er=$<<15|z>>>17,tr=z<<15|$>>>17,rr=s<<29|J>>>3,nr=J<<29|s>>>3,ir=u<<28|S>>>4,or=S<<28|u>>>4,ar=B<<23|R>>>9,sr=R<<23|B>>>9,ur=D<<25|N>>>7,lr=N<<25|D>>>7,cr=_e<<21|Pe>>>11,fr=Pe<<21|_e>>>11,dr=at<<24|Ve>>>8,hr=Ve<<24|at>>>8,pr=Te<<27|Ge>>>5,gr=Ge<<27|Te>>>5,yr=Me<<20|Ie>>>12,mr=Ie<<20|Me>>>12,vr=ye<<7|De>>>25,br=De<<7|ye>>>25,wr=fe<<8|me>>>24,_r=me<<8|fe>>>24,Sr=zr<<14|Yr>>>18,Er=Yr<<14|zr>>>18;e[0]=Pt^~Wt&Zt,e[1]=Tt^~Ht&Qt,e[10]=ir^~yr&Dt,e[11]=or^~mr&Lt,e[20]=Ut^~Xt&ur,e[21]=xt^~Jt&lr,e[30]=pr^~Mt&$t,e[31]=gr^~It&Ft,e[40]=zt^~ar&vr,e[41]=Yt^~sr&br,e[2]=Wt^~Zt&cr,e[3]=Ht^~Qt&fr,e[12]=yr^~Dt&qt,e[13]=mr^~Lt&Kt,e[22]=Xt^~ur&wr,e[23]=Jt^~lr&_r,e[32]=Mt^~$t&er,e[33]=It^~Ft&tr,e[42]=ar^~vr&Nt,e[43]=sr^~br&kt,e[4]=Zt^~cr&Sr,e[5]=Qt^~fr&Er,e[14]=Dt^~qt&rr,e[15]=Lt^~Kt&nr,e[24]=ur^~wr&Bt,e[25]=lr^~_r&jt,e[34]=$t^~er&dr,e[35]=Ft^~tr&hr,e[44]=vr^~Nt&Vt,e[45]=br^~kt&Gt,e[6]=cr^~Sr&Pt,e[7]=fr^~Er&Tt,e[16]=qt^~rr&ir,e[17]=Kt^~nr&or,e[26]=wr^~Bt&Ut,e[27]=_r^~jt&xt,e[36]=er^~dr&pr,e[37]=tr^~hr&gr,e[46]=Nt^~Vt&zt,e[47]=kt^~Gt&Yt,e[8]=Sr^~Pt&Wt,e[9]=Er^~Tt&Ht,e[18]=rr^~ir&yr,e[19]=nr^~or&mr,e[28]=Bt^~Ut&Xt,e[29]=jt^~xt&Jt,e[38]=dr^~pr&Mt,e[39]=hr^~gr&It,e[48]=Vt^~zt&ar,e[49]=Gt^~Yt&sr,e[0]^=rn[t*2],e[1]^=rn[t*2+1]}};const ht=$n;function ot(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}ot.prototype.initialize=function(e,t){for(let r=0;r<50;++r)this.state[r]=0;this.blockSize=e/8,this.count=0,this.squeezing=!1};ot.prototype.absorb=function(e){for(let t=0;t>>8*(this.count%4)&255,this.count+=1,this.count===this.blockSize&&(ht.p1600(this.state),this.count=0);return t};ot.prototype.copy=function(e){for(let t=0;t<50;++t)e.state[t]=this.state[t];e.blockSize=this.blockSize,e.count=this.count,e.squeezing=this.squeezing};var xi=function(){return yi(32).toString("hex")},Fn=Qe;Qe.default=Qe;Qe.stable=Vn;Qe.stableStringify=Vn;var pt="[...]",qn="[Circular]",Ae=[],Re=[];function Kn(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function Qe(e,t,r,n){typeof n>"u"&&(n=Kn()),Br(e,"",0,[],void 0,0,n);var i;try{Re.length===0?i=JSON.stringify(e,t,r):i=JSON.stringify(e,Gn(t),r)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Ae.length!==0;){var o=Ae.pop();o.length===4?Object.defineProperty(o[0],o[1],o[3]):o[0][o[1]]=o[2]}}return i}function Ne(e,t,r,n){var i=Object.getOwnPropertyDescriptor(n,r);i.get!==void 0?i.configurable?(Object.defineProperty(n,r,{value:e}),Ae.push([n,r,t,i])):Re.push([t,r,e]):(n[r]=e,Ae.push([n,r,t]))}function Br(e,t,r,n,i,o,a){o+=1;var c;if(typeof e=="object"&&e!==null){for(c=0;ca.depthLimit){Ne(pt,e,t,i);return}if(typeof a.edgesLimit<"u"&&r+1>a.edgesLimit){Ne(pt,e,t,i);return}if(n.push(e),Array.isArray(e))for(c=0;ct?1:0}function Vn(e,t,r,n){typeof n>"u"&&(n=Kn());var i=jr(e,"",0,[],void 0,0,n)||e,o;try{Re.length===0?o=JSON.stringify(i,t,r):o=JSON.stringify(i,Gn(t),r)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Ae.length!==0;){var a=Ae.pop();a.length===4?Object.defineProperty(a[0],a[1],a[3]):a[0][a[1]]=a[2]}}return o}function jr(e,t,r,n,i,o,a){o+=1;var c;if(typeof e=="object"&&e!==null){for(c=0;ca.depthLimit){Ne(pt,e,t,i);return}if(typeof a.edgesLimit<"u"&&r+1>a.edgesLimit){Ne(pt,e,t,i);return}if(n.push(e),Array.isArray(e))for(c=0;c0)for(var n=0;ne.length)&&(t=e.length);for(var r=0,n=new Array(t);r=1e3&&e<=4999}function zi(e,t){if(t!=="[Circular]")return t}var qr={},we={};Object.defineProperty(we,"__esModule",{value:!0});we.errorValues=we.errorCodes=void 0;we.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}};we.errorValues={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.serializeError=e.isValidCode=e.getMessageFromCode=e.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;const t=we,r=be,n=t.errorCodes.rpc.internal,i="Unspecified error message. This is a bug, please report it.",o={code:n,message:a(n)};e.JSON_RPC_SERVER_ERROR_MESSAGE="Unspecified server error.";function a(h,b=i){if(Number.isInteger(h)){const O=h.toString();if(p(t.errorValues,O))return t.errorValues[O].message;if(m(h))return e.JSON_RPC_SERVER_ERROR_MESSAGE}return b}e.getMessageFromCode=a;function c(h){if(!Number.isInteger(h))return!1;const b=h.toString();return!!(t.errorValues[b]||m(h))}e.isValidCode=c;function d(h,{fallbackError:b=o,shouldIncludeStack:O=!1}={}){var _,T;if(!b||!Number.isInteger(b.code)||typeof b.message!="string")throw new Error("Must provide fallback error with integer number code and string message.");if(h instanceof r.EthereumRpcError)return h.serialize();const A={};if(h&&typeof h=="object"&&!Array.isArray(h)&&p(h,"code")&&c(h.code)){const U=h;A.code=U.code,U.message&&typeof U.message=="string"?(A.message=U.message,p(U,"data")&&(A.data=U.data)):(A.message=a(A.code),A.data={originalError:y(h)})}else{A.code=b.code;const U=(_=h)===null||_===void 0?void 0:_.message;A.message=U&&typeof U=="string"?U:b.message,A.data={originalError:y(h)}}const E=(T=h)===null||T===void 0?void 0:T.stack;return O&&h&&E&&typeof E=="string"&&(A.stack=E),A}e.serializeError=d;function m(h){return h>=-32099&&h<=-32e3}function y(h){return h&&typeof h=="object"&&!Array.isArray(h)?Object.assign({},h):h}function p(h,b){return Object.prototype.hasOwnProperty.call(h,b)}})(qr);var vt={};Object.defineProperty(vt,"__esModule",{value:!0});vt.ethErrors=void 0;const Kr=be,Yn=qr,te=we;vt.ethErrors={rpc:{parse:e=>oe(te.errorCodes.rpc.parse,e),invalidRequest:e=>oe(te.errorCodes.rpc.invalidRequest,e),invalidParams:e=>oe(te.errorCodes.rpc.invalidParams,e),methodNotFound:e=>oe(te.errorCodes.rpc.methodNotFound,e),internal:e=>oe(te.errorCodes.rpc.internal,e),server:e=>{if(!e||typeof e!="object"||Array.isArray(e))throw new Error("Ethereum RPC Server errors must provide single object argument.");const{code:t}=e;if(!Number.isInteger(t)||t>-32005||t<-32099)throw new Error('"code" must be an integer such that: -32099 <= code <= -32005');return oe(t,e)},invalidInput:e=>oe(te.errorCodes.rpc.invalidInput,e),resourceNotFound:e=>oe(te.errorCodes.rpc.resourceNotFound,e),resourceUnavailable:e=>oe(te.errorCodes.rpc.resourceUnavailable,e),transactionRejected:e=>oe(te.errorCodes.rpc.transactionRejected,e),methodNotSupported:e=>oe(te.errorCodes.rpc.methodNotSupported,e),limitExceeded:e=>oe(te.errorCodes.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>ze(te.errorCodes.provider.userRejectedRequest,e),unauthorized:e=>ze(te.errorCodes.provider.unauthorized,e),unsupportedMethod:e=>ze(te.errorCodes.provider.unsupportedMethod,e),disconnected:e=>ze(te.errorCodes.provider.disconnected,e),chainDisconnected:e=>ze(te.errorCodes.provider.chainDisconnected,e),custom:e=>{if(!e||typeof e!="object"||Array.isArray(e))throw new Error("Ethereum Provider custom errors must provide single object argument.");const{code:t,message:r,data:n}=e;if(!r||typeof r!="string")throw new Error('"message" must be a nonempty string');return new Kr.EthereumProviderError(t,r,n)}}};function oe(e,t){const[r,n]=Xn(t);return new Kr.EthereumRpcError(e,r||Yn.getMessageFromCode(e),n)}function ze(e,t){const[r,n]=Xn(t);return new Kr.EthereumProviderError(e,r||Yn.getMessageFromCode(e),n)}function Xn(e){if(e){if(typeof e=="string")return[e];if(typeof e=="object"&&!Array.isArray(e)){const{message:t,data:r}=e;if(t&&typeof t!="string")throw new Error("Must specify string message.");return[t||void 0,r]}}return[]}(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getMessageFromCode=e.serializeError=e.EthereumProviderError=e.EthereumRpcError=e.ethErrors=e.errorCodes=void 0;const t=be;Object.defineProperty(e,"EthereumRpcError",{enumerable:!0,get:function(){return t.EthereumRpcError}}),Object.defineProperty(e,"EthereumProviderError",{enumerable:!0,get:function(){return t.EthereumProviderError}});const r=qr;Object.defineProperty(e,"serializeError",{enumerable:!0,get:function(){return r.serializeError}}),Object.defineProperty(e,"getMessageFromCode",{enumerable:!0,get:function(){return r.getMessageFromCode}});const n=vt;Object.defineProperty(e,"ethErrors",{enumerable:!0,get:function(){return n.ethErrors}});const i=we;Object.defineProperty(e,"errorCodes",{enumerable:!0,get:function(){return i.errorCodes}})})(de);var ke={},Yi={get exports(){return ke},set exports(e){ke=e}},Xi=Jn;function Jn(e,t){if(e&&t)return Jn(e)(t);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(n){r[n]=e[n]}),r;function r(){for(var n=new Array(arguments.length),i=0;i0;return lo(i,a,c,function(d){r||(r=d),d&&n.forEach(on),!a&&(n.forEach(on),t(r))})});return e.reduce(co)},ft=fo;function ho(e){var t=po();return function(){var n=re(e),i;if(t){var o=re(this).constructor;i=Reflect.construct(n,arguments,o)}else i=n.apply(this,arguments);return Fe(this,i)}}function po(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function st(){}var an="SYN",Rr="ACK",sn="BRK",un=function(e){$e(r,e);var t=ho(r);function r(n){var i,o=n.name,a=n.target,c=n.targetWindow,d=c===void 0?window:c,m=n.targetOrigin,y=m===void 0?"*":m;if(We(this,r),i=t.call(this,{objectMode:!0}),P(Q(i),"_init",void 0),P(Q(i),"_haveSyn",void 0),P(Q(i),"_name",void 0),P(Q(i),"_target",void 0),P(Q(i),"_targetWindow",void 0),P(Q(i),"_targetOrigin",void 0),P(Q(i),"_onMessage",void 0),P(Q(i),"_synIntervalId",void 0),!o||!a)throw new Error("Invalid input.");return i._init=!1,i._haveSyn=!1,i._name=o,i._target=a,i._targetWindow=d,i._targetOrigin=y,i._onMessage=i.onMessage.bind(Q(i)),i._synIntervalId=null,window.addEventListener("message",i._onMessage,!1),i._handShake(),i}return He(r,[{key:"_break",value:function(){this.cork(),this._write(sn,null,st),this._haveSyn=!1,this._init=!1}},{key:"_handShake",value:function(){this._write(an,null,st),this.cork()}},{key:"_onData",value:function(i){if(!this._init)i===an?(this._haveSyn=!0,this._write(Rr,null,st)):i===Rr&&(this._init=!0,this._haveSyn||this._write(Rr,null,st),this.uncork());else if(i===sn)this._break();else try{this.push(i)}catch(o){this.emit("error",o)}}},{key:"_postMessage",value:function(i){var o=this._targetOrigin;this._targetWindow.postMessage({target:this._target,data:i},o)}},{key:"onMessage",value:function(i){var o=i.data;this._targetOrigin!=="*"&&i.origin!==this._targetOrigin||i.source!==this._targetWindow||ve(o)!=="object"||o.target!==this._name||!o.data||this._onData(o.data)}},{key:"_read",value:function(){}},{key:"_write",value:function(i,o,a){this._postMessage(i),a()}},{key:"_destroy",value:function(){window.removeEventListener("message",this._onMessage,!1)}}]),r}(mt.Duplex);function go(e){var t=yo();return function(){var n=re(e),i;if(t){var o=re(this).constructor;i=Reflect.construct(n,arguments,o)}else i=n.apply(this,arguments);return Fe(this,i)}}function yo(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function ln(e,t,r){try{Reflect.apply(e,t,r)}catch(n){setTimeout(function(){throw n})}}function mo(e){for(var t=e.length,r=new Array(t),n=0;n1?c-1:0),m=1;m0&&(y=d[0]),y instanceof Error)throw y;var p=new Error("Unhandled error.".concat(y?" (".concat(y.message,")"):""));throw p.context=y,p}var h=a[i];if(h===void 0)return!1;if(typeof h=="function")ln(h,this,d);else for(var b=h.length,O=mo(h),_=0;_"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Ye=function(e){$e(r,e);var t=vo(r);function r(n){var i,o=n.code,a=n.message,c=n.data;if(We(this,r),!Number.isInteger(o))throw new Error("code must be an integer");if(!a||typeof a!="string")throw new Error("message must be string");return i=t.call(this,a),P(Q(i),"code",void 0),P(Q(i),"data",void 0),i.code=o,c!==void 0&&(i.data=c),i}return He(r,[{key:"toString",value:function(){return Fn({code:this.code,message:this.message,data:this.data,stack:this.stack})}}]),r}(Nr(Error));function wo(){var e={};function t(){return!1}var r=new wt;function n(d){var m=e[d.id];if(!m)throw new Error('StreamMiddleware - Unknown response id "'.concat(d.id,'"'));delete e[d.id],Object.assign(m.res,d),setTimeout(m.end)}function i(d){r.emit("notification",d)}function o(d,m,y){var p;try{var h=!d.id;h?i(d):n(d)}catch(b){p=b}y(p)}var a=new mt.Duplex({objectMode:!0,read:t,write:o}),c=function(m,y,p,h){a.push(m),e[m.id]={req:m,res:y,next:p,end:h}};return{events:r,middleware:c,stream:a}}function _o(){return function(e,t,r,n){var i=e.id,o=xi();e.id=o,t.id=o,r(function(a){e.id=i,t.id=i,a()})}}function cn(e,t){var r=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=So(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(m){throw m},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,a=!1,c;return{s:function(){r=r.call(e)},n:function(){var m=r.next();return o=m.done,m},e:function(m){a=!0,c=m},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(a)throw c}}}}function So(e,t){if(e){if(typeof e=="string")return fn(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fn(e,t)}}function fn(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var Ro=function(e){$e(r,e);var t=Oo(r);function r(){var n;return We(this,r),n=t.call(this),P(Q(n),"_middleware",void 0),n._middleware=[],n}return He(r,[{key:"push",value:function(i){this._middleware.push(i)}},{key:"handle",value:function(i,o){if(o&&typeof o!="function")throw new Error('"callback" must be a function if provided.');return Array.isArray(i)?o?this._handleBatch(i,o):this._handleBatch(i):o?this._handle(i,o):this._promiseHandle(i)}},{key:"asMiddleware",value:function(){var i=this;return function(){var o=Se(ee.mark(function a(c,d,m,y){var p,h,b,O,_;return ee.wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return A.prev=0,A.next=3,r._runAllMiddleware(c,d,i._middleware);case 3:if(p=A.sent,h=Or(p,3),b=h[0],O=h[1],_=h[2],!O){A.next=12;break}return A.next=11,r._runReturnHandlers(_);case 11:return A.abrupt("return",y(b));case 12:return A.abrupt("return",m(function(){var E=Se(ee.mark(function U(k){return ee.wrap(function(j){for(;;)switch(j.prev=j.next){case 0:return j.prev=0,j.next=3,r._runReturnHandlers(_);case 3:j.next=8;break;case 5:return j.prev=5,j.t0=j.catch(0),j.abrupt("return",k(j.t0));case 8:return j.abrupt("return",k());case 9:case"end":return j.stop()}},U,null,[[0,5]])}));return function(U){return E.apply(this,arguments)}}()));case 15:return A.prev=15,A.t0=A.catch(0),A.abrupt("return",y(A.t0));case 18:case"end":return A.stop()}},a,null,[[0,15]])}));return function(a,c,d,m){return o.apply(this,arguments)}}()}},{key:"_handleBatch",value:function(){var n=Se(ee.mark(function o(a,c){var d;return ee.wrap(function(y){for(;;)switch(y.prev=y.next){case 0:return y.prev=0,y.next=3,Promise.all(a.map(this._promiseHandle.bind(this)));case 3:if(d=y.sent,!c){y.next=6;break}return y.abrupt("return",c(null,d));case 6:return y.abrupt("return",d);case 9:if(y.prev=9,y.t0=y.catch(0),!c){y.next=13;break}return y.abrupt("return",c(y.t0));case 13:throw y.t0;case 14:case"end":return y.stop()}},o,this,[[0,9]])}));function i(o,a){return n.apply(this,arguments)}return i}()},{key:"_promiseHandle",value:function(i){var o=this;return new Promise(function(a){o._handle(i,function(c,d){a(d)})})}},{key:"_handle",value:function(){var n=Se(ee.mark(function o(a,c){var d,m,y,p,h;return ee.wrap(function(O){for(;;)switch(O.prev=O.next){case 0:if(!(!a||Array.isArray(a)||ve(a)!=="object")){O.next=3;break}return d=new Ye({code:-32603,message:"request must be plain object"}),O.abrupt("return",c(d,{id:void 0,jsonrpc:"2.0",error:d}));case 3:if(typeof a.method=="string"){O.next=6;break}return m=new Ye({code:-32603,message:"method must be string"}),O.abrupt("return",c(m,{id:a.id,jsonrpc:"2.0",error:m}));case 6:return y=Eo({},a),p={id:y.id,jsonrpc:y.jsonrpc},h=null,O.prev=9,O.next=12,this._processRequest(y,p);case 12:O.next=17;break;case 14:O.prev=14,O.t0=O.catch(9),h=O.t0;case 17:return h&&(delete p.result,p.error||(p.error=de.serializeError(h))),O.abrupt("return",c(h,p));case 19:case"end":return O.stop()}},o,this,[[9,14]])}));function i(o,a){return n.apply(this,arguments)}return i}()},{key:"_processRequest",value:function(){var n=Se(ee.mark(function o(a,c){var d,m,y,p,h;return ee.wrap(function(O){for(;;)switch(O.prev=O.next){case 0:return O.next=2,r._runAllMiddleware(a,c,this._middleware);case 2:return d=O.sent,m=Or(d,3),y=m[0],p=m[1],h=m[2],r._checkForCompletion(a,c,p),O.next=10,r._runReturnHandlers(h);case 10:if(!y){O.next=12;break}throw y;case 12:case"end":return O.stop()}},o,this)}));function i(o,a){return n.apply(this,arguments)}return i}()}],[{key:"_runAllMiddleware",value:function(){var n=Se(ee.mark(function o(a,c,d){var m,y,p,h,b,O,_,T;return ee.wrap(function(E){for(;;)switch(E.prev=E.next){case 0:m=[],y=null,p=!1,h=cn(d),E.prev=4,h.s();case 6:if((b=h.n()).done){E.next=18;break}return O=b.value,E.next=10,r._runMiddleware(a,c,O,m);case 10:if(_=E.sent,T=Or(_,2),y=T[0],p=T[1],!p){E.next=16;break}return E.abrupt("break",18);case 16:E.next=6;break;case 18:E.next=23;break;case 20:E.prev=20,E.t0=E.catch(4),h.e(E.t0);case 23:return E.prev=23,h.f(),E.finish(23);case 26:return E.abrupt("return",[y,p,m.reverse()]);case 27:case"end":return E.stop()}},o,null,[[4,20,23,26]])}));function i(o,a,c){return n.apply(this,arguments)}return i}()},{key:"_runMiddleware",value:function(i,o,a,c){return new Promise(function(d){var m=function(h){var b=h||o.error;b&&(o.error=de.serializeError(b)),d([b,!0])},y=function(h){o.error?m(o.error):(h&&(typeof h!="function"&&m(new Ye({code:-32603,message:"JRPCEngine: 'next' return handlers must be functions"})),c.push(h)),d([null,!1]))};try{a(i,o,y,m)}catch(p){m(p)}})}},{key:"_runReturnHandlers",value:function(){var n=Se(ee.mark(function o(a){var c,d,m;return ee.wrap(function(p){for(;;)switch(p.prev=p.next){case 0:c=cn(a),p.prev=1,m=ee.mark(function h(){var b;return ee.wrap(function(_){for(;;)switch(_.prev=_.next){case 0:return b=d.value,_.next=3,new Promise(function(T,A){b(function(E){return E?A(E):T()})});case 3:case"end":return _.stop()}},h)}),c.s();case 4:if((d=c.n()).done){p.next=8;break}return p.delegateYield(m(),"t0",6);case 6:p.next=4;break;case 8:p.next=13;break;case 10:p.prev=10,p.t1=p.catch(1),c.e(p.t1);case 13:return p.prev=13,c.f(),p.finish(13);case 16:case"end":return p.stop()}},o,null,[[1,10,13,16]])}));function i(o){return n.apply(this,arguments)}return i}()},{key:"_checkForCompletion",value:function(i,o,a){if(!("result"in o)&&!("error"in o))throw new Ye({code:-32603,message:"Response has no error or result for request"});if(!a)throw new Ye({code:-32603,message:"Nothing ended request"})}}]),r}(wt);function Ao(e){var t=Po();return function(){var n=re(e),i;if(t){var o=re(this).constructor;i=Reflect.construct(n,arguments,o)}else i=n.apply(this,arguments);return Fe(this,i)}}function Po(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var To=function(e){$e(r,e);var t=Ao(r);function r(n){var i,o=n.parent,a=n.name;return We(this,r),i=t.call(this,{objectMode:!0}),P(Q(i),"_parent",void 0),P(Q(i),"_name",void 0),i._parent=o,i._name=a,i}return He(r,[{key:"_read",value:function(){}},{key:"_write",value:function(i,o,a){this._parent.push({name:this._name,data:i}),a()}}]),r}(mt.Duplex);function hn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function pn(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var gn=Symbol("IGNORE_SUBSTREAM"),ti=function(e){$e(r,e);var t=Mo(r);function r(){var n,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return We(this,r),n=t.call(this,pn(pn({},i),{},{objectMode:!0})),P(Q(n),"_substreams",void 0),P(Q(n),"getStream",void 0),n._substreams={},n}return He(r,[{key:"createStream",value:function(i){if(!i)throw new Error("ObjectMultiplex - name must not be empty");if(this._substreams[i])throw new Error('ObjectMultiplex - Substream for name "'.concat(i,'" already exists'));var o=new To({parent:this,name:i});return this._substreams[i]=o,Do(this,function(a){return o.destroy(a||void 0)}),o}},{key:"ignoreStream",value:function(i){if(!i)throw new Error("ObjectMultiplex - name must not be empty");if(this._substreams[i])throw new Error('ObjectMultiplex - Substream for name "'.concat(i,'" already exists'));this._substreams[i]=gn}},{key:"_read",value:function(){}},{key:"_write",value:function(i,o,a){var c=i.name,d=i.data;if(!c)return window.console.warn('ObjectMultiplex - malformed chunk without name "'.concat(i,'"')),a();var m=this._substreams[c];return m?(m!==gn&&m.push(d),a()):(window.console.warn('ObjectMultiplex - orphaned data for stream "'.concat(c,'"')),a())}}]),r}(mt.Duplex);function Do(e,t){var r=ke(t);Ur(e,{readable:!1},r),Ur(e,{writable:!1},r)}function Lo(e){var t=new ti;return t.getStream=function(n){return this._substreams[n]?this._substreams[n]:this.createStream(n)},ft(e,t,e,function(r){r&&window.console.error(r)}),t}var xr={},_t={};Object.defineProperty(_t,"__esModule",{value:!0});_t.storeAsStream=void 0;const No=vi;class ko extends No.Duplex{constructor(t){super({objectMode:!0}),this.resume(),this.handler=r=>this.push(r),this.obsStore=t,this.obsStore.subscribe(this.handler)}pipe(t,r){const n=super.pipe(t,r);return t.write(this.obsStore.getState()),n}_write(t,r,n){this.obsStore.putState(t),n()}_read(t){}_destroy(t,r){this.obsStore.unsubscribe(this.handler),super._destroy(t,r)}}function Bo(e){return new ko(e)}_t.storeAsStream=Bo;var St={},Ke={},Vr={};Object.defineProperty(Vr,"__esModule",{value:!0});const jo=nt;function yn(e,t,r){try{Reflect.apply(e,t,r)}catch(n){setTimeout(()=>{throw n})}}function Uo(e){const t=e.length,r=new Array(t);for(let n=0;n0&&([a]=r),a instanceof Error)throw a;const c=new Error(`Unhandled error.${a?` (${a.message})`:""}`);throw c.context=a,c}const o=i[t];if(o===void 0)return!1;if(typeof o=="function")yn(o,this,r);else{const a=o.length,c=Uo(o);for(let d=0;d{const n=this._children[r];this._addChild(r,n)})}_addChild(t,r){const n=i=>{const o=this.getState();o[t]=i,this.putState(o)};r.subscribe(n),n(r.getState())}}St.ComposedStore=qo;var Et={};Object.defineProperty(Et,"__esModule",{value:!0});Et.MergedStore=void 0;const Ko=Ke;class Vo extends Ko.ObservableStore{constructor(t=[]){super({}),this._children=t,t.forEach(r=>this._addChild(r)),this._updateWholeState()}_addChild(t){t.subscribe(()=>this._updateWholeState())}_updateWholeState(){const t=this._children.map(n=>n.getState()),r=Object.assign({},...t);this.putState(r)}}Et.MergedStore=Vo;var Ot={},tt={},Go={get exports(){return tt},set exports(e){tt=e}},gt={},zo={get exports(){return gt},set exports(e){gt=e}},Be={},mn={get exports(){return Be},set exports(e){Be=e}};typeof Z>"u"||!Z.version||Z.version.indexOf("v0.")===0||Z.version.indexOf("v1.")===0&&Z.version.indexOf("v1.8.")!==0?mn.exports={nextTick:Yo}:mn.exports=Z;function Yo(e,t,r,n){if(typeof e!="function")throw new TypeError('"callback" argument must be a function');var i=arguments.length,o,a;switch(i){case 0:case 1:return Z.nextTick(e);case 2:return Z.nextTick(function(){e.call(null,t)});case 3:return Z.nextTick(function(){e.call(null,t,r)});case 4:return Z.nextTick(function(){e.call(null,t,r,n)});default:for(o=new Array(i-1),a=0;a"u"}K.isPrimitive=da;K.isBuffer=pe.Buffer.isBuffer;function Ct(e){return Object.prototype.toString.call(e)}var yt={},ha={get exports(){return yt},set exports(e){yt=e}},vn;function pa(){return vn||(vn=1,function(e){function t(o,a){if(!(o instanceof a))throw new TypeError("Cannot call a class as a function")}var r=je.Buffer,n=Wr;function i(o,a,c){o.copy(a,c)}e.exports=function(){function o(){t(this,o),this.head=null,this.tail=null,this.length=0}return o.prototype.push=function(c){var d={data:c,next:null};this.length>0?this.tail.next=d:this.head=d,this.tail=d,++this.length},o.prototype.unshift=function(c){var d={data:c,next:this.head};this.length===0&&(this.tail=d),this.head=d,++this.length},o.prototype.shift=function(){if(this.length!==0){var c=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,c}},o.prototype.clear=function(){this.head=this.tail=null,this.length=0},o.prototype.join=function(c){if(this.length===0)return"";for(var d=this.head,m=""+d.data;d=d.next;)m+=c+d.data;return m},o.prototype.concat=function(c){if(this.length===0)return r.alloc(0);if(this.length===1)return this.head.data;for(var d=r.allocUnsafe(c>>>0),m=this.head,y=0;m;)i(m.data,d,y),y+=m.data.length,m=m.next;return d},o}(),n&&n.inspect&&n.inspect.custom&&(e.exports.prototype[n.inspect.custom]=function(){var o=n.inspect({length:this.length});return this.constructor.name+" "+o})}(ha)),yt}var bn=Be;function ga(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(!this._writableState||!this._writableState.errorEmitted)&&bn.nextTick(wn,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(o){!t&&o?(bn.nextTick(wn,r,o),r._writableState&&(r._writableState.errorEmitted=!0)):t&&t(o)}),this)}function ya(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function wn(e,t){e.emit("error",t)}var ni={destroy:ga,undestroy:ya},Ar,_n;function ii(){if(_n)return Ar;_n=1;var e=Be;Ar=_;function t(l){var f=this;this.next=null,this.entry=null,this.finish=function(){v(f,l)}}var r=!Z.browser&&["v0.10","v0.9."].indexOf(Z.version.slice(0,5))>-1?setImmediate:e.nextTick,n;_.WritableState=b;var i=Object.create(K);i.inherits=it;var o={deprecate:bi},a=ri,c=je.Buffer,d=he.Uint8Array||function(){};function m(l){return c.from(l)}function y(l){return c.isBuffer(l)||l instanceof d}var p=ni;i.inherits(_,a);function h(){}function b(l,f){n=n||Ue(),l=l||{};var g=f instanceof n;this.objectMode=!!l.objectMode,g&&(this.objectMode=this.objectMode||!!l.writableObjectMode);var w=l.highWaterMark,M=l.writableHighWaterMark,I=this.objectMode?16:16*1024;w||w===0?this.highWaterMark=w:g&&(M||M===0)?this.highWaterMark=M:this.highWaterMark=I,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var x=l.decodeStrings===!1;this.decodeStrings=!x,this.defaultEncoding=l.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function($){V(f,$)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new t(this)}b.prototype.getBuffer=function(){for(var f=this.bufferedRequest,g=[];f;)g.push(f),f=f.next;return g},function(){try{Object.defineProperty(b.prototype,"buffer",{get:o.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var O;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(O=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(l){return O.call(this,l)?!0:this!==_?!1:l&&l._writableState instanceof b}})):O=function(l){return l instanceof this};function _(l){if(n=n||Ue(),!O.call(_,this)&&!(this instanceof n))return new _(l);this._writableState=new b(l,this),this.writable=!0,l&&(typeof l.write=="function"&&(this._write=l.write),typeof l.writev=="function"&&(this._writev=l.writev),typeof l.destroy=="function"&&(this._destroy=l.destroy),typeof l.final=="function"&&(this._final=l.final)),a.call(this)}_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function T(l,f){var g=new Error("write after end");l.emit("error",g),e.nextTick(f,g)}function A(l,f,g,w){var M=!0,I=!1;return g===null?I=new TypeError("May not write null values to stream"):typeof g!="string"&&g!==void 0&&!f.objectMode&&(I=new TypeError("Invalid non-string/buffer chunk")),I&&(l.emit("error",I),e.nextTick(w,I),M=!1),M}_.prototype.write=function(l,f,g){var w=this._writableState,M=!1,I=!w.objectMode&&y(l);return I&&!c.isBuffer(l)&&(l=m(l)),typeof f=="function"&&(g=f,f=null),I?f="buffer":f||(f=w.defaultEncoding),typeof g!="function"&&(g=h),w.ended?T(this,g):(I||A(this,w,l,g))&&(w.pendingcb++,M=U(this,w,I,l,f,g)),M},_.prototype.cork=function(){var l=this._writableState;l.corked++},_.prototype.uncork=function(){var l=this._writableState;l.corked&&(l.corked--,!l.writing&&!l.corked&&!l.finished&&!l.bufferProcessing&&l.bufferedRequest&&G(this,l))},_.prototype.setDefaultEncoding=function(f){if(typeof f=="string"&&(f=f.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((f+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+f);return this._writableState.defaultEncoding=f,this};function E(l,f,g){return!l.objectMode&&l.decodeStrings!==!1&&typeof f=="string"&&(f=c.from(f,g)),f}Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function U(l,f,g,w,M,I){if(!g){var x=E(f,w,M);w!==x&&(g=!0,M="buffer",w=x)}var $=f.objectMode?1:w.length;f.length+=$;var z=f.length0?(typeof u!="string"&&!D.objectMode&&Object.getPrototypeOf(u)!==o.prototype&&(u=c(u)),R?D.endEmitted?s.emit("error",new Error("stream.unshift() after end event")):k(s,D,u,!0):D.ended?s.emit("error",new Error("stream.push() after EOF")):(D.reading=!1,D.decoder&&!S?(u=D.decoder.write(u),D.objectMode||u.length!==0?k(s,D,u,!1):se(s,D)):k(s,D,u,!1))):R||(D.reading=!1)}return j(D)}function k(s,u,S,R){u.flowing&&u.length===0&&!u.sync?(s.emit("data",S),s.read(0)):(u.length+=u.objectMode?1:S.length,R?u.buffer.unshift(S):u.buffer.push(S),u.needReadable&&H(s)),se(s,u)}function q(s,u){var S;return!d(u)&&typeof u!="string"&&u!==void 0&&!s.objectMode&&(S=new TypeError("Invalid non-string/buffer chunk")),S}function j(s){return!s.ended&&(s.needReadable||s.length=V?s=V:(s--,s|=s>>>1,s|=s>>>2,s|=s>>>4,s|=s>>>8,s|=s>>>16,s++),s}function L(s,u){return s<=0||u.length===0&&u.ended?0:u.objectMode?1:s!==s?u.flowing&&u.length?u.buffer.head.data.length:u.length:(s>u.highWaterMark&&(u.highWaterMark=X(s)),s<=u.length?s:u.ended?u.length:(u.needReadable=!0,0))}E.prototype.read=function(s){p("read",s),s=parseInt(s,10);var u=this._readableState,S=s;if(s!==0&&(u.emittedReadable=!1),s===0&&u.needReadable&&(u.length>=u.highWaterMark||u.ended))return p("read: emitReadable",u.length,u.ended),u.length===0&&u.ended?$(this):H(this),null;if(s=L(s,u),s===0&&u.ended)return u.length===0&&$(this),null;var R=u.needReadable;p("need readable",R),(u.length===0||u.length-s0?B=w(s,u):B=null,B===null?(u.needReadable=!0,s=0):u.length-=s,u.length===0&&(u.ended||(u.needReadable=!0),S!==s&&u.ended&&$(this)),B!==null&&this.emit("data",B),B};function G(s,u){if(!u.ended){if(u.decoder){var S=u.decoder.end();S&&S.length&&(u.buffer.push(S),u.length+=u.objectMode?1:S.length)}u.ended=!0,H(s)}}function H(s){var u=s._readableState;u.needReadable=!1,u.emittedReadable||(p("emitReadable",u.flowing),u.emittedReadable=!0,u.sync?e.nextTick(ne,s):ne(s))}function ne(s){p("emit readable"),s.emit("readable"),g(s)}function se(s,u){u.readingMore||(u.readingMore=!0,e.nextTick(ie,s,u))}function ie(s,u){for(var S=u.length;!u.reading&&!u.flowing&&!u.ended&&u.length1&&J(R.pipes,s)!==-1)&&!Ve&&(p("false write response, pause",S._readableState.awaitDrain),S._readableState.awaitDrain++,Te=!0),S.pause())}function Me(fe){p("onerror",fe),ye(),s.removeListener("error",Me),n(s,"error")===0&&s.emit("error",fe)}T(s,"error",Me);function Ie(){s.removeListener("finish",De),ye()}s.once("close",Ie);function De(){p("onfinish"),s.removeListener("close",Ie),ye()}s.once("finish",De);function ye(){p("unpipe"),S.unpipe(s)}return s.emit("pipe",S),R.flowing||(p("pipe resume"),S.resume()),s};function C(s){return function(){var u=s._readableState;p("pipeOnDrain",u.awaitDrain),u.awaitDrain&&u.awaitDrain--,u.awaitDrain===0&&n(s,"data")&&(u.flowing=!0,g(s))}}E.prototype.unpipe=function(s){var u=this._readableState,S={hasUnpiped:!1};if(u.pipesCount===0)return this;if(u.pipesCount===1)return s&&s!==u.pipes?this:(s||(s=u.pipes),u.pipes=null,u.pipesCount=0,u.flowing=!1,s&&s.emit("unpipe",this,S),this);if(!s){var R=u.pipes,B=u.pipesCount;u.pipes=null,u.pipesCount=0,u.flowing=!1;for(var D=0;D=u.length?(u.decoder?S=u.buffer.join(""):u.buffer.length===1?S=u.buffer.head.data:S=u.buffer.concat(u.length),u.buffer.clear()):S=M(s,u.buffer,u.decoder),S}function M(s,u,S){var R;return sD.length?D.length:s;if(N===D.length?B+=D:B+=D.slice(0,s),s-=N,s===0){N===D.length?(++R,S.next?u.head=S.next:u.head=u.tail=null):(u.head=S,S.data=D.slice(N));break}++R}return u.length-=R,B}function x(s,u){var S=o.allocUnsafe(s),R=u.head,B=1;for(R.data.copy(S),s-=R.data.length;R=R.next;){var D=R.data,N=s>D.length?D.length:s;if(D.copy(S,S.length-s,0,N),s-=N,s===0){N===D.length?(++B,R.next?u.head=R.next:u.head=u.tail=null):(u.head=R,R.data=D.slice(N));break}++B}return u.length-=B,S}function $(s){var u=s._readableState;if(u.length>0)throw new Error('"endReadable()" called on non-empty stream');u.endEmitted||(u.ended=!0,e.nextTick(z,u,s))}function z(s,u){!s.endEmitted&&s.length===0&&(s.endEmitted=!0,u.readable=!1,u.emit("end"))}function J(s,u){for(var S=0,R=s.length;S{try{const i=e(t);n(null,i);return}catch(i){n(i);return}})}Ot.storeTransformStream=Ca;(function(e){var t=he&&he.__createBinding||(Object.create?function(n,i,o,a){a===void 0&&(a=o),Object.defineProperty(n,a,{enumerable:!0,get:function(){return i[o]}})}:function(n,i,o,a){a===void 0&&(a=o),n[a]=i[o]}),r=he&&he.__exportStar||function(n,i){for(var o in n)o!=="default"&&!Object.prototype.hasOwnProperty.call(i,o)&&t(i,n,o)};Object.defineProperty(e,"__esModule",{value:!0}),r(_t,e),r(St,e),r(Et,e),r(Ke,e),r(Ot,e)})(xr);var Ra=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,i,o;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!e(t[i],r[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,o[i]))return!1;for(i=n;i--!==0;){var a=o[i];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r};const ce=e=>e!==null&&typeof e=="object"&&typeof e.pipe=="function";ce.writable=e=>ce(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object";ce.readable=e=>ce(e)&&e.readable!==!1&&typeof e._read=="function"&&typeof e._readableState=="object";ce.duplex=e=>ce.writable(e)&&ce.readable(e);ce.transform=e=>ce.duplex(e)&&typeof e._transform=="function";var Aa=ce;const Xe={GOOGLE:"google",FACEBOOK:"facebook",TWITCH:"twitch",REDDIT:"reddit",DISCORD:"discord"},Oe={GOOGLE:"google",FACEBOOK:"facebook",TWITCH:"twitch",REDDIT:"reddit",DISCORD:"discord",EMAIL_PASSWORDLESS:"torus-auth0-email-passwordless"},Cn={[Oe.GOOGLE]:"tkey-google",[Oe.FACEBOOK]:"tkey-facebook",[Oe.TWITCH]:"tkey-twitch",[Oe.REDDIT]:"tkey-reddit",[Oe.DISCORD]:"tkey-discord",[Oe.EMAIL_PASSWORDLESS]:"tkey-auth0-email-passwordless"},F={MOONPAY:"moonpay",WYRE:"wyre",RAMPNETWORK:"rampnetwork",XANPOOL:"xanpool",MERCURYO:"mercuryo",TRANSAK:"transak",BANXA:"banxa"},Y={MAINNET:"mainnet",MATIC:"matic",BSC_MAINNET:"bsc_mainnet",AVALANCHE_MAINNET:"avalanche_mainnet",XDAI:"xdai"},Pa={PRODUCTION:"production",DEVELOPMENT:"development",BINANCE:"binance",TESTING:"testing",LRC:"lrc",BETA:"beta",BNB:"bnb",POLYGON:"polygon"},Le={BOTTOM_LEFT:"bottom-left",TOP_LEFT:"top-left",BOTTOM_RIGHT:"bottom-right",TOP_RIGHT:"top-right"},Ta=["ETH","USDT","USDC","TUSD","EOSDT","USD","DAI","GUSD","DKKT","PAX","ILS","RUB","BYN","EUR","GBP","JPY","KRW","PLN","MXN","AUD","BRL","CAD","CHF","KPW","LAK","LBP","LKR","XOF","CNHT","DOGE","UAH","TRY","HKD","XJP","SGD","USC","NZD","NGN","RUR","COP","GHS","EGP","IDR","BHD","CRC","PEN","AED","DOP","PKR","HUF","VND","XAR","LTC","RON","OMR","MYR","DKK","UGX","ZMW","SAR","SEK","GEL","RWF","IRR","TZS","CNY","VEF","BDT","HRK","CLP","THB","XAF","ARS","UYU","SZL","KZT","NOK","KES","PAB","INR","CZK","MAD","TWD","PHP","ZAR","BOB","CDF","DASH","VES","ISK","MWK","BAM","TTD","XRP","JOD","RSD","HNL","BGN","GTQ","BWP","XMR","MMK","QAR","AOA","KWD","MUR","WUSD","WEUR","WAVES","WTRY","LRD","LSL","LYD","AWG","MDL","BTO","EURS","CHFT","MKD","MNT","MOP","MRO","MVR","VOLLAR","CKUSD","KHR","VUV","BITCNY","QC","BBD","NAD","NPR","PGK","PYG","BIF","BMD","BND","XLM","BNB","SCR","BAT","CRO","HT","KCS","LEO","LINK","MKR","NPXS","OMG","REP","ZB","ZIL","ZRX","BCH","BZD","CUP","CVE","DJF","DZD","ERN","ETB","FJD","FKP","BUSD","ANCT","ALL","AMD","ANG","CNYX","IQD","UZS","TND","GGP","XAU","KGS","GIP","JMD","ZEC","USDP","BSV","EMC2","SNT","GTO","POWR","EUSD","EURT","BCY","BTS","ATM","BLOCKPAY","ARDR","AMP","B2X","BITGOLD","BITEUR","ATB","BITUSD","AGRS","DFXT","HIKEN","BIX","KNC","EOS","COB","COSS","BMH","NANO","BDG","BNT","XVG","LKK1Y","LKK","USDK","EURN","NZDT","JSE","GMD","GNF","GYD","YER","XPF","HTG","SLL","SOS","WST","SVC","SYP","NEO","KMF","JUMP","AYA","BLAST","WGR","BCN","BTG","URALS","INN","USDQ","CNH","HUSD","BKRW","NZDX","EURX","CADX","USDEX","JPYX","AUDX","VNDC","EON","GBPX","CHFX","USDJ","IDRT","USDS","USDN","BIDR","IDK","BSD","BTN","KYD","NIO","SBD","SDG","SHP","TOP","XCD","XCHF","CNYT","GYEN","ZUSD","GOLD","TRX","TRYB","PLATC","STRAX","UST","GLM","VAI","BRZ","DDRST","XAUT","MIM"],Ma={[F.MOONPAY]:["AUD","BGN","BRL","CAD","CHF","CNY","COP","CZK","DKK","DOP","EGP","EUR","GBP","HKD","HRK","IDR","ILS","JPY","JOD","KES","KRW","KWD","LKR","MAD","MXN","MYR","NGN","NOK","NZD","OMR","PEN","PKR","PLN","RON","RUB","SEK","SGD","THB","TRY","TWD","USD","VND","ZAR"],[F.WYRE]:["USD","EUR","GBP","AUD","CAD","NZD","ARS","BRL","CHF","CLP","COP","CZK","DKK","HKD","ILS","INR","ISK","JPY","KRW","MXN","MYR","NOK","PHP","PLN","SEK","THB","VND","ZAR"],[F.RAMPNETWORK]:["USD","EUR","GBP"],[F.XANPOOL]:["SGD","HKD","THB","PHP","INR","IDR","MYR","AUD","NZD","KRW"],[F.MERCURYO]:["EUR","USD","GBP","TRY","JPY","BRL","NGN","VND","MXN","KRW"],[F.TRANSAK]:["ARS","AUD","BBD","BGN","BMD","BRL","CAD","CHF","CLP","CRC","CZK","DKK","DOP","EUR","FJD","FKP","GBP","GIP","HRK","HUF","IDR","ILS","ISK","JMD","JPY","KES","KRW","MDL","MXN","MYR","NOK","NZD","PEN","PHP","PLN","PYG","RON","SEK","SGD","THB","TRY","TZS","USD","ZAR"],[F.BANXA]:["EUR","GBP","USD"]},Ia=new Set(Ta);function Ee(e){return Ma[e].filter(r=>Ia.has(r))}const Da={[F.MOONPAY]:{line1:"Credit/ Debit Card/ Apple Pay",line2:"4.5% or 5 USD",line3:"2,000€/day, 10,000€/mo",supportPage:"https://help.moonpay.io/en/",minOrderValue:24.99,maxOrderValue:5e4,validCurrencies:Ee(F.MOONPAY),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"aave",display:"AAVE"},{value:"bat",display:"BAT"},{value:"dai",display:"DAI"},{value:"eth",display:"ETH"},{value:"mkr",display:"MKR"},{value:"matic",display:"MATIC"},{value:"usdt",display:"USDT"},{value:"usdc",display:"USDC"}],[Y.MATIC]:[{value:"eth_polygon",display:"ETH"},{value:"matic_polygon",display:"MATIC"},{value:"usdc_polygon",display:"USDC"}],[Y.BSC_MAINNET]:[{value:"bnb_bsc",display:"BNB"},{value:"busd_bsc",display:"BUSD"}],[Y.AVALANCHE_MAINNET]:[{value:"avax_cchain",display:"AVAX"}]},includeFees:!0,api:!0,enforceMax:!1},[F.WYRE]:{line1:"Apple Pay/ Debit/ Credit Card",line2:"4.9% + 30¢ or 5 USD",line3:"$250/day",supportPage:"https://support.sendwyre.com/en/",minOrderValue:5,maxOrderValue:500,validCurrencies:Ee(F.WYRE),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"AAVE",display:"AAVE"},{value:"BAT",display:"BAT"},{value:"BUSD",display:"BUSD"},{value:"DAI",display:"DAI"},{value:"ETH",display:"ETH"},{value:"MKR",display:"MKR"},{value:"UNI",display:"UNI"},{value:"USDC",display:"USDC"},{value:"USDT",display:"USDT"}],[Y.MATIC]:[{value:"MUSDC",display:"USDC"}],[Y.AVALANCHE_MAINNET]:[{value:"AVAXC",display:"AVAXC"}]},includeFees:!1,api:!0,enforceMax:!1},[F.RAMPNETWORK]:{line1:"Debit Card/
Apple Pay/ Bank transfer",line2:"0.49% - 2.9%",line3:"5,000€/purchase, 20,000€/mo",supportPage:"https://instant.ramp.network/",minOrderValue:50,maxOrderValue:2e4,validCurrencies:Ee(F.RAMPNETWORK),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"ETH",display:"ETH"},{value:"DAI",display:"DAI"},{value:"USDC",display:"USDC"},{value:"USDT",display:"USDT"}],[Y.MATIC]:[{value:"MATIC_DAI",display:"DAI"},{value:"MATIC_MATIC",display:"MATIC"},{value:"MATIC_USDC",display:"USDC"}],[Y.AVALANCHE_MAINNET]:[{value:"AVAX",display:"AVAX"}]},includeFees:!0,api:!0,receiveHint:"walletTopUp.receiveHintRamp",enforceMax:!1},[F.XANPOOL]:{line1:"PayNow/ InstaPay/ FPS/ GoJekPay/ UPI/ PromptPay/
ViettelPay/ DuitNow",line2:"2.5% buying, 3% selling",line3:"$2,500 / day",supportPage:"mailto:support@xanpool.com",minOrderValue:100,maxOrderValue:2500,validCurrencies:Ee(F.XANPOOL),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"ETH",display:"ETH"},{value:"USDT",display:"USDT"}]},includeFees:!0,api:!0,sell:!0,enforceMax:!1},[F.MERCURYO]:{line1:"Credit/ Debit Card/ Apple Pay",line2:"3.95% or 4 USD",line3:"10,000€/day, 25,000€/mo",supportPage:"mailto:support@mercuryo.io",minOrderValue:30,maxOrderValue:5e3,validCurrencies:Ee(F.MERCURYO),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"ETH",display:"ETH"},{value:"BAT",display:"BAT"},{value:"USDT",display:"USDT"},{value:"DAI",display:"DAI"}],[Y.BSC_MAINNET]:[{value:"BNB",display:"BNB"},{value:"BUSD",display:"BUSD"},{value:"1INCH",display:"1INCH"}]},includeFees:!0,api:!0,enforceMax:!1},[F.TRANSAK]:{line1:"Apple & Google Pay / Credit/Debit Card
Bangkok Bank Mobile & iPay
Bank Transfer (sepa/gbp) / SCB Mobile & Easy",line2:"0.99% - 5.5% or 5 USD",line3:"$5,000/day, $28,000/mo",supportPage:"https://support.transak.com/hc/en-US",minOrderValue:30,maxOrderValue:500,validCurrencies:Ee(F.TRANSAK),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"AAVE",display:"AAVE"},{value:"DAI",display:"DAI"},{value:"ETH",display:"ETH"},{value:"USDC",display:"USDC"},{value:"USDT",display:"USDT"}],[Y.MATIC]:[{value:"AAVE",display:"AAVE"},{value:"DAI",display:"DAI"},{value:"MATIC",display:"MATIC"},{value:"USDC",display:"USDC"},{value:"USDT",display:"USDT"},{value:"WETH",display:"WETH"}],[Y.BSC_MAINNET]:[{value:"BNB",display:"BNB"},{value:"BUSD",display:"BUSD"}],[Y.AVALANCHE_MAINNET]:[{value:"AVAX",display:"AVAX"}]},includeFees:!0,enforceMax:!0},[F.BANXA]:{line1:"Debit Card/
Apple Pay/ Bank transfer",line2:"0.49% - 2.9%",line3:"5,000€/purchase, 20,000€/mo",supportPage:"https://support.banxa.com",minOrderValue:20,maxOrderValue:15e3,validCurrencies:Ee(F.BANXA),validCryptoCurrenciesByChain:{[Y.MAINNET]:[{value:"ETH",display:"ETH"},{value:"USDT",display:"USDT"},{value:"BUSD",display:"BUSD"},{value:"LINK",display:"LINK"},{value:"USDC",display:"USDC"},{value:"CHZ",display:"CHZ"},{value:"BAT",display:"BAT"},{value:"MANA",display:"MANA"},{value:"AAVE",display:"AAVE"},{value:"COMP",display:"COMP"},{value:"ENJ",display:"ENJ"}],[Y.MATIC]:[{value:"MATIC",display:"MATIC"}]},includeFees:!0,enforceMax:!0}},La={en:{embed:{continue:"Continue",actionRequired:"Authorization required",pendingAction:"Click continue to proceed with your request in a popup",cookiesRequired:"Cookies Required",enableCookies:"Please enable cookies in your browser preferences to access Torus",clickHere:"More Info"}},de:{embed:{continue:"Fortsetzen",actionRequired:"Autorisierung erforderlich",pendingAction:"Klicken Sie in einem Popup auf Weiter, um mit Ihrer Anfrage fortzufahren",cookiesRequired:"Cookies benötigt",enableCookies:"Bitte aktivieren Sie Cookies in Ihren Browsereinstellungen, um auf Torus zuzugreifen",clickHere:"Mehr Info"}},ja:{embed:{continue:"継続する",actionRequired:"認証が必要です",pendingAction:"続行をクリックして、ポップアップでリクエストを続行します",cookiesRequired:"必要なクッキー",enableCookies:"Torusにアクセスするには、ブラウザの設定でCookieを有効にしてください。",clickHere:"詳しくは"}},ko:{embed:{continue:"계속하다",actionRequired:"승인 필요",pendingAction:"팝업에서 요청을 진행하려면 계속을 클릭하십시오.",cookiesRequired:"쿠키 필요",enableCookies:"브라우저 환경 설정에서 쿠키를 활성화하여 Torus에 액세스하십시오.",clickHere:"더 많은 정보"}},zh:{embed:{continue:"继续",actionRequired:"需要授权",pendingAction:"单击继续以在弹出窗口中继续您的请求",cookiesRequired:"必填Cookie",enableCookies:"请在您的浏览器首选项中启用cookie以访问Torus。",clickHere:"更多信息"}}};var le={supportedVerifierList:Object.values(Oe),paymentProviders:Da,api:"https://api.tor.us",translations:La,prodTorusUrl:"",localStorageKeyPrefix:"torus-"};const Rn=e=>new Promise((t,r)=>{window.document.body!=null?Promise.resolve(e()).then(t).catch(r):window.document.addEventListener("DOMContentLoaded",()=>{Promise.resolve(e()).then(t).catch(r)})}),Je=e=>{const t=window.document.createElement("template"),r=e.trim();return t.innerHTML=r,t.content.firstChild},Na=function(e,t,r){for(var n=arguments.length,i=new Array(n>3?n-3:0),o=3;o{r(...i),e.removeEventListener(t,a)};e.addEventListener(t,a)},ue=(e,t,r)=>{const n=i=>{r(i),e.removeListener(t,n)};e.on(t,n)};async function ka(){return new Promise(e=>{document.readyState!=="loading"?e():Na(document,"DOMContentLoaded",e)})}var W=xn.getLogger("torus-embed"),ae={errors:{disconnected:()=>"Torus: Lost connection to Torus.",permanentlyDisconnected:()=>"Torus: Disconnected from iframe. Page reload required.",sendSiteMetadata:()=>"Torus: Failed to send site metadata. This is an internal error, please report this bug.",unsupportedSync:e=>`Torus: The Torus Ethereum provider does not support synchronous methods like ${e} without a callback parameter.`,invalidDuplexStream:()=>"Must provide a Node.js-style duplex stream.",invalidOptions:(e,t)=>`Invalid options. Received: { maxEventListeners: ${e}, shouldSendMetadata: ${t} }`,invalidRequestArgs:()=>"Expected a single, non-array, object argument.",invalidRequestMethod:()=>"'args.method' must be a non-empty string.",invalidRequestParams:()=>"'args.params' must be an object or array if provided.",invalidLoggerObject:()=>"'args.logger' must be an object if provided.",invalidLoggerMethod:e=>`'args.logger' must include required method '${e}'.`},info:{connected:e=>`Torus: Connected to chain with ID "${e}".`},warnings:{enableDeprecation:'Torus: ""ethereum.enable()" is deprecated and may be removed in the future. Please use "ethereum.send("eth_requestAccounts")" instead. For more information, see: https://eips.ethereum.org/EIPS/eip-1102',sendDeprecation:`Torus: "ethereum.send(...)" is deprecated and may be removed in the future. Please use "ethereum.sendAsync(...)" or "ethereum.request(...)" instead. -For more information, see: https://eips.ethereum.org/EIPS/eip-1193`,events:{close:`Torus: The event "close" is deprecated and may be removed in the future. Please use "disconnect" instead. -For more information, see: https://eips.ethereum.org/EIPS/eip-1193`,data:`Torus: The event "data" is deprecated and will be removed in the future.Use "message" instead. -For more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`,networkChanged:`Torus: The event "networkChanged" is deprecated and may be removed in the future. Please use "chainChanged" instead. -For more information, see: https://eips.ethereum.org/EIPS/eip-1193`,notification:`Torus: The event "notification" is deprecated and may be removed in the future. Please use "message" instead. -For more information, see: https://eips.ethereum.org/EIPS/eip-1193`},publicConfigStore:'Torus: The property "publicConfigStore" is deprecated and WILL be removed in the future.'}};const{paymentProviders:An}=le,Ba=(e,t)=>{const r={};if(!e)return{errors:r,isValid:!0};if(e&&!An[e])return r.provider="Invalid Provider",{errors:r,isValid:Object.keys(r).length===0};const n=An[e],i=t||{};if(i.fiatValue){const o=+parseFloat(i.fiatValue.toString())||0;on.maxOrderValue&&n.enforceMax&&(r.fiatValue="Requested amount is higher than supported")}if(i.selectedCurrency&&!n.validCurrencies.includes(i.selectedCurrency)&&(r.selectedCurrency="Unsupported currency"),i.selectedCryptoCurrency){const o=Object.values(n.validCryptoCurrenciesByChain).flat().map(c=>c.value),a=e===F.MOONPAY?i.selectedCryptoCurrency.toLowerCase():i.selectedCryptoCurrency;o&&!o.includes(a)&&(r.selectedCryptoCurrency="Unsupported cryptoCurrency")}return{errors:r,isValid:Object.keys(r).length===0}};function ja(){return(e,t,r)=>{(typeof e.method!="string"||!e.method)&&(t.error=de.ethErrors.rpc.invalidRequest({message:"The request 'method' must be a non-empty string.",data:e})),r(n=>{const{error:i}=t;return i&&W.error(`MetaMask - RPC Error: ${i.message}`,i),n()})}}function Pn(e,t,r){let n=`MetaMask: Lost connection to "${e}".`;t!=null&&t.stack&&(n+=` -${t.stack}`),W.warn(n),r&&r.listenerCount("error")>0&&r.emit("error",n)}const Ce=()=>Math.random().toString(36).slice(2),hi=async(e,t)=>{let r,n;const i="1.38.2";let o=t.version||i;try{if((e==="binance"||e==="production")&&!t.version){let a;le.prodTorusUrl?a={data:le.prodTorusUrl}:a=await Wn(`${le.api}/latestversion?name=@toruslabs/torus-embed&version=${i}`,{},{useAPIKey:!0}),o=a.data,le.prodTorusUrl=a.data}}catch(a){W.error(a,"unable to fetch latest version")}switch(W.info("version used: ",o),e){case"binance":r=`https://binance.tor.us/v${o}`,n="info";break;case"testing":r="https://testing.tor.us",n="debug";break;case"bnb":r="https://bnb.tor.us",n="error";break;case"polygon":r="https://polygon.tor.us",n="error";break;case"lrc":r="https://lrc.tor.us",n="debug";break;case"beta":r="https://beta.tor.us",n="debug";break;case"development":r="http://localhost:4050",n="debug";break;default:r=`https://app.tor.us/v${o}`,n="error";break}return{torusUrl:r,logLevel:n}},Tn=()=>{let e=window.navigator.language||"en-US";const t=e.split("-");return e=Object.prototype.hasOwnProperty.call(le.translations,t[0])?t[0]:"en",e},Ua=["eth_subscription"],pi=()=>{},Mn="directories=0,titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=660,width=375",xa="directories=0,titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=740,width=1315",In="directories=0,titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=700,width=450";function Wa(){const e=window.screenLeft!==void 0?window.screenLeft:window.screenX,t=window.screenTop!==void 0?window.screenTop:window.screenY,r=1200,n=700,i=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:window.screen.width,o=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:window.screen.height,a=1,c=Math.abs((i-r)/2/a+e),d=Math.abs((o-n)/2/a+t);return`titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=${n/a},width=${r/a},top=${d},left=${c}`}function Dn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Ha(e){for(var t=1;t2&&arguments[2]!==void 0?arguments[2]:!0;return(n,i)=>n||i.error?t(n||i.error):!r||Array.isArray(i)?e(i):e(i.result)};class At extends wt{constructor(t){let{maxEventListeners:r=100,shouldSendMetadata:n=!0,jsonRpcStreamName:i="provider"}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(super(),P(this,"chainId",void 0),P(this,"selectedAddress",void 0),P(this,"_rpcEngine",void 0),P(this,"networkVersion",void 0),P(this,"shouldSendMetadata",void 0),P(this,"isTorus",void 0),P(this,"_publicConfigStore",void 0),P(this,"tryPreopenHandle",void 0),P(this,"enable",void 0),P(this,"_state",void 0),P(this,"_jsonRpcConnection",void 0),P(this,"_sentWarnings",{enable:!1,experimentalMethods:!1,send:!1,publicConfigStore:!1,events:{close:!1,data:!1,networkChanged:!1,notification:!1}}),!Aa.duplex(t))throw new Error(ae.errors.invalidDuplexStream());this.isTorus=!0,this.setMaxListeners(r),this._state=Ha({},At._defaultState),this.selectedAddress=null,this.networkVersion=null,this.chainId=null,this.shouldSendMetadata=n,this._handleAccountsChanged=this._handleAccountsChanged.bind(this),this._handleChainChanged=this._handleChainChanged.bind(this),this._handleUnlockStateChanged=this._handleUnlockStateChanged.bind(this),this._handleConnect=this._handleConnect.bind(this),this._handleDisconnect=this._handleDisconnect.bind(this),this._handleStreamDisconnect=this._handleStreamDisconnect.bind(this),this._sendSync=this._sendSync.bind(this),this._rpcRequest=this._rpcRequest.bind(this),this._warnOfDeprecation=this._warnOfDeprecation.bind(this),this._initializeState=this._initializeState.bind(this),this.request=this.request.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this);const o=new ti;ft(t,o,t,this._handleStreamDisconnect.bind(this,"MetaMask")),this._publicConfigStore=new xr.ObservableStore({storageKey:"Metamask-Config"}),ft(o.createStream("publicConfig"),xr.storeAsStream(this._publicConfigStore),Pn.bind(this,"MetaMask PublicConfigStore")),o.ignoreStream("phishing"),this.on("connect",()=>{this._state.isConnected=!0});const a=wo();ft(a.stream,o.createStream(i),a.stream,this._handleStreamDisconnect.bind(this,"MetaMask RpcProvider"));const c=new Ro;c.push(_o()),c.push(ja()),c.push(a.middleware),this._rpcEngine=c,a.events.on("notification",d=>{const{method:m,params:y}=d;m==="wallet_accountsChanged"?this._handleAccountsChanged(y):m==="wallet_unlockStateChanged"?this._handleUnlockStateChanged(y):m==="wallet_chainChanged"?this._handleChainChanged(y):Ua.includes(d.method)&&(this.emit("data",d),this.emit("notification",y.result),this.emit("message",{type:m,data:y}))})}get publicConfigStore(){return this._sentWarnings.publicConfigStore||(W.warn(ae.warnings.publicConfigStore),this._sentWarnings.publicConfigStore=!0),this._publicConfigStore}isConnected(){return this._state.isConnected}async request(t){if(!t||typeof t!="object"||Array.isArray(t))throw de.ethErrors.rpc.invalidRequest({message:ae.errors.invalidRequestArgs(),data:t});const{method:r,params:n}=t;if(typeof r!="string"||r.length===0)throw de.ethErrors.rpc.invalidRequest({message:ae.errors.invalidRequestMethod(),data:t});if(n!==void 0&&!Array.isArray(n)&&(typeof n!="object"||n===null))throw de.ethErrors.rpc.invalidRequest({message:ae.errors.invalidRequestParams(),data:t});return new Promise((i,o)=>{this._rpcRequest({method:r,params:n},Ln(i,o))})}sendAsync(t,r){this._rpcRequest(t,r)}addListener(t,r){return this._warnOfDeprecation(t),super.addListener(t,r)}on(t,r){return this._warnOfDeprecation(t),super.on(t,r)}once(t,r){return this._warnOfDeprecation(t),super.once(t,r)}prependListener(t,r){return this._warnOfDeprecation(t),super.prependListener(t,r)}prependOnceListener(t,r){return this._warnOfDeprecation(t),super.prependOnceListener(t,r)}async _initializeState(){try{const{accounts:t,chainId:r,isUnlocked:n,networkVersion:i}=await this.request({method:"wallet_getProviderState"});this.emit("connect",{chainId:r}),this._handleChainChanged({chainId:r,networkVersion:i}),this._handleUnlockStateChanged({accounts:t,isUnlocked:n}),this._handleAccountsChanged(t)}catch(t){W.error("MetaMask: Failed to get initial state. Please report this bug.",t)}finally{W.info("initialized state"),this._state.initialized=!0,this.emit("_initialized")}}_rpcRequest(t,r){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=r;const o=t;if(!Array.isArray(o)){if(o.jsonrpc||(o.jsonrpc="2.0"),o.method==="eth_accounts"||o.method==="eth_requestAccounts")i=(a,c)=>{this._handleAccountsChanged(c.result||[],o.method==="eth_accounts",n),r(a,c)};else if(o.method==="wallet_getProviderState"){this._rpcEngine.handle(t,i);return}}this.tryPreopenHandle(o,i)}send(t,r){return this._sentWarnings.send||(W.warn(ae.warnings.sendDeprecation),this._sentWarnings.send=!0),typeof t=="string"&&(!r||Array.isArray(r))?new Promise((n,i)=>{try{this._rpcRequest({method:t,params:r},Ln(n,i,!1))}catch(o){i(o)}}):t&&typeof t=="object"&&typeof r=="function"?this._rpcRequest(t,r):this._sendSync(t)}_sendSync(t){let r;switch(t.method){case"eth_accounts":r=this.selectedAddress?[this.selectedAddress]:[];break;case"eth_coinbase":r=this.selectedAddress||null;break;case"eth_uninstallFilter":this._rpcRequest(t,pi),r=!0;break;case"net_version":r=this.networkVersion||null;break;default:throw new Error(ae.errors.unsupportedSync(t.method))}return{id:t.id,jsonrpc:t.jsonrpc,result:r}}_handleConnect(t){this._state.isConnected||(this._state.isConnected=!0,this.emit("connect",{chainId:t}),W.debug(ae.info.connected(t)))}_handleDisconnect(t,r){if(this._state.isConnected||!this._state.isPermanentlyDisconnected&&!t){this._state.isConnected=!1;let n;t?(n=new de.EthereumRpcError(1013,r||ae.errors.disconnected()),W.debug(n)):(n=new de.EthereumRpcError(1011,r||ae.errors.permanentlyDisconnected()),W.error(n),this.chainId=null,this._state.accounts=null,this.selectedAddress=null,this._state.isUnlocked=!1,this._state.isPermanentlyDisconnected=!0),this.emit("disconnect",n)}}_handleStreamDisconnect(t,r){Pn(t,r,this),this._handleDisconnect(!1,r?r.message:void 0)}_handleAccountsChanged(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=t;Array.isArray(i)||(W.error("MetaMask: Received non-array accounts parameter. Please report this bug.",i),i=[]);for(const o of t)if(typeof o!="string"){W.error("MetaMask: Received non-string account. Please report this bug.",t),i=[];break}Ra(this._state.accounts,i)||(r&&Array.isArray(this._state.accounts)&&this._state.accounts.length>0&&!n&&W.error('MetaMask: "eth_accounts" unexpectedly updated accounts. Please report this bug.',i),this._state.accounts=i,this.emit("accountsChanged",i)),this.selectedAddress!==i[0]&&(this.selectedAddress=i[0]||null)}_handleChainChanged(){let{chainId:t,networkVersion:r}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!t||!r){W.error("MetaMask: Received invalid network parameters. Please report this bug.",{chainId:t,networkVersion:r});return}r==="loading"?this._handleDisconnect(!0):(this._handleConnect(t),t!==this.chainId&&(this.chainId=t,this._state.initialized&&this.emit("chainChanged",this.chainId)))}_handleUnlockStateChanged(){let{accounts:t,isUnlocked:r}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(typeof r!="boolean"){W.error("MetaMask: Received invalid isUnlocked parameter. Please report this bug.",{isUnlocked:r});return}r!==this._state.isUnlocked&&(this._state.isUnlocked=r,this._handleAccountsChanged(t||[]))}_warnOfDeprecation(t){this._sentWarnings.events[t]===!1&&(W.warn(ae.warnings.events[t]),this._sentWarnings.events[t]=!0)}}P(At,"_defaultState",{accounts:null,isConnected:!1,isUnlocked:!1,initialized:!1,isPermanentlyDisconnected:!1,hasEmittedConnection:!1});const $a=e=>({algorithms:e.algorithms||["sha256"],delimiter:e.delimiter||" ",full:e.full||!1}),Fa=(e,t)=>{const r={};return e.algorithms.forEach(n=>{r[n]=wi(n).update(t,"utf8").digest("base64")}),r},qa=(e,t)=>{let r="";return r+=Object.keys(t.hashes).map(n=>`${n}-${t.hashes[n]}`).join(e.delimiter),r},Ka=(e,t)=>{const r=$a(e),n={hashes:Fa(r,t),integrity:void 0};return n.integrity=qa(r,n),r.full?n:n.integrity};class Nn extends nt.EventEmitter{constructor(t){let{url:r,target:n,features:i}=t;super(),P(this,"url",void 0),P(this,"target",void 0),P(this,"features",void 0),P(this,"window",void 0),P(this,"windowTimer",void 0),P(this,"iClosedWindow",void 0),this.url=r,this.target=n||"_blank",this.features=i||Wa(),this.window=void 0,this.windowTimer=void 0,this.iClosedWindow=!1,this._setupTimer()}_setupTimer(){this.windowTimer=Number(setInterval(()=>{this.window&&this.window.closed&&(clearInterval(this.windowTimer),this.iClosedWindow||this.emit("close"),this.iClosedWindow=!1,this.window=void 0),this.window===void 0&&clearInterval(this.windowTimer)},500))}open(){var t;return this.window=window.open(this.url.href,this.target,this.features),(t=this.window)!==null&&t!==void 0&&t.focus&&this.window.focus(),Promise.resolve()}close(){this.iClosedWindow=!0,this.window&&this.window.close()}redirect(t){t?window.location.replace(this.url.href):window.location.href=this.url.href}}function kn(e){return new Promise((t,r)=>{try{const n=document.createElement("img");n.onload=()=>t(!0),n.onerror=()=>t(!1),n.src=e}catch(n){r(n)}})}const Va=e=>{const{document:t}=e,r=t.querySelector('head > meta[property="og:site_name"]');if(r)return r.content;const n=t.querySelector('head > meta[name="title"]');return n?n.content:t.title&&t.title.length>0?t.title:e.location.hostname};async function Ga(e){const{document:t}=e;let r=t.querySelector('head > link[rel="shortcut icon"]');return r&&await kn(r.href)||(r=Array.from(t.querySelectorAll('head > link[rel="icon"]')).find(n=>Boolean(n.href)),r&&await kn(r.href))?r.href:null}const za=async()=>({name:Va(window),icon:await Ga(window)});async function Ya(e){try{const t=await za();e.handle({jsonrpc:"2.0",id:Ce(),method:"wallet_sendDomainMetadata",params:t},pi)}catch(t){W.error({message:ae.errors.sendSiteMetadata(),originalError:t})}}const Xa=["host","chainId","networkName"];function Bn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Ja(e){for(var t=1;t"u")return;const t=document.createElement("link"),{torusUrl:r}=await hi("production",{check:!1,hash:gi,version:""});t.href=`${r}/popup`,t.crossOrigin="anonymous",t.type="text/html",t.rel="prefetch",t.relList&&t.relList.supports&&t.relList.supports("prefetch")&&document.head.appendChild(t)}catch(t){W.warn(t)}})();class rs{constructor(){let{buttonPosition:t=Le.BOTTOM_LEFT,buttonSize:r=56,modalZIndex:n=99999,apiKey:i="torus-default"}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};P(this,"buttonPosition",Le.BOTTOM_LEFT),P(this,"buttonSize",void 0),P(this,"torusUrl",void 0),P(this,"torusIframe",void 0),P(this,"styleLink",void 0),P(this,"isLoggedIn",void 0),P(this,"isInitialized",void 0),P(this,"torusWidgetVisibility",void 0),P(this,"torusAlert",void 0),P(this,"apiKey",void 0),P(this,"modalZIndex",void 0),P(this,"alertZIndex",void 0),P(this,"torusAlertContainer",void 0),P(this,"isIframeFullScreen",void 0),P(this,"whiteLabel",void 0),P(this,"requestedVerifier",void 0),P(this,"currentVerifier",void 0),P(this,"embedTranslations",void 0),P(this,"ethereum",void 0),P(this,"provider",void 0),P(this,"communicationMux",void 0),P(this,"isLoginCallback",void 0),P(this,"paymentProviders",le.paymentProviders),P(this,"loginHint",""),P(this,"useWalletConnect",void 0),P(this,"isCustomLogin",!1),this.buttonPosition=t,this.buttonSize=r,this.torusUrl="",this.isLoggedIn=!1,this.isInitialized=!1,this.torusWidgetVisibility=!0,this.requestedVerifier="",this.currentVerifier="",this.apiKey=i,Ri(i),this.modalZIndex=n,this.alertZIndex=n+1e3,this.isIframeFullScreen=!1}async init(){let{buildEnv:t=Pa.PRODUCTION,enableLogging:r=!1,enabledVerifiers:n=Za,network:i={host:"mainnet",chainId:null,networkName:"",blockExplorer:"",ticker:"",tickerName:""},loginConfig:o={},showTorusButton:a=!0,integrity:c={check:!1,hash:gi,version:""},whiteLabel:d,skipTKey:m=!1,useWalletConnect:y=!1,mfaLevel:p="default"}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(this.isInitialized)throw new Error("Already initialized");const{torusUrl:h,logLevel:b}=await hi(t,c);W.info(h,"url loaded"),this.torusUrl=h,this.whiteLabel=d,this.useWalletConnect=y,this.isCustomLogin=!!(o&&Object.keys(o).length>0)||!!(d&&Object.keys(d).length>0),W.setDefaultLevel(b),r?W.enableAll():W.disableAll(),this.torusWidgetVisibility=a;const O=new URL(h);O.pathname.endsWith("/")?O.pathname+="popup":O.pathname+="/popup",O.hash=`#isCustomLogin=${this.isCustomLogin}`,this.torusIframe=Je(``),this.torusAlertContainer=Je('
'),this.torusAlertContainer.style.display="none",this.torusAlertContainer.style.setProperty("z-index",this.alertZIndex.toString());const _=window.document.createElement("link");_.setAttribute("rel","stylesheet"),_.setAttribute("type","text/css"),_.setAttribute("href",`${h}/css/widget.css`),this.styleLink=_;const{defaultLanguage:T=Tn(),customTranslations:A={}}=this.whiteLabel||{},U=jn(le.translations,A)[T]||le.translations[Tn()];this.embedTranslations=U.embed;const k=async()=>(await ka(),new Promise((q,j)=>{this.torusIframe.onload=async()=>{this._setupWeb3();const V=this.communicationMux.getStream("init_stream");V.on("data",X=>{const{name:L,data:G,error:H}=X;L==="init_complete"&&G.success?(this.isInitialized=!0,this._displayIframe(this.isIframeFullScreen),q(void 0)):H&&j(new Error(H))}),V.write({name:"init_stream",data:{enabledVerifiers:n,loginConfig:o,whiteLabel:this.whiteLabel,buttonPosition:this.buttonPosition,buttonSize:this.buttonSize,torusWidgetVisibility:this.torusWidgetVisibility,apiKey:this.apiKey,skipTKey:m,network:i,mfaLevel:p}})},window.document.head.appendChild(this.styleLink),window.document.body.appendChild(this.torusIframe),window.document.body.appendChild(this.torusAlertContainer)}));if(t==="production"&&c.check){const q=`${h}/popup`,j=await fetch(q,{cache:"reload"});if(j.headers.get("Cache-Control")!==Qa)throw new Error(`Unexpected Cache-Control headers, got ${j.headers.get("Cache-Control")}`);const V=await j.text(),X=Ka({algorithms:["sha384"]},V);if(W.info(X,"integrity"),X===c.hash)await k();else throw this.clearInit(),new Error("Integrity check failed")}else await k()}login(){let{verifier:t="",login_hint:r=""}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!this.isInitialized)throw new Error("Call init() first");return this.requestedVerifier=t,this.loginHint=r,this.ethereum.enable()}logout(){return new Promise((t,r)=>{if(!this.isLoggedIn){r(new Error("User has not logged in yet"));return}this.communicationMux.getStream("logout").write({name:"logOut"});const i=this.communicationMux.getStream("status");ue(i,"data",a=>{a.loggedIn?r(new Error("Some Error Occured")):(this.isLoggedIn=!1,this.currentVerifier="",this.requestedVerifier="",t())})})}async cleanUp(){this.isLoggedIn&&await this.logout(),this.clearInit()}clearInit(){function t(r){return r instanceof Element||r instanceof HTMLDocument}t(this.styleLink)&&window.document.body.contains(this.styleLink)&&(this.styleLink.remove(),this.styleLink=void 0),t(this.torusIframe)&&window.document.body.contains(this.torusIframe)&&(this.torusIframe.remove(),this.torusIframe=void 0),t(this.torusAlertContainer)&&window.document.body.contains(this.torusAlertContainer)&&(this.torusAlert=void 0,this.torusAlertContainer.remove(),this.torusAlertContainer=void 0),this.isInitialized=!1}hideTorusButton(){this.torusWidgetVisibility=!1,this._sendWidgetVisibilityStatus(!1),this._displayIframe()}showTorusButton(){this.torusWidgetVisibility=!0,this._sendWidgetVisibilityStatus(!0),this._displayIframe()}setProvider(t){let{host:r="mainnet",chainId:n=null,networkName:i=""}=t,o=Si(t,Xa);return new Promise((a,c)=>{const d=this.communicationMux.getStream("provider_change");ue(d,"data",p=>{const{err:h,success:b}=p.data;W.info(p),h?c(h):b?a():c(new Error("some error occured"))});const y=Ce();this._handleWindow(y,{target:"_blank",features:Mn}),d.write({name:"show_provider_change",data:{network:Ja({host:r,chainId:n,networkName:i},o),preopenInstanceId:y,override:!1}})})}showWallet(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const n=this.communicationMux.getStream("show_wallet"),i=t?`/${t}`:"";n.write({name:"show_wallet",data:{path:i}}),ue(n,"data",a=>{if(a.name==="show_wallet_instance"){const{instanceId:c}=a.data,d=new URL(`${this.torusUrl}/wallet${i}`);d.searchParams.append("integrity","true"),d.searchParams.append("instanceId",c),Object.keys(r).forEach(y=>{d.searchParams.append(y,r[y])}),d.hash=`#isCustomLogin=${this.isCustomLogin}`,new Nn({url:d,features:xa}).open()}})}async getPublicAddress(t){let{verifier:r,verifierId:n,isExtended:i=!1}=t;if(!le.supportedVerifierList.includes(r)||!Cn[r])throw new Error("Unsupported verifier");const o=r,a=Cn[r],c=new URL("https://api.tor.us/lookup/torus");return c.searchParams.append("verifier",a),c.searchParams.append("verifierId",n),c.searchParams.append("walletVerifier",o),c.searchParams.append("network","mainnet"),c.searchParams.append("isExtended",i.toString()),Wn(c.href,{headers:{"Content-Type":"application/json; charset=utf-8"}},{useAPIKey:!0})}getUserInfo(t){return new Promise((r,n)=>{if(this.isLoggedIn){const i=this.communicationMux.getStream("user_info_access");i.write({name:"user_info_access_request"}),ue(i,"data",a=>{const{name:c,data:{approved:d,payload:m,rejected:y,newRequest:p}}=a;if(c==="user_info_access_response"){if(d)r(m);else if(y)n(new Error("User rejected the request"));else if(p){const h=this.communicationMux.getStream("user_info");ue(h,"data",_=>{_.name==="user_info_response"&&(_.data.approved?r(_.data.payload):n(new Error("User rejected the request")))});const O=Ce();this._handleWindow(O,{target:"_blank",features:Mn}),h.write({name:"user_info_request",data:{message:t,preopenInstanceId:O}})}}})}else n(new Error("User has not logged in yet"))})}initiateTopup(t,r){return new Promise((n,i)=>{if(this.isInitialized){const{errors:o,isValid:a}=Ba(t,r);if(!a){i(new Error(JSON.stringify(o)));return}const c=this.communicationMux.getStream("topup");ue(c,"data",y=>{y.name==="topup_response"&&(y.data.success?n(y.data.success):i(new Error(y.data.error)))});const m=Ce();this._handleWindow(m),c.write({name:"topup_request",data:{provider:t,params:r,preopenInstanceId:m}})}else i(new Error("Torus is not initialized yet"))})}async loginWithPrivateKey(t){const{privateKey:r,userInfo:n}=t;return new Promise((i,o)=>{if(this.isInitialized){if(pe.Buffer.from(r,"hex").length!==32){o(new Error("Invalid private key, Please provide a 32 byte valid secp25k1 private key"));return}const a=this.communicationMux.getStream("login_with_private_key");ue(a,"data",d=>{d.name==="login_with_private_key_response"&&(d.data.success?i(d.data.success):o(new Error(d.data.error)))}),a.write({name:"login_with_private_key_request",data:{privateKey:r,userInfo:n}})}else o(new Error("Torus is not initialized yet"))})}async showWalletConnectScanner(){if(!this.useWalletConnect)throw new Error("Set `useWalletConnect` as true in init function options to use wallet connect scanner");return new Promise((t,r)=>{if(this.isLoggedIn){const n=this.communicationMux.getStream("wallet_connect_stream");ue(n,"data",o=>{o.name==="wallet_connect_stream_res"&&(o.data.success?t(o.data.success):r(new Error(o.data.error)),this._displayIframe())}),n.write({name:"wallet_connect_stream_req"}),this._displayIframe(!0)}else r(new Error("User has not logged in yet"))})}_handleWindow(t){let{url:r,target:n,features:i}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t){const o=this.communicationMux.getStream("window"),a=new URL(r||`${this.torusUrl}/redirect?preopenInstanceId=${t}`);a.hash?a.hash+=`&isCustomLogin=${this.isCustomLogin}`:a.hash=`#isCustomLogin=${this.isCustomLogin}`;const c=new Nn({url:a,target:n,features:i});if(c.open(),!c.window){this._createPopupBlockAlert(t,a.href);return}o.write({name:"opened_window",data:{preopenInstanceId:t}});const d=m=>{let{preopenInstanceId:y,close:p}=m;y===t&&p&&(c.close(),o.removeListener("data",d))};o.on("data",d),c.once("close",()=>{o.write({data:{preopenInstanceId:t,closed:!0}}),o.removeListener("data",d)})}}_setEmbedWhiteLabel(t){const{theme:r}=this.whiteLabel||{};if(r){const{isDark:n=!1,colors:i={}}=r;n&&t.classList.add("torus-dark"),i.torusBrand1&&t.style.setProperty("--torus-brand-1",i.torusBrand1),i.torusGray2&&t.style.setProperty("--torus-gray-2",i.torusGray2)}}_getLogoUrl(){var t,r;let n=`${this.torusUrl}/images/torus_icon-blue.svg`;if((t=this.whiteLabel)!==null&&t!==void 0&&(r=t.theme)!==null&&r!==void 0&&r.isDark){var i;n=((i=this.whiteLabel)===null||i===void 0?void 0:i.logoLight)||n}else{var o;n=((o=this.whiteLabel)===null||o===void 0?void 0:o.logoDark)||n}return n}_sendWidgetVisibilityStatus(t){this.communicationMux.getStream("torus-widget-visibility").write({data:t})}_displayIframe(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;const r={},n=this.buttonSize+14;if(t)r.display="block",r.width="100%",r.height="100%",r.top="0px",r.right="0px",r.left="0px",r.bottom="0px";else switch(r.display=this.torusWidgetVisibility?"block":"none",r.height=`${n}px`,r.width=`${n}px`,this.buttonPosition){case Le.TOP_LEFT:r.top="0px",r.left="0px",r.right="auto",r.bottom="auto";break;case Le.TOP_RIGHT:r.top="0px",r.right="0px",r.left="auto",r.bottom="auto";break;case Le.BOTTOM_RIGHT:r.bottom="0px",r.right="0px",r.top="auto",r.left="auto";break;case Le.BOTTOM_LEFT:default:r.bottom="0px",r.left="0px",r.top="auto",r.right="auto";break}Object.assign(this.torusIframe.style,r),this.isIframeFullScreen=t}_setupWeb3(){W.info("setupWeb3 running");const t=new un({name:"embed_metamask",target:"iframe_metamask",targetWindow:this.torusIframe.contentWindow,targetOrigin:new URL(this.torusUrl).origin}),r=new un({name:"embed_comm",target:"iframe_comm",targetWindow:this.torusIframe.contentWindow,targetOrigin:new URL(this.torusUrl).origin}),n=new At(t),i=y=>{const p=n[y];n[y]=function(b){if(b&&b==="eth_requestAccounts")return n.enable();for(var O=arguments.length,_=new Array(O>1?O-1:0),T=1;Tnew Promise((y,p)=>{n.sendAsync({jsonrpc:"2.0",id:Ce(),method:"eth_requestAccounts",params:[]},(h,b)=>{const{result:O}=b||{};if(h)setTimeout(()=>{p(h)},50);else if(Array.isArray(O)&&O.length>0){const _=()=>{if(this.requestedVerifier!==""&&this.currentVerifier!==this.requestedVerifier){const{requestedVerifier:T}=this;this.logout().then(A=>{this.requestedVerifier=T,this._showLoginPopup(!0,y,p)}).catch(A=>p(A))}else y(O)};this.isLoggedIn?_():this.isLoginCallback=_}else this._showLoginPopup(!0,y,p)})}),n.tryPreopenHandle=(y,p)=>{const h=y;if(!Array.isArray(h)&&es.includes(h.method)){const b=Ce();this._handleWindow(b,{target:"_blank",features:In}),h.preopenInstanceId=b}n._rpcEngine.handle(h,p)};const o=new Proxy(n,{deleteProperty:()=>!0});this.ethereum=o;const a=Lo(r);this.communicationMux=a,a.getStream("window").on("data",y=>{y.name==="create_window"&&this._createPopupBlockAlert(y.data.preopenInstanceId,y.data.url)}),a.getStream("widget").on("data",y=>{const{data:p}=y;this._displayIframe(p)}),a.getStream("status").on("data",y=>{y.loggedIn?(this.isLoggedIn=y.loggedIn,this.currentVerifier=y.verifier):this._displayIframe(),this.isLoginCallback&&(this.isLoginCallback(),delete this.isLoginCallback)}),this.provider=o,this.provider.shouldSendMetadata&&Ya(this.provider._rpcEngine),n._initializeState(),W.debug("Torus - injected provider")}_showLoginPopup(t,r,n){const i=a=>{const{err:c,selectedAddress:d}=a;c?(W.error(c),n&&n(c)):r&&r([d]),this.isIframeFullScreen&&this._displayIframe()},o=this.communicationMux.getStream("oauth");if(!this.requestedVerifier)this._displayIframe(!0),ue(o,"data",i),o.write({name:"oauth_modal",data:{calledFromEmbed:t}});else{ue(o,"data",i);const a=Ce();this._handleWindow(a),o.write({name:"oauth",data:{calledFromEmbed:t,verifier:this.requestedVerifier,preopenInstanceId:a,login_hint:this.loginHint}})}}_createPopupBlockAlert(t,r){const n=this._getLogoUrl(),i=Je(`

${this.embedTranslations.actionRequired}

${this.embedTranslations.pendingAction}

`),o=Je(`
`),a=Je('
');a.appendChild(o),i.appendChild(a);const c=()=>{o.addEventListener("click",()=>{this._handleWindow(t,{url:r,target:"_blank",features:In}),i.remove(),this.torusAlertContainer.children.length===0&&(this.torusAlertContainer.style.display="none")})};this._setEmbedWhiteLabel(i),Rn(()=>{this.torusAlertContainer.style.display="block",this.torusAlertContainer.appendChild(i)}),Rn(c)}}export{Le as BUTTON_POSITION,Xe as LOGIN_PROVIDER,F as PAYMENT_PROVIDER,Y as SUPPORTED_PAYMENT_NETWORK,Pa as TORUS_BUILD_ENV,At as TorusInpageProvider,Cn as WALLET_OPENLOGIN_VERIFIER_MAP,Oe as WALLET_VERIFIERS,rs as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js.meta deleted file mode 100644 index 6cbb5b5a6..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/torus.esm-d09ce5f9.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ab53e097527ed8141be14a7b5afb8799 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js deleted file mode 100644 index e6065ee69..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js +++ /dev/null @@ -1,10 +0,0 @@ -const A=` - - - - - - - - -`;export{A as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js.meta deleted file mode 100644 index acc84409a..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tp-4b793710.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 1f09ffcf0e9bd424196375e005ed9304 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js deleted file mode 100644 index 6d00e2813..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js +++ /dev/null @@ -1,8 +0,0 @@ -const s=` - - - -`;export{s as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js.meta deleted file mode 100644 index 8f969959f..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/trust-59d19f99.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e8f116c6227b4cb4e8ddcabd993a6707 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js deleted file mode 100644 index 836131f06..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js +++ /dev/null @@ -1,14 +0,0 @@ -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */var p=function(t,n){return p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,o){e.__proto__=o}||function(e,o){for(var i in o)o.hasOwnProperty(i)&&(e[i]=o[i])},p(t,n)};function g(t,n){p(t,n);function e(){this.constructor=t}t.prototype=n===null?Object.create(n):(e.prototype=n.prototype,new e)}var w=function(){return w=Object.assign||function(n){for(var e,o=1,i=arguments.length;o=0;f--)(a=t[f])&&(r=(i<3?a(r):i>3?a(n,e,r):a(n,e))||r);return i>3&&r&&Object.defineProperty(n,e,r),r}function j(t,n){return function(e,o){n(e,o,t)}}function P(t,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,n)}function x(t,n,e,o){function i(r){return r instanceof e?r:new e(function(a){a(r)})}return new(e||(e=Promise))(function(r,a){function f(l){try{u(o.next(l))}catch(y){a(y)}}function s(l){try{u(o.throw(l))}catch(y){a(y)}}function u(l){l.done?r(l.value):i(l.value).then(f,s)}u((o=o.apply(t,n||[])).next())})}function I(t,n){var e={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},o,i,r,a;return a={next:f(0),throw:f(1),return:f(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function f(u){return function(l){return s([u,l])}}function s(u){if(o)throw new TypeError("Generator is already executing.");for(;e;)try{if(o=1,i&&(r=u[0]&2?i.return:u[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,u[1])).done)return r;switch(i=0,r&&(u=[u[0]&2,r.value]),u[0]){case 0:case 1:r=u;break;case 4:return e.label++,{value:u[1],done:!1};case 5:e.label++,i=u[1],u=[0];continue;case 7:u=e.ops.pop(),e.trys.pop();continue;default:if(r=e.trys,!(r=r.length>0&&r[r.length-1])&&(u[0]===6||u[0]===2)){e=0;continue}if(u[0]===3&&(!r||u[1]>r[0]&&u[1]=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function d(t,n){var e=typeof Symbol=="function"&&t[Symbol.iterator];if(!e)return t;var o=e.call(t),i,r=[],a;try{for(;(n===void 0||n-- >0)&&!(i=o.next()).done;)r.push(i.value)}catch(f){a={error:f}}finally{try{i&&!i.done&&(e=o.return)&&e.call(o)}finally{if(a)throw a.error}}return r}function R(){for(var t=[],n=0;n1||f(c,_)})})}function f(c,_){try{s(o[c](_))}catch(b){y(r[0][3],b)}}function s(c){c.value instanceof h?Promise.resolve(c.value.v).then(u,l):y(r[0][2],c)}function u(c){f("next",c)}function l(c){f("throw",c)}function y(c,_){c(_),r.shift(),r.length&&f(r[0][0],r[0][1])}}function G(t){var n,e;return n={},o("next"),o("throw",function(i){throw i}),o("return"),n[Symbol.iterator]=function(){return this},n;function o(i,r){n[i]=t[i]?function(a){return(e=!e)?{value:h(t[i](a)),done:i==="return"}:r?r(a):a}:r}}function F(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=t[Symbol.asyncIterator],e;return n?n.call(t):(t=typeof v=="function"?v(t):t[Symbol.iterator](),e={},o("next"),o("throw"),o("return"),e[Symbol.asyncIterator]=function(){return this},e);function o(r){e[r]=t[r]&&function(a){return new Promise(function(f,s){a=t[r](a),i(f,s,a.done,a.value)})}}function i(r,a,f,s){Promise.resolve(s).then(function(u){r({value:u,done:f})},a)}}function q(t,n){return Object.defineProperty?Object.defineProperty(t,"raw",{value:n}):t.raw=n,t}function z(t){if(t&&t.__esModule)return t;var n={};if(t!=null)for(var e in t)Object.hasOwnProperty.call(t,e)&&(n[e]=t[e]);return n.default=t,n}function B(t){return t&&t.__esModule?t:{default:t}}function M(t,n){if(!n.has(t))throw new TypeError("attempted to get private field on non-instance");return n.get(t)}function V(t,n,e){if(!n.has(t))throw new TypeError("attempted to set private field on non-instance");return n.set(t,e),e}const C=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return w},__asyncDelegator:G,__asyncGenerator:D,__asyncValues:F,__await:h,__awaiter:x,__classPrivateFieldGet:M,__classPrivateFieldSet:V,__createBinding:T,__decorate:S,__exportStar:E,__extends:g,__generator:I,__importDefault:B,__importStar:z,__makeTemplateObject:q,__metadata:P,__param:j,__read:d,__rest:O,__spread:R,__spreadArrays:A,__values:v},Symbol.toStringTag,{value:"Module"}));export{g as _,C as t}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js.meta deleted file mode 100644 index 3ca82eb99..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/tslib.es6-c2094241.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 33149aeab91e12c4099dcef2d5b0ca53 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js deleted file mode 100644 index f3ff2c91e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js +++ /dev/null @@ -1,8 +0,0 @@ -const h=``;export{h as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js.meta deleted file mode 100644 index 9f9c5be06..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/xdefi-07e71929.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e906f3b08dd05c04d9c6307e9c6c956f -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js deleted file mode 100644 index 960407bcc..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js +++ /dev/null @@ -1,6 +0,0 @@ -const t=` - - - - -`;export{t as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js.meta deleted file mode 100644 index 92c99b321..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zeal-8b158173.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 12365d53e749c0642b0f2a555c0974d9 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js deleted file mode 100644 index 423db498a..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js +++ /dev/null @@ -1,5 +0,0 @@ -const C=` - - - -`;export{C as default}; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js.meta deleted file mode 100644 index 24b07511b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zerion-d2dfe88d.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 961b09cec0d78514d8dbe849156f83eb -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zipWith-29b37a07.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zipWith-29b37a07.js deleted file mode 100644 index 27d95121b..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-2020x/assets/zipWith-29b37a07.js +++ /dev/null @@ -1 +0,0 @@ -import{c as V,b as ln}from"./skip-2d52d7ac.js";import{aN as d,ac as v,a1 as cn,aO as kn,X as F,a0 as R,a9 as S,aP as M,ah as U,a2 as A,aj as B,aQ as G,aR as C,ab as x,aa as Y,a5 as O,af as I,a4 as Wn,aS as vn,ag as E,Y as T,$ as N,aT as k,aU as $,ao as sn,aE as W,ay as Fn,as as dn,aK as q,aC as Cn,a3 as J,ai as Q,aB as hn,aV as pn,aW as Mn,aD as Ln,al as zn,am as Dn,aJ as P,aX as Un}from"./index-b28afd98.js";function $n(){return d(function(t,n){var e=null;t._refCount++;var r=v(n,void 0,void 0,void 0,function(){if(!t||t._refCount<=0||0<--t._refCount){e=null;return}var a=t._connection,u=e;e=null,a&&(!u||a===u)&&a.unsubscribe(),n.unsubscribe()});t.subscribe(r),r.closed||(e=t.connect())})}var Z=function(t){cn(n,t);function n(e,r){var a=t.call(this)||this;return a.source=e,a.subjectFactory=r,a._subject=null,a._refCount=0,a._connection=null,kn(e)&&(a.lift=e.lift),a}return n.prototype._subscribe=function(e){return this.getSubject().subscribe(e)},n.prototype.getSubject=function(){var e=this._subject;return(!e||e.isStopped)&&(this._subject=this.subjectFactory()),this._subject},n.prototype._teardown=function(){this._refCount=0;var e=this._connection;this._subject=this._connection=null,e==null||e.unsubscribe()},n.prototype.connect=function(){var e=this,r=this._connection;if(!r){r=this._connection=new F;var a=this.getSubject();r.add(this.source.subscribe(v(a,void 0,function(){e._teardown(),a.complete()},function(u){e._teardown(),a.error(u)},function(){return e._teardown()}))),r.closed&&(this._connection=null,r=F.EMPTY)}return r},n.prototype.refCount=function(){return $n()(this)},n}(R),qn=function(t){cn(n,t);function n(){var e=t!==null&&t.apply(this,arguments)||this;return e._value=null,e._hasValue=!1,e._isComplete=!1,e}return n.prototype._checkFinalizedStatuses=function(e){var r=this,a=r.hasError,u=r._hasValue,i=r._value,o=r.thrownError,f=r.isStopped,l=r._isComplete;a?e.error(o):(f||l)&&(u&&e.next(i),e.complete())},n.prototype.next=function(e){this.isStopped||(this._value=e,this._hasValue=!0)},n.prototype.complete=function(){var e=this,r=e._hasValue,a=e._value,u=e._isComplete;u||(this._isComplete=!0,r&&t.prototype.next.call(this,a),t.prototype.complete.call(this))},n}(S);function mn(){for(var t=[],n=0;n0&&w(a)},void 0,void 0,function(){h!=null&&h.closed||h==null||h.unsubscribe(),y=null})),!p&&w(r!=null?typeof r=="number"?r:+r-f.now():a)})}function Xn(t){throw new Jn(t)}var Yn=Array.isArray,On=Object.getPrototypeOf,Qn=Object.prototype,Zn=Object.keys;function Hn(t){if(t.length===1){var n=t[0];if(Yn(n))return{args:n,keys:null};if(_n(n)){var e=Zn(n);return{args:e.map(function(r){return n[r]}),keys:e}}}return{args:t,keys:null}}function _n(t){return t&&typeof t=="object"&&On(t)===Qn}function nt(t,n){return t.reduce(function(e,r,a){return e[r]=n[a],e},{})}function tt(){for(var t=[],n=0;n=0?C(l,u,g,i,!0):s=!0,g();var h=v(l,function(y){var p,w,b=c.slice();try{for(var j=k(b),D=j.next();!D.done;D=j.next()){var tn=D.value,en=tn.buffer;en.push(y),o<=en.length&&m(tn)}}catch(jn){p={error:jn}}finally{try{D&&!D.done&&(w=j.return)&&w.call(j)}finally{if(p)throw p.error}}},function(){for(;c!=null&&c.length;)l.next(c.shift().buffer);h==null||h.unsubscribe(),l.complete(),l.unsubscribe()},void 0,function(){return c=null});f.subscribe(h)})}function kt(t,n){return d(function(e,r){var a=[];x(t).subscribe(v(r,function(u){var i=[];a.push(i);var o=new F,f=function(){$(a,i),r.next(i),o.unsubscribe()};o.add(x(n(u)).subscribe(v(r,f,E)))},E)),e.subscribe(v(r,function(u){var i,o;try{for(var f=k(a),l=f.next();!l.done;l=f.next()){var c=l.value;c.push(u)}}catch(s){i={error:s}}finally{try{l&&!l.done&&(o=f.return)&&o.call(f)}finally{if(i)throw i.error}}},function(){for(;a.length>0;)r.next(a.shift());r.complete()}))})}function Wt(t){return d(function(n,e){var r=null,a=null,u=function(){a==null||a.unsubscribe();var i=r;r=[],i&&e.next(i),x(t()).subscribe(a=v(e,u,E))};u(),n.subscribe(v(e,function(i){return r==null?void 0:r.push(i)},function(){r&&e.next(r),e.complete()},void 0,function(){return r=a=null}))})}function it(t){return d(function(n,e){var r=null,a=!1,u;r=n.subscribe(v(e,void 0,void 0,function(i){u=x(t(i,it(t)(n))),r?(r.unsubscribe(),r=null,u.subscribe(e)):a=!0})),a&&(r.unsubscribe(),r=null,u.subscribe(e))})}function bn(t,n,e,r,a){return function(u,i){var o=e,f=n,l=0;u.subscribe(v(i,function(c){var s=l++;f=o?t(f,c,s):(o=!0,c),r&&i.next(f)},a&&function(){o&&i.next(f),i.complete()}))}}function K(t,n){return d(bn(t,n,arguments.length>=2,!1,!0))}var ot=function(t,n){return t.push(n),t};function ft(){return d(function(t,n){K(ot,[])(t).subscribe(n)})}function En(t,n){return sn(ft(),W(function(e){return t(e)}),n?O(n):I)}function lt(t){return En(tt,t)}var Ft=lt;function Sn(){for(var t=[],n=0;n=2;return function(r){return r.pipe(Q(function(a,u){return u===t}),q(1),e?_(n):nn(function(){return new an}))}}function Bt(){for(var t=[],n=0;n=2;return function(r){return r.pipe(t?Q(function(a,u){return t(a,u,r)}):I,q(1),e?_(n):nn(function(){return new J}))}}function Zt(t,n,e,r){return d(function(a,u){var i;!n||typeof n=="function"?i=n:(e=n.duration,i=n.element,r=n.connector);var o=new Map,f=function(h){o.forEach(h),h(u)},l=function(h){return f(function(y){return y.error(h)})},c=0,s=!1,m=new vn(u,function(h){try{var y=t(h),p=o.get(y);if(!p){o.set(y,p=r?r():new S);var w=g(y,p);if(u.next(w),e){var b=v(p,function(){p.complete(),b==null||b.unsubscribe()},void 0,void 0,function(){return o.delete(y)});m.add(x(e(w)).subscribe(b))}}p.next(i?i(h):h)}catch(j){l(j)}},function(){return f(function(h){return h.complete()})},l,function(){return o.clear()},function(){return s=!0,c===0});a.subscribe(m);function g(h,y){var p=new R(function(w){c++;var b=y.subscribe(w);return function(){b.unsubscribe(),--c===0&&s&&m.unsubscribe()}});return p.key=h,p}})}function Ht(){return d(function(t,n){t.subscribe(v(n,function(){n.next(!1),n.complete()},function(){n.next(!0),n.complete()}))})}function mt(t){return t<=0?function(){return B}:d(function(n,e){var r=[];n.subscribe(v(e,function(a){r.push(a),t=2;return function(r){return r.pipe(t?Q(function(a,u){return t(a,u,r)}):I,mt(1),e?_(n):nn(function(){return new J}))}}function ne(){return d(function(t,n){t.subscribe(v(n,function(e){n.next(X.createNext(e))},function(){n.next(X.createComplete()),n.complete()},function(e){n.next(X.createError(e)),n.complete()}))})}function te(t){return K(A(t)?function(n,e){return t(n,e)>0?n:e}:function(n,e){return n>e?n:e})}var ee=W;function re(t,n,e){return e===void 0&&(e=1/0),A(n)?W(function(){return t},n,e):(typeof n=="number"&&(e=n),W(function(){return t},e))}function ae(t,n,e){return e===void 0&&(e=1/0),d(function(r,a){var u=n;return pn(r,a,function(i,o){return t(u,i,o)},e,function(i){u=i},!1,void 0,function(){return u=null})})}function gt(){for(var t=[],n=0;n=2,!0))}function xe(t,n){return n===void 0&&(n=function(e,r){return e===r}),d(function(e,r){var a=fn(),u=fn(),i=function(f){r.next(f),r.complete()},o=function(f,l){var c=v(r,function(s){var m=l.buffer,g=l.complete;m.length===0?g?i(!1):f.buffer.push(s):!n(s,m.shift())&&i(!1)},function(){f.complete=!0;var s=l.complete,m=l.buffer;s&&i(m.length===0),c==null||c.unsubscribe()});return c};e.subscribe(o(a,u)),x(t).subscribe(o(u,a))})}function fn(){return{buffer:[],complete:!1}}function be(t){return d(function(n,e){var r=!1,a,u=!1,i=0;n.subscribe(v(e,function(o){u=!0,(!t||t(o,i++,n))&&(r&&e.error(new Gn("Too many matching values")),r=!0,a=o)},function(){r?(e.next(a),e.complete()):e.error(u?new Bn("No matching values"):new J)}))})}function Ee(t){return t<=0?I:d(function(n,e){var r=new Array(t),a=0;return n.subscribe(v(e,function(u){var i=a++;if(i0?n:t;return d(function(r,a){var u=[new S],i=[],o=0;a.next(u[0].asObservable()),r.subscribe(v(a,function(f){var l,c;try{for(var s=k(u),m=s.next();!m.done;m=s.next()){var g=m.value;g.next(f)}}catch(p){l={error:p}}finally{try{m&&!m.done&&(c=s.return)&&c.call(s)}finally{if(l)throw l.error}}var h=o-t+1;if(h>=0&&h%e===0&&u.shift().complete(),++o%e===0){var y=new S;u.push(y),a.next(y.asObservable())}},function(){for(;u.length>0;)u.shift().complete();a.complete()},function(f){for(;u.length>0;)u.shift().error(f);a.error(f)},function(){i=null,u=null}))})}function Le(t){for(var n,e,r=[],a=1;a=0?C(l,u,g,i,!0):s=!0,g();var h=function(p){return c.slice().forEach(p)},y=function(p){h(function(w){var b=w.window;return p(b)}),p(l),l.unsubscribe()};return f.subscribe(v(l,function(p){h(function(w){w.window.next(p),o<=++w.seen&&m(w)})},function(){return y(function(p){return p.complete()})},function(p){return y(function(w){return w.error(p)})})),function(){c=null}})}function ze(t,n){return d(function(e,r){var a=[],u=function(i){for(;0 - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - - This version of the GNU Lesser General Public License incorporates -the terms and conditions of version 3 of the GNU General Public -License, supplemented by the additional permissions listed below. - - 0. Additional Definitions. - - As used herein, "this License" refers to version 3 of the GNU Lesser -General Public License, and the "GNU GPL" refers to version 3 of the GNU -General Public License. - - "The Library" refers to a covered work governed by this License, -other than an Application or a Combined Work as defined below. - - An "Application" is any work that makes use of an interface provided -by the Library, but which is not otherwise based on the Library. -Defining a subclass of a class defined by the Library is deemed a mode -of using an interface provided by the Library. - - A "Combined Work" is a work produced by combining or linking an -Application with the Library. The particular version of the Library -with which the Combined Work was made is also called the "Linked -Version". - - The "Minimal Corresponding Source" for a Combined Work means the -Corresponding Source for the Combined Work, excluding any source code -for portions of the Combined Work that, considered in isolation, are -based on the Application, and not on the Linked Version. - - The "Corresponding Application Code" for a Combined Work means the -object code and/or source code for the Application, including any data -and utility programs needed for reproducing the Combined Work from the -Application, but excluding the System Libraries of the Combined Work. - - 1. Exception to Section 3 of the GNU GPL. - - You may convey a covered work under sections 3 and 4 of this License -without being bound by section 3 of the GNU GPL. - - 2. Conveying Modified Versions. - - If you modify a copy of the Library, and, in your modifications, a -facility refers to a function or data to be supplied by an Application -that uses the facility (other than as an argument passed when the -facility is invoked), then you may convey a copy of the modified -version: - - a) under this License, provided that you make a good faith effort to - ensure that, in the event an Application does not supply the - function or data, the facility still operates, and performs - whatever part of its purpose remains meaningful, or - - b) under the GNU GPL, with none of the additional permissions of - this License applicable to that copy. - - 3. Object Code Incorporating Material from Library Header Files. - - The object code form of an Application may incorporate material from -a header file that is part of the Library. You may convey such object -code under terms of your choice, provided that, if the incorporated -material is not limited to numerical parameters, data structure -layouts and accessors, or small macros, inline functions and templates -(ten or fewer lines in length), you do both of the following: - - a) Give prominent notice with each copy of the object code that the - Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the object code with a copy of the GNU GPL and this license - document. - - 4. Combined Works. - - You may convey a Combined Work under terms of your choice that, -taken together, effectively do not restrict modification of the -portions of the Library contained in the Combined Work and reverse -engineering for debugging such modifications, if you also do each of -the following: - - a) Give prominent notice with each copy of the Combined Work that - the Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the Combined Work with a copy of the GNU GPL and this license - document. - - c) For a Combined Work that displays copyright notices during - execution, include the copyright notice for the Library among - these notices, as well as a reference directing the user to the - copies of the GNU GPL and this license document. - - d) Do one of the following: - - 0) Convey the Minimal Corresponding Source under the terms of this - License, and the Corresponding Application Code in a form - suitable for, and under terms that permit, the user to - recombine or relink the Application with a modified version of - the Linked Version to produce a modified Combined Work, in the - manner specified by section 6 of the GNU GPL for conveying - Corresponding Source. - - 1) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (a) uses at run time - a copy of the Library already present on the user's computer - system, and (b) will operate properly with a modified version - of the Library that is interface-compatible with the Linked - Version. - - e) Provide Installation Information, but only if you would otherwise - be required to provide such information under section 6 of the - GNU GPL, and only to the extent that such information is - necessary to install and execute a modified version of the - Combined Work produced by recombining or relinking the - Application with a modified version of the Linked Version. (If - you use option 4d0, the Installation Information must accompany - the Minimal Corresponding Source and Corresponding Application - Code. If you use option 4d1, you must provide the Installation - Information in the manner specified by section 6 of the GNU GPL - for conveying Corresponding Source.) - - 5. Combined Libraries. - - You may place library facilities that are a work based on the -Library side by side in a single library together with other library -facilities that are not Applications and are not covered by this -License, and convey such a combined library under terms of your -choice, if you do both of the following: - - a) Accompany the combined library with a copy of the same work based - on the Library, uncombined with any other library facilities, - conveyed under the terms of this License. - - b) Give prominent notice with the combined library that part of it - is a work based on the Library, and explaining where to find the - accompanying uncombined form of the same work. - - 6. Revised Versions of the GNU Lesser General Public License. - - The Free Software Foundation may publish revised and/or new versions -of the GNU Lesser General Public License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. - - Each version is given a distinguishing version number. If the -Library as you received it specifies that a certain numbered version -of the GNU Lesser General Public License "or any later version" -applies to it, you have the option of following the terms and -conditions either of that published version or of any later version -published by the Free Software Foundation. If the Library as you -received it does not specify a version number of the GNU Lesser -General Public License, you may choose any version of the GNU Lesser -General Public License ever published by the Free Software Foundation. - - If the Library as you received it specifies that a proxy can decide -whether future versions of the GNU Lesser General Public License shall -apply, that proxy's public statement of acceptance of any version is -permanent authorization for you to choose that version for the -Library. diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/LICENSE.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/LICENSE.meta deleted file mode 100644 index 4f58b5ab1..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/LICENSE.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a82fcdba87d6a974c868b5df8fc7cb32 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md deleted file mode 100644 index 8d1e264ad..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md +++ /dev/null @@ -1,64 +0,0 @@ -# Unity ^2020.1.0 Web3GL Template - -## Methods in Browser - -![](https://user-images.githubusercontent.com/19412160/149653806-b2c4ca54-1986-4481-bd61-721dbd8a7967.png) - -Dispay login modal: - -```javascript -window.web3gl.connect(); -``` - -Get Network: - -```javascript -window.web3gl.networkId; -``` - -Get Connected Address: - -```javascript -window.web3gl.connectAccount; -``` - -To Send Transaction: - -```javascript -const to = "0xdD4c825203f97984e7867F11eeCc813A036089D1"; -const value = "12300000000000000"; -const gasLimit = "21000"; // gas limit -const gasPrice = "33333333333"; -window.web3gl.sendTransaction(to, value, gasLimit, gasPrice); -``` - -To Interact with Contract: - -```javascript -const method = "increment"; -const abi = `[ { "inputs": [], "name": "increment", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "x", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ]`; -const contract = "0xB6B8bB1e16A6F73f7078108538979336B9B7341C"; -const args = "[]"; -const value = "0"; -const gasLimit = "222222"; // gas limit -const gasPrice = "333333333333"; -window.web3gl.sendContract(method, abi, contract, args, value, gasLimit, gasPrice); -``` - -## Enable Torus - -In `web3/index.js` - -Uncomment - -```javascript -document.body.appendChild(Object.assign(document.createElement("script"), { type: "text/javascript", src: "https://unpkg.com/@toruslabs/torus-embed" })); -``` - -```javascript - const providerOptions = { - torus: { - package: Torus, - } - }; -``` diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md.meta deleted file mode 100644 index f90edde8e..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/README.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 1a20cb29590b664428adcde8ae86d92c -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/favicon.ico b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/favicon.ico deleted file mode 100644 index dd6bf7e9cec4d87389fad00e34cd385321d748e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13275 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 b05ANO@4xyR$aLsufT!Qj{e3+6SMUEH(9pSK diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/fullscreen-button.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/fullscreen-button.png deleted file mode 100644 index e7b6496fc9c99bf761524e2b962b6de8bfca90d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 175 zcmeAS@N?(olHy`uVBq!ia0vp^Y9P$P3?%12mYf5mqyv0HT;`!cG1MbP0l+XkK D*ti=j diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-light.png.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-light.png.meta deleted file mode 100644 index bb13afb59..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-empty-light.png.meta +++ /dev/null @@ -1,135 +0,0 @@ -fileFormatVersion: 2 -guid: 39f029297d41c9548b0e4a900a5a3e96 -TextureImporter: - internalIDToNameTable: [] - externalObjects: {} - serializedVersion: 12 - mipmaps: - mipMapMode: 0 - enableMipMap: 0 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - streamingMipmaps: 0 - streamingMipmapsPriority: 0 - vTOnly: 0 - ignoreMasterTextureLimit: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 0 - seamlessCubemap: 0 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 1 - aniso: 1 - mipBias: 0 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 1 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 1 - spriteTessellationDetail: -1 - textureType: 8 - textureShape: 1 - singleChannelComponent: 0 - flipbookRows: 1 - flipbookColumns: 1 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - ignorePngGamma: 0 - applyGammaDecoding: 0 - cookieLightType: 0 - platformSettings: - - serializedVersion: 3 - buildTarget: DefaultTexturePlatform - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: Standalone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: Server - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: WebGL - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: 5e97eb03825dee720800000000000000 - internalID: 0 - vertices: [] - indices: - edges: [] - weights: [] - secondaryTextures: [] - nameFileIdTable: {} - spritePackingTag: - pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-full-dark.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/progress-bar-full-dark.png deleted file mode 100644 index c432c8666d955307ec7c690ef3624e50093513fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74 zcmeAS@N?(olHy`uVBq!ia0vp^y+AC)2qYN%L=)x#DM3#c$B+ufXM;q>KZ6LR^9Le-gp=sgIg~+5}31 z{DK(-6bu{!5(*mn=da&?{{DMqsirOl2Id2vE{-7;ac}3mUUx@9pt+GjQ6=Wy|IFyn zResy=9gz-6Q~LTNeXIMgDSY1yIA<(>9esM&_pg-^de3gvzp4h=krUU#>$kqYq^L1rVd0*&Jv#nv$3EJ< zTWujJz|$WQqCL%1o|w6r>Am9;o7Smu^O$YgRmJRSY`GT|Ur%gr zyRPu~wTYh(1@sNyH;UD_sx{8erWX__Y0Mr9^Qbq4I^iG84c z*_!{xw$0BpPi=TOWymk8hmf z(v}-P((2l$%sL{L=bD+QX}a!&-KuA7kJ4qYbR6&IdT=qWX0laR<$=q|vwtd;YMl7| zKW2UD6s^ySCRfB&e_gDPn z)ZeJ~r5V|$*#Di0AuJfkH z@vqvxk!R_Yf3i$Z1$ORuQowx9;OXk;vd$@?2>{eDBTxVU diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-dark.png.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-dark.png.meta deleted file mode 100644 index 0755eadc5..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-dark.png.meta +++ /dev/null @@ -1,135 +0,0 @@ -fileFormatVersion: 2 -guid: a95798d865fe8334e8eccdf20ba920a4 -TextureImporter: - internalIDToNameTable: [] - externalObjects: {} - serializedVersion: 12 - mipmaps: - mipMapMode: 0 - enableMipMap: 0 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - streamingMipmaps: 0 - streamingMipmapsPriority: 0 - vTOnly: 0 - ignoreMasterTextureLimit: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 0 - seamlessCubemap: 0 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 1 - aniso: 1 - mipBias: 0 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 1 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 1 - spriteTessellationDetail: -1 - textureType: 8 - textureShape: 1 - singleChannelComponent: 0 - flipbookRows: 1 - flipbookColumns: 1 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - ignorePngGamma: 0 - applyGammaDecoding: 0 - cookieLightType: 0 - platformSettings: - - serializedVersion: 3 - buildTarget: DefaultTexturePlatform - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: Standalone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: Server - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: WebGL - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: 5e97eb03825dee720800000000000000 - internalID: 0 - vertices: [] - indices: - edges: [] - weights: [] - secondaryTextures: [] - nameFileIdTable: {} - spritePackingTag: - pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-light.png b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/TemplateData/unity-logo-light.png deleted file mode 100644 index ad281ab10e41d656484ea07a27b55c09b9ce233c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1108 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 - - - - - Unity WebGL Player | {{{ PRODUCT_NAME }}} - - - - -
- -
- -
-
-
-
-
- -
- - - - diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/index.html.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/index.html.meta deleted file mode 100644 index b244f957d..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/index.html.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 2678f2c3a41d01b4d964eb938532662b -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js deleted file mode 100644 index 0681866ba..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js +++ /dev/null @@ -1,25 +0,0 @@ -/* -Used to set the network: https://chainlist.org/ -1 Mainnet -3 Ropsten -4 Rinkeby -5 Goerli -42 Kovan -56 Binance Smart Chain Mainnet -97 Binance Smart Chain Testnet -100 xDai -137 Matic -1287 Moonbase Testnet -80001 Matic Testnet -43113 Avalanche Testnet -43114 Avalanche Mainnet -42220 Celo Mainnet -44787 Celo Alfajores Testnet -62320 Celo Baklava Testnet -1666700000 Harmony Testnet Shard0 -1666600000 Harmony Mainnet Shard0 -25 Cronos Mainnet Beta -338 Cronos Testnet -*/ - -window.web3ChainId = 11155111; diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js.meta deleted file mode 100644 index d717459ce..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/network.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 45d30abb05a9e7c42862497e13f434a2 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/thumbnail.png.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/thumbnail.png.meta deleted file mode 100644 index 57e0e9363..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/thumbnail.png.meta +++ /dev/null @@ -1,135 +0,0 @@ -fileFormatVersion: 2 -guid: 9d0e75e3d70f22a45876ee2e259cb5e0 -TextureImporter: - internalIDToNameTable: [] - externalObjects: {} - serializedVersion: 12 - mipmaps: - mipMapMode: 0 - enableMipMap: 0 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - streamingMipmaps: 0 - streamingMipmapsPriority: 0 - vTOnly: 0 - ignoreMasterTextureLimit: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 0 - seamlessCubemap: 0 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 1 - aniso: 1 - mipBias: 0 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 1 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 1 - spriteTessellationDetail: -1 - textureType: 8 - textureShape: 1 - singleChannelComponent: 0 - flipbookRows: 1 - flipbookColumns: 1 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - ignorePngGamma: 0 - applyGammaDecoding: 0 - cookieLightType: 0 - platformSettings: - - serializedVersion: 3 - buildTarget: DefaultTexturePlatform - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: Standalone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: Server - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - - serializedVersion: 3 - buildTarget: WebGL - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - forceMaximumCompressionQuality_BC6H_BC7: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: 5e97eb03825dee720800000000000000 - internalID: 0 - vertices: [] - indices: - edges: [] - weights: [] - secondaryTextures: [] - nameFileIdTable: {} - spritePackingTag: - pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3.meta deleted file mode 100644 index faaf6c9a6..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1cd2a379af6624f428081c113ec1896f -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js deleted file mode 100644 index e63f95b30..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js +++ /dev/null @@ -1,396 +0,0 @@ -// load network.js to get network/chain id -document.body.appendChild(Object.assign(document.createElement("script"), { type: "text/javascript", src: "./network.js" })); -// load web3modal to connect to wallet -document.body.appendChild(Object.assign(document.createElement("script"), { type: "text/javascript", src: "./web3/lib/web3modal.js" })); -// load web3js to create transactions -document.body.appendChild(Object.assign(document.createElement("script"), { type: "text/javascript", src: "./web3/lib/web3.min.js" })); -// uncomment to enable walletconnect -// document.body.appendChild(Object.assign(document.createElement("script"), { type: "text/javascript", src: "https://unpkg.com/@walletconnect/web3-provider@1.2.1/dist/umd/index.min.js" })); - -// load web3gl to connect to unity -window.web3gl = { - networkId: 0, - connect, - connectAccount: "", - signMessage, - signMessageResponse: "", - signTypedMessage, - signTypedMessageResponse: "", - callContract, - callContractResponse:"", - callContractError:"", - sendTransaction, - sendTransactionResponse: "", - sha3Message, - hashMessageResponse: "", - ecRecover, - addTokenFunction, - ecRecoverAddressResponse:"", - sendTransactionResponse: "", - sendTransactionData, - sendTransactionResponseData:"", - sendContract, - sendContractResponse: "", -}; - -// will be defined after connect() -let provider; -let web3; - -/* -paste this in inspector to connect to wallet: -window.web3gl.connect() -*/ -async function connect() { - if (window.ethereum?.request === undefined) { - alert("No browser wallet extension detected. Please install one & retry"); - return; - }; - // uncomment to enable walletconnect - const providerOptions = { - // walletconnect: { - // package: window.WalletConnectProvider.default, - // options: { - // infuraId: "00000000000000000000000000000000", - // }, - // }, - }; - - const web3Modal = new window.Web3Modal.default({ - providerOptions, - }); - - web3Modal.clearCachedProvider(); - - // set provider - provider = await web3Modal.connect(); - web3 = new Web3(provider); - - // set current network id - web3gl.networkId = parseInt(provider.chainId); - - // if current network id is not equal to network id, then switch - if (web3gl.networkId != window.web3ChainId) { - try { - await window.ethereum.request({ - method: "wallet_switchEthereumChain", - params: [{ chainId: `0x${window.web3ChainId.toString(16)}` }], // chainId must be in hexadecimal numbers - }); - } catch { - // if network isn't added, pop-up metamask to add - await addEthereumChain(); - } - } - - // set current account - // provider.selectedAddress works for metamask - // provider.accounts[0] works for walletconnect - - web3gl.connectAccount = web3.utils.toChecksumAddress(provider.selectedAddress) || web3.utils.toChecksumAddress(provider.accounts[0]); - - // refresh page if player changes account - provider.on("accountsChanged", (accounts) => { - window.location.reload(); - }); - - // update if player changes network - provider.on("chainChanged", (chainId) => { - web3gl.networkId = parseInt(chainId); - }); -} - -window.onload = (event) => { - isConnected(); -}; - -async function isConnected() { - const accounts = await ethereum.request({method: 'eth_accounts'}); - if (accounts.length) { - console.log(`You're connected to: ${accounts[0]}`); - } else { - console.log("Metamask is not connected"); - } -} - -/* - Add custom token to EOA - Address = 0xd8Aa1F592B6f0670176958d93cD0c6D3E2627597 - Symbol = PROS - Decimals = 18 - TokenImage = https://www.my_web_site.com/logo.png - */ - -async function addTokenFunction(_tokenAddress, _tokenSymbol, _tokenDecimals, _tokenImage) { - - var tokenAddress = _tokenAddress; - var tokenSymbol = _tokenSymbol; - var tokenDecimals = _tokenDecimals; - var tokenImage = _tokenImage; - - try { - const tokenExist = await ethereum.request({ - method: 'wallet_watchAsset', - params: { - type: 'ERC20', - options: { - address: _tokenAddress, - symbol: _tokenSymbol, - decimals: _tokenDecimals, - image: _tokenImage, - }, - }, - }); - - if (tokenExist) { - console.log(`${tokenSymbol} token already exists in your wallet`); - } - } catch (error) { - console.log(error); - } -} - -/* - Will calculate the sha3 of the input. -*/ -async function sha3Message(message) { - try { - const hashedMessage = await web3.utils.sha3(message); - window.web3gl.hashMessageResponse = hashedMessage; - } catch (error) { - window.web3gl.hashMessageResponse = error.message; - } -} - -/* - Will recover the address of signer -*/ -async function ecRecover(message,signature) { - try { - const recoverAddress = await web3.eth.accounts.recover(message, signature); - window.web3gl.ecRecoverAddressResponse = recoverAddress; - } catch (error) { - window.web3gl.ecRecoverAddressResponse = error.message; - } -} - - -/* -paste this in inspector to connect to sign message: -window.web3gl.signMessage("hello") -*/ -async function signMessage(message) { - try { - const from = (await web3.eth.getAccounts())[0]; - const signature = await web3.eth.personal.sign(message, from, ""); - window.web3gl.signMessageResponse = signature; - } catch (error) { - window.web3gl.signMessageResponse = error.message; - } -} - -/* -paste this in inspector to connect to sign typed message: -An example: -domain = {"name":"","version":"1","chainId":"","verifyingContract":""} -types = {"PrimaryType":[{"name":"chainId","type":"uint256"},{"name":"target","type":"address"},{"name":"data","type":"bytes"},{"name":"user","type":"address"},{"name":"userNonce","type":"uint256"},{"name":"userDeadline","type":"uint256"}]} -value = {"chainId":"","target":"","data":"","user":"","userNonce":"","userDeadline":""} -window.web3gl.signTypedMessage(domain, types, value) -*/ -async function signTypedMessage(domain, types, value) { - const deducePrimaryType = (types) => { - const typeNames = Object.keys(types); - if (typeNames.includes("EIP712Domain")) throw Error("EIP712Domain declaration managed by SDK") - - let primaryType = [...typeNames]; - typeNames.map(typeName => { - types[typeName].map(propertyItem => { - if (typeNames.includes(propertyItem.type)) { - primaryType = primaryType.filter(tn => tn != propertyItem.type) - } - }) - }); - if (primaryType.length != 1) throw Error("Primary type could not be determined") - - return primaryType[0]; - } - - try { - - var from = web3.utils.toChecksumAddress((await web3.eth.getAccounts())[0]); - - const parsedTypes = JSON.parse(types); - - const compiledTogether = { - types: { - EIP712Domain: [ - { name: "name", type: "string" }, - { name: "version", type: "string" }, - { name: "chainId", type: "uint256" }, - { name: "verifyingContract", type: "address" } - ], - ...parsedTypes, - }, - primaryType: deducePrimaryType(parsedTypes), - domain: JSON.parse(domain), - message: JSON.parse(value), - } - var params = [from, JSON.stringify(compiledTogether)]; - var method = 'eth_signTypedData_v4'; - - web3.currentProvider.sendAsync( - { - method, - params, - from: from, - }, - function (err, result) { - if (err) { - console.dir(err) - throw err - }; - if (result.error) { - throw result.error - } - if (result.error) { - throw result - }; - window.web3gl.signTypedMessageResponse = result.result; - } - ); - } catch (error) { - window.web3gl.signTypedMessageResponse = error.message; - } -} - -/* -paste this in inspector to send eth: -const to = "0xdD4c825203f97984e7867F11eeCc813A036089D1" -const value = "12300000000000000" -const gasLimit = "21000" // gas limit -const gasPrice = "33333333333" -window.web3gl.sendTransaction(to, value, gasLimit, gasPrice); -*/ -async function sendTransaction(to, value, gasLimit, gasPrice) { - const from = (await web3.eth.getAccounts())[0]; - web3.eth - .sendTransaction({ - from, - to, - value, - gas: gasLimit ? gasLimit : undefined, - gasPrice: gasPrice ? gasPrice : undefined, - }) - .on("transactionHash", (transactionHash) => { - window.web3gl.sendTransactionResponse = transactionHash; - }) - .on("error", (error) => { - window.web3gl.sendTransactionResponse = error.message; - }); -} - -/* -paste this in inspector to send eth: -const to = "0x20E7D0C4182149ADBeFE446E82358A2b2D5244e9" -const value = "0" -const gasPrice = "1100000010" -const gasLimit = "228620" // gas limit -const data = "0xd0def521000000000000000000000000d25b827d92b0fd656a1c829933e9b0b836d5c3e20000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002e516d586a576a6a4d55387233395543455a38343833614e6564774e5246524c767656396b7771314770436774686a000000000000000000000000000000000000" -window.web3gl.sendTransactionData(to, value, gasPrice, gasLimit, data); -*/ -async function sendTransactionData(to, value, gasPrice, gasLimit, data) { - const from = (await web3.eth.getAccounts())[0]; - web3.eth - .sendTransaction({ - from, - to, - value, - gasPrice: gasPrice ? gasPrice : undefined, - gas: gasLimit ? gasLimit : undefined, - data: data ? data : undefined, - }) - .on("transactionHash", (transactionHash) => { - window.web3gl.sendTransactionResponseData = transactionHash; - }) - .on("error", (error) => { - window.web3gl.sendTransactionResponseData = error.message; - }); -} - -/* -calls a non-mutable contract method. -const method = "x" -const abi = `[ { "inputs": [], "name": "increment", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "x", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ]`; -const contract = "0xB6B8bB1e16A6F73f7078108538979336B9B7341C" -const args = "[]" -window.web3gl.callContract(method, abi, contract, args) -*/ -async function callContract(method, abi, contract, args) { - const from = (await web3.eth.getAccounts())[0]; - new web3.eth.Contract(JSON.parse(abi), contract).methods[method]( - ...JSON.parse(args) - ).call() - .then((result) => window.web3gl.callContractResponse = result) - .catch((error) => window.web3gl.callContractError = error.message); -} - -/* -paste this in inspector to connect to interact with contract: -const method = "increment" -const abi = `[ { "inputs": [], "name": "increment", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "x", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ]`; -const contract = "0xB6B8bB1e16A6F73f7078108538979336B9B7341C" -const args = "[]" -const value = "0" -const gasLimit = "222222" // gas limit -const gasPrice = "333333333333" -window.web3gl.sendContract(method, abi, contract, args, value, gasLimit, gasPrice) -*/ -async function sendContract(method, abi, contract, args, value, gasLimit, gasPrice) { - const from = (await web3.eth.getAccounts())[0]; - new web3.eth.Contract(JSON.parse(abi), contract).methods[method](...JSON.parse(args)) - .send({ - from, - value, - gas: gasLimit ? gasLimit : undefined, - gasPrice: gasPrice ? gasPrice : undefined, - }) - .on("transactionHash", (transactionHash) => { - window.web3gl.sendContractResponse = transactionHash; - }) - .on("error", (error) => { - window.web3gl.sendContractResponse = error.message; - }); -} - -// add new wallet to in metamask -async function addEthereumChain() { - const account = (await web3.eth.getAccounts())[0]; - - // fetch https://chainid.network/chains.json - const response = await fetch("https://chainid.network/chains.json"); - const chains = await response.json(); - - // find chain with network id - const chain = chains.find((chain) => chain.chainId == window.web3ChainId); - - const params = { - chainId: "0x" + chain.chainId.toString(16), // A 0x-prefixed hexadecimal string - chainName: chain.name, - nativeCurrency: { - name: chain.nativeCurrency.name, - symbol: chain.nativeCurrency.symbol, // 2-6 characters long - decimals: chain.nativeCurrency.decimals, - }, - rpcUrls: chain.rpc, - blockExplorerUrls: [chain.explorers && chain.explorers.length > 0 && chain.explorers[0].url ? chain.explorers[0].url : chain.infoURL], - }; - - await window.ethereum - .request({ - method: "wallet_addEthereumChain", - params: [params, account], - }) - .catch(() => { - // I give up - window.location.reload(); - }); -} diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js.meta deleted file mode 100644 index a59af58f6..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/index.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 6ad393ff4a0596b4cb6849733e9e01a1 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib.meta deleted file mode 100644 index 612a9eb64..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4ee15f48512556a46b8f95482d86403a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js deleted file mode 100644 index 32e9412bf..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js +++ /dev/null @@ -1,57 +0,0 @@ -!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.Web3=e():t.Web3=e()}(window,(function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=204)}([function(t,e,r){"use strict";t.exports=function(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";(function(t){ - /*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ - var n=r(213),i=r(214),o=r(107);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(t,e){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|t}function p(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return D(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return q(t).length;default:if(n)return D(t).length;e=(""+e).toLowerCase(),n=!0}}function m(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return P(this,e,r);case"utf8":case"utf-8":return x(this,e,r);case"ascii":return E(this,e,r);case"latin1":case"binary":return O(this,e,r);case"base64":return A(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function b(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function v(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:y(t,e,r,n,i);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):y(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function y(t,e,r,n,i){var o,a=1,s=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;a=2,s/=2,u/=2,r/=2}function f(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var c=-1;for(o=r;os&&(r=s-u),o=r;o>=0;o--){for(var h=!0,l=0;li&&(n=i):n=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function A(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function x(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:f>223?3:f>191?2:1;if(i+h<=r)switch(h){case 1:f<128&&(c=f);break;case 2:128==(192&(o=t[i+1]))&&(u=(31&f)<<6|63&o)>127&&(c=u);break;case 3:o=t[i+1],a=t[i+2],128==(192&o)&&128==(192&a)&&(u=(15&f)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(c=u);break;case 4:o=t[i+1],a=t[i+2],s=t[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(u=(15&f)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(c=u)}null===c?(c=65533,h=1):c>65535&&(c-=65536,n.push(c>>>10&1023|55296),c=56320|1023&c),n.push(c),i+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);var r="",n=0;for(;n0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),""},u.prototype.compare=function(t,e,r,n,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(n>>>=0),a=(r>>>=0)-(e>>>=0),s=Math.min(o,a),f=this.slice(n,i),c=t.slice(e,r),h=0;hi)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return g(this,t,e,r);case"utf8":case"utf-8":return w(this,t,e,r);case"ascii":return _(this,t,e,r);case"latin1":case"binary":return k(this,t,e,r);case"base64":return M(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function E(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",o=e;or)throw new RangeError("Trying to access beyond buffer length")}function R(t,e,r,n,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function I(t,e,r,n){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-r,2);i>>8*(n?i:1-i)}function C(t,e,r,n){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-r,4);i>>8*(n?i:3-i)&255}function U(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function j(t,e,r,n,o){return o||U(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function N(t,e,r,n,o){return o||U(t,0,r,8),i.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e0&&(i*=256);)n+=this[t+--e]*i;return n},u.prototype.readUInt8=function(t,e){return e||T(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||T(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||T(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||T(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||T(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||T(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||T(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||T(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||T(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){e||T(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return e||T(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||T(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||T(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||T(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||T(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||T(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e|=0,r|=0,n)||R(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+r},u.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):I(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):I(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):C(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):C(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);R(this,t,e,r,i-1,-i)}var o=0,a=1,s=0;for(this[e]=255&t;++o>0)-s&255;return e+r},u.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);R(this,t,e,r,i-1,-i)}var o=r-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):I(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):I(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):C(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||R(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):C(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,r){return j(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return j(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return N(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return N(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function q(t){return n.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(L,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function H(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}}).call(this,r(7))},function(t,e,r){"use strict";function n(e){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=n=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=n=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),n(e)}t.exports=n,t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";"function"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}}},function(t,e,r){"use strict";var n=r(1),i=n.Buffer;function o(t,e){for(var r in t)e[r]=t[r]}function a(t,e,r){return i(t,e,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=n:(o(n,e),e.Buffer=a),o(i,a),a.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,r)},a.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var n=i(t);return void 0!==e?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n.SlowBuffer(t)}},function(t,e,r){"use strict";t.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n,i,o=t.exports={};function a(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function u(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(t){n=a}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(t){i=s}}();var f,c=[],h=!1,l=-1;function d(){h&&f&&(h=!1,f.length?c=f.concat(c):l=-1,c.length&&p())}function p(){if(!h){var t=u(d);h=!0;for(var e=c.length;e;){for(f=c,c=[];++l1)for(var r=1;r=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function f(t,e,r){var n=u(t,r);return r-1>=e&&(n|=u(t,r-1)<<4),n}function c(t,e,r,n){for(var i=0,o=Math.min(t.length,r),a=e;a=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&"object"===(0,e.default)(t)&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,r,n){if("number"==typeof t)return this._initNumber(t,r,n);if("object"===(0,e.default)(t))return this._initArray(t,r,n);"hex"===r&&(r=16),i(r===(0|r)&&r>=2&&r<=36);var o=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(o++,this.negative=1),o=0;n-=3)a=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},a.prototype._parseHex=function(t,e,r){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=2)i=f(t,e,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(t.length-e)%2==0?e+1:e;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this.strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,a=o%n,s=Math.min(o,o-a)+r,u=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var h=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],d=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function p(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var f=1;f>>26,h=67108863&u,l=Math.min(f,e.length-1),d=Math.max(0,f-t.length+1);d<=l;d++){var p=f-d|0;c+=(a=(i=0|t.words[p])*(o=0|e.words[d])+h)/67108864|0,h=67108863&a}r.words[f]=0|h,u=0|c}return 0!==u?r.words[f]=0|u:r.length--,r.strip()}a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var n=0,o=0,a=0;a>>24-n&16777215)||a!==this.length-1?h[6-u.length]+u+r:u+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=l[t],c=d[t];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(c).toString(t);r=(p=p.idivn(c)).isZero()?m+r:h[f-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return i(void 0!==s),this.toArrayLike(s,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,r){var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0"),this.strip();var a,s,u="le"===e,f=new t(o),c=this.clone();if(u){for(s=0;!c.isZero();s++)a=c.andln(255),c.iushrn(8),f[s]=a;for(;s=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){i("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-r),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){i("number"==typeof t&&t>=0);var r=t/26|0,n=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,m=d>>>13,b=0|a[2],v=8191&b,y=b>>>13,g=0|a[3],w=8191&g,_=g>>>13,k=0|a[4],M=8191&k,S=k>>>13,A=0|a[5],x=8191&A,E=A>>>13,O=0|a[6],P=8191&O,B=O>>>13,T=0|a[7],R=8191&T,I=T>>>13,C=0|a[8],U=8191&C,j=C>>>13,N=0|a[9],L=8191&N,F=N>>>13,D=0|s[0],q=8191&D,H=D>>>13,z=0|s[1],K=8191&z,G=z>>>13,V=0|s[2],W=8191&V,Z=V>>>13,J=0|s[3],X=8191&J,Y=J>>>13,$=0|s[4],Q=8191&$,tt=$>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ft=st>>>13,ct=0|s[8],ht=8191&ct,lt=ct>>>13,dt=0|s[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var bt=(f+(n=Math.imul(h,q))|0)+((8191&(i=(i=Math.imul(h,H))+Math.imul(l,q)|0))<<13)|0;f=((o=Math.imul(l,H))+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(p,q),i=(i=Math.imul(p,H))+Math.imul(m,q)|0,o=Math.imul(m,H);var vt=(f+(n=n+Math.imul(h,K)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(l,K)|0))<<13)|0;f=((o=o+Math.imul(l,G)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,q),i=(i=Math.imul(v,H))+Math.imul(y,q)|0,o=Math.imul(y,H),n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,G)|0;var yt=(f+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,W)|0))<<13)|0;f=((o=o+Math.imul(l,Z)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,q),i=(i=Math.imul(w,H))+Math.imul(_,q)|0,o=Math.imul(_,H),n=n+Math.imul(v,K)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,Z)|0;var gt=(f+(n=n+Math.imul(h,X)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(l,X)|0))<<13)|0;f=((o=o+Math.imul(l,Y)|0)+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(M,q),i=(i=Math.imul(M,H))+Math.imul(S,q)|0,o=Math.imul(S,H),n=n+Math.imul(w,K)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(_,K)|0,o=o+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,Z)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var wt=(f+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(l,Q)|0))<<13)|0;f=((o=o+Math.imul(l,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(x,q),i=(i=Math.imul(x,H))+Math.imul(E,q)|0,o=Math.imul(E,H),n=n+Math.imul(M,K)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,K)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,Z)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,Z)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var _t=(f+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(l,rt)|0))<<13)|0;f=((o=o+Math.imul(l,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(P,q),i=(i=Math.imul(P,H))+Math.imul(B,q)|0,o=Math.imul(B,H),n=n+Math.imul(x,K)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(E,K)|0,o=o+Math.imul(E,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Z)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,Z)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var kt=(f+(n=n+Math.imul(h,ot)|0)|0)+((8191&(i=(i=i+Math.imul(h,at)|0)+Math.imul(l,ot)|0))<<13)|0;f=((o=o+Math.imul(l,at)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(R,q),i=(i=Math.imul(R,H))+Math.imul(I,q)|0,o=Math.imul(I,H),n=n+Math.imul(P,K)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(B,K)|0,o=o+Math.imul(B,G)|0,n=n+Math.imul(x,W)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,Z)|0,n=n+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,Y)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var Mt=(f+(n=n+Math.imul(h,ut)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(l,ut)|0))<<13)|0;f=((o=o+Math.imul(l,ft)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(U,q),i=(i=Math.imul(U,H))+Math.imul(j,q)|0,o=Math.imul(j,H),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(B,W)|0,o=o+Math.imul(B,Z)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ft)|0;var St=(f+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,lt)|0)+Math.imul(l,ht)|0))<<13)|0;f=((o=o+Math.imul(l,lt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(L,q),i=(i=Math.imul(L,H))+Math.imul(F,q)|0,o=Math.imul(F,H),n=n+Math.imul(U,K)|0,i=(i=i+Math.imul(U,G)|0)+Math.imul(j,K)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,Z)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(B,X)|0,o=o+Math.imul(B,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,o=o+Math.imul(S,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,at)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ft)|0,n=n+Math.imul(p,ht)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ht)|0,o=o+Math.imul(m,lt)|0;var At=(f+(n=n+Math.imul(h,pt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(l,pt)|0))<<13)|0;f=((o=o+Math.imul(l,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(L,K),i=(i=Math.imul(L,G))+Math.imul(F,K)|0,o=Math.imul(F,G),n=n+Math.imul(U,W)|0,i=(i=i+Math.imul(U,Z)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,Z)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,tt)|0,n=n+Math.imul(x,rt)|0,i=(i=i+Math.imul(x,nt)|0)+Math.imul(E,rt)|0,o=o+Math.imul(E,nt)|0,n=n+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(S,ot)|0,o=o+Math.imul(S,at)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,ft)|0,n=n+Math.imul(v,ht)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ht)|0,o=o+Math.imul(y,lt)|0;var xt=(f+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;f=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(L,W),i=(i=Math.imul(L,Z))+Math.imul(F,W)|0,o=Math.imul(F,Z),n=n+Math.imul(U,X)|0,i=(i=i+Math.imul(U,Y)|0)+Math.imul(j,X)|0,o=o+Math.imul(j,Y)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(B,rt)|0,o=o+Math.imul(B,nt)|0,n=n+Math.imul(x,ot)|0,i=(i=i+Math.imul(x,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,n=n+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ut)|0,o=o+Math.imul(S,ft)|0,n=n+Math.imul(w,ht)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ht)|0,o=o+Math.imul(_,lt)|0;var Et=(f+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;f=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(L,X),i=(i=Math.imul(L,Y))+Math.imul(F,X)|0,o=Math.imul(F,Y),n=n+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,tt)|0,n=n+Math.imul(R,rt)|0,i=(i=i+Math.imul(R,nt)|0)+Math.imul(I,rt)|0,o=o+Math.imul(I,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(B,ot)|0,o=o+Math.imul(B,at)|0,n=n+Math.imul(x,ut)|0,i=(i=i+Math.imul(x,ft)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ft)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,lt)|0)+Math.imul(S,ht)|0,o=o+Math.imul(S,lt)|0;var Ot=(f+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;f=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,tt))+Math.imul(F,Q)|0,o=Math.imul(F,tt),n=n+Math.imul(U,rt)|0,i=(i=i+Math.imul(U,nt)|0)+Math.imul(j,rt)|0,o=o+Math.imul(j,nt)|0,n=n+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(B,ut)|0,o=o+Math.imul(B,ft)|0,n=n+Math.imul(x,ht)|0,i=(i=i+Math.imul(x,lt)|0)+Math.imul(E,ht)|0,o=o+Math.imul(E,lt)|0;var Pt=(f+(n=n+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,pt)|0))<<13)|0;f=((o=o+Math.imul(S,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(L,rt),i=(i=Math.imul(L,nt))+Math.imul(F,rt)|0,o=Math.imul(F,nt),n=n+Math.imul(U,ot)|0,i=(i=i+Math.imul(U,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,n=n+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ft)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ft)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(B,ht)|0,o=o+Math.imul(B,lt)|0;var Bt=(f+(n=n+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,mt)|0)+Math.imul(E,pt)|0))<<13)|0;f=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),n=n+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ft)|0)+Math.imul(j,ut)|0,o=o+Math.imul(j,ft)|0,n=n+Math.imul(R,ht)|0,i=(i=i+Math.imul(R,lt)|0)+Math.imul(I,ht)|0,o=o+Math.imul(I,lt)|0;var Tt=(f+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(B,pt)|0))<<13)|0;f=((o=o+Math.imul(B,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(L,ut),i=(i=Math.imul(L,ft))+Math.imul(F,ut)|0,o=Math.imul(F,ft),n=n+Math.imul(U,ht)|0,i=(i=i+Math.imul(U,lt)|0)+Math.imul(j,ht)|0,o=o+Math.imul(j,lt)|0;var Rt=(f+(n=n+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(I,pt)|0))<<13)|0;f=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(L,ht),i=(i=Math.imul(L,lt))+Math.imul(F,ht)|0,o=Math.imul(F,lt);var It=(f+(n=n+Math.imul(U,pt)|0)|0)+((8191&(i=(i=i+Math.imul(U,mt)|0)+Math.imul(j,pt)|0))<<13)|0;f=((o=o+Math.imul(j,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Ct=(f+(n=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,mt))+Math.imul(F,pt)|0))<<13)|0;return f=((o=Math.imul(F,mt))+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,u[0]=bt,u[1]=vt,u[2]=yt,u[3]=gt,u[4]=wt,u[5]=_t,u[6]=kt,u[7]=Mt,u[8]=St,u[9]=At,u[10]=xt,u[11]=Et,u[12]=Ot,u[13]=Pt,u[14]=Bt,u[15]=Tt,u[16]=Rt,u[17]=It,u[18]=Ct,0!==f&&(u[19]=f,r.length++),r};function b(t,e,r){return(new v).mulp(t,e,r)}function v(t,e){this.x=t,this.y=e}Math.imul||(m=p),a.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?m(this,t,e):r<63?p(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,t,e):b(this,t,e)},v.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},v.prototype.permute=function(t,e,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=n/67108864|0,e+=o>>>26,this.words[r]=67108863&o}return 0!==e&&(this.words[r]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(e=0;e>>26-r}a&&(this.words[e]=a,this.length++)}if(0!==n){for(e=this.length-1;e>=0;e--)this.words[e+n]=this.words[e];for(e=0;e=0),n=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,f=0;f=0&&(0!==c||f>=n);f--){var h=0|this.words[f];this.words[f]=c<<26-o|h>>>o,c=h&s}return u&&0!==c&&(u.words[u.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,r){return i(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){i("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,n=1<=0);var e=t%26,r=(t-e)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var n=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(i("number"==typeof t),i(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[n+r]=67108863&o}for(;n>26,this.words[n+r]=67108863&o;if(0===s)return this.strip();for(i(-1===s),s=0,n=0;n>26,this.words[n]=67108863&o;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==e){(s=new a(null)).length=u+1,s.words=new Array(s.length);for(var f=0;f=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s.strip(),n.strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return i(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(n=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:n,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var n,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){i(t<=67108863);for(var e=(1<<26)%t,r=0,n=this.length-1;n>=0;n--)r=(e*r+(0|this.words[n]))%t;return r},a.prototype.idivn=function(t){i(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var n=(0|this.words[r])+67108864*e;this.words[r]=n/t|0,e=n%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n=new a(1),o=new a(0),s=new a(0),u=new a(1),f=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++f;for(var c=r.clone(),h=e.clone();!e.isZero();){for(var l=0,d=1;0==(e.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(e.iushrn(l);l-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(c),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,m=1;0==(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(c),u.isub(h)),s.iushrn(1),u.iushrn(1);e.cmp(r)>=0?(e.isub(r),n.isub(s),o.isub(u)):(r.isub(e),s.isub(n),u.isub(o))}return{a:s,b:u,gcd:r.iushln(f)}},a.prototype._invmp=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n,o=new a(1),s=new a(0),u=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var f=0,c=1;0==(e.words[0]&c)&&f<26;++f,c<<=1);if(f>0)for(e.iushrn(f);f-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(n=0===e.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(t),n},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){i("number"==typeof t);var e=t%26,r=(t-e)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),i(t<=67108863,"Number is too big");var n=0|this.words[0];e=n===t?0:nt.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new S(t)},a.prototype.toRed=function(t){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return i(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return i(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var y={k256:null,p224:null,p192:null,p25519:null};function g(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function w(){g.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function _(){g.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function k(){g.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function M(){g.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else i(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function A(t){S.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}g.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},g.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},g.prototype.split=function(t,e){t.iushrn(this.n,0,e)},g.prototype.imulK=function(t){return t.imul(this.k)},o(w,g),w.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},w.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(y[t])return y[t];var e;if("k256"===t)e=new w;else if("p224"===t)e=new _;else if("p192"===t)e=new k;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new M}return y[t]=e,e},S.prototype._verify1=function(t){i(0===t.negative,"red works only with positives"),i(t.red,"red works only with red numbers")},S.prototype._verify2=function(t,e){i(0==(t.negative|e.negative),"red works only with positives"),i(t.red&&t.red===e.red,"red works only with red numbers")},S.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},S.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},S.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},S.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},S.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},S.prototype.isqr=function(t){return this.imul(t,t.clone())},S.prototype.sqr=function(t){return this.mul(t,t)},S.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(i(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),u=s.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,f).cmp(u);)c.redIAdd(u);for(var h=this.pow(c,n),l=this.pow(t,n.addn(1).iushrn(1)),d=this.pow(t,n),p=o;0!==d.cmp(s);){for(var m=d,b=0;0!==m.cmp(s);b++)m=m.redSqr();i(b=0;n--){for(var f=e.words[n],c=u-1;c>=0;c--){var h=f>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}u=26}return i},S.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},S.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new A(t)},o(A,S),A.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},A.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},A.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},A.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},A.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t)}).call(this,r(17)(t))},function(t,e,r){"use strict";function n(t,e){for(var r=0;r=256||r%1)return!1}return!0}function c(t,e){if(e||(e={}),"number"==typeof t){o.checkSafeUint53(t,"invalid arrayify value");for(var r=[];t;)r.unshift(255&t),t=parseInt(String(t/256));return 0===r.length&&r.push(0),s(new Uint8Array(r))}if(e.allowMissingPrefix&&"string"==typeof t&&"0x"!==t.substring(0,2)&&(t="0x"+t),a(t)&&(t=t.toHexString()),d(t)){var n=t.substring(2);n.length%2&&("left"===e.hexPad?n="0x0"+n.substring(2):"right"===e.hexPad?n+="0":o.throwArgumentError("hex data is odd-length","value",t));for(var i=[],u=0;ue&&o.throwArgumentError("value out of range","value",arguments[0]);var r=new Uint8Array(e);return r.set(t,e-t.length),s(r)}function d(t,e){return!("string"!=typeof t||!t.match(/^0x[0-9A-Fa-f]*$/))&&(!e||t.length===2+2*e)}function p(t,e){if(e||(e={}),"number"==typeof t){o.checkSafeUint53(t,"invalid hexlify value");for(var r="";t;)r="0123456789abcdef"[15&t]+r,t=Math.floor(t/16);return r.length?(r.length%2&&(r="0"+r),"0x"+r):"0x00"}if(e.allowMissingPrefix&&"string"==typeof t&&"0x"!==t.substring(0,2)&&(t="0x"+t),a(t))return t.toHexString();if(d(t))return t.length%2&&("left"===e.hexPad?t="0x0"+t.substring(2):"right"===e.hexPad?t+="0":o.throwArgumentError("hex data is odd-length","value",t)),t.toLowerCase();if(f(t)){for(var n="0x",i=0;i>4]+"0123456789abcdef"[15&s]}return n}return o.throwArgumentError("invalid hexlify value","value",t)}function m(t){"string"!=typeof t&&(t=p(t)),d(t)||o.throwArgumentError("invalid hex string","value",t),t=t.substring(2);for(var e=0;e2*e+2&&o.throwArgumentError("value out of range","value",arguments[1]);t.length<2*e+2;)t="0x0"+t.substring(2);return t}function v(t){var e={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0};if(u(t)){var r=c(t);65!==r.length&&o.throwArgumentError("invalid signature string; must be 65 bytes","signature",t),e.r=p(r.slice(0,32)),e.s=p(r.slice(32,64)),e.v=r[64],e.v<27&&(0===e.v||1===e.v?e.v+=27:o.throwArgumentError("signature invalid v byte","signature",t)),e.recoveryParam=1-e.v%2,e.recoveryParam&&(r[32]|=128),e._vs=p(r.slice(32,64))}else{if(e.r=t.r,e.s=t.s,e.v=t.v,e.recoveryParam=t.recoveryParam,e._vs=t._vs,null!=e._vs){var n=l(c(e._vs),32);e._vs=p(n);var i=n[0]>=128?1:0;null==e.recoveryParam?e.recoveryParam=i:e.recoveryParam!==i&&o.throwArgumentError("signature recoveryParam mismatch _vs","signature",t),n[0]&=127;var a=p(n);null==e.s?e.s=a:e.s!==a&&o.throwArgumentError("signature v mismatch _vs","signature",t)}null==e.recoveryParam?null==e.v?o.throwArgumentError("signature missing v and recoveryParam","signature",t):0===e.v||1===e.v?e.recoveryParam=e.v:e.recoveryParam=1-e.v%2:null==e.v?e.v=27+e.recoveryParam:e.recoveryParam!==1-e.v%2&&o.throwArgumentError("signature recoveryParam mismatch v","signature",t),null!=e.r&&d(e.r)?e.r=b(e.r,32):o.throwArgumentError("signature missing or invalid r","signature",t),null!=e.s&&d(e.s)?e.s=b(e.s,32):o.throwArgumentError("signature missing or invalid s","signature",t);var s=c(e.s);s[0]>=128&&o.throwArgumentError("signature s out of range","signature",t),e.recoveryParam&&(s[0]|=128);var f=p(s);e._vs&&(d(e._vs)||o.throwArgumentError("signature invalid _vs","signature",t),e._vs=b(e._vs,32)),null==e._vs?e._vs=f:e._vs!==f&&o.throwArgumentError("signature _vs mismatch v and s","signature",t)}return e}},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.Logger=e.ErrorCode=e.LogLevel=void 0;var i=n(r(5)),o=n(r(9)),a=r(259),s=!1,u=!1,f={debug:1,default:2,info:2,warning:3,error:4,off:5},c=f.default,h=null;var l,d,p=function(){try{var t=[];if(["NFD","NFC","NFKD","NFKC"].forEach((function(e){try{if("test"!=="test".normalize(e))throw new Error("bad normalize")}catch(r){t.push(e)}})),t.length)throw new Error("missing "+t.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(t){return t.message}return null}();e.LogLevel=l,function(t){t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR",t.OFF="OFF"}(l||(e.LogLevel=l={})),e.ErrorCode=d,function(t){t.UNKNOWN_ERROR="UNKNOWN_ERROR",t.NOT_IMPLEMENTED="NOT_IMPLEMENTED",t.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",t.NETWORK_ERROR="NETWORK_ERROR",t.SERVER_ERROR="SERVER_ERROR",t.TIMEOUT="TIMEOUT",t.BUFFER_OVERRUN="BUFFER_OVERRUN",t.NUMERIC_FAULT="NUMERIC_FAULT",t.MISSING_NEW="MISSING_NEW",t.INVALID_ARGUMENT="INVALID_ARGUMENT",t.MISSING_ARGUMENT="MISSING_ARGUMENT",t.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",t.CALL_EXCEPTION="CALL_EXCEPTION",t.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",t.NONCE_EXPIRED="NONCE_EXPIRED",t.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",t.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT"}(d||(e.ErrorCode=d={}));var m=function(){function t(e){(0,i.default)(this,t),Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}return(0,o.default)(t,[{key:"_log",value:function(t,e){var r=t.toLowerCase();null==f[r]&&this.throwArgumentError("invalid log level name","logLevel",t),c>f[r]||console.log.apply(console,e)}},{key:"debug",value:function(){for(var e=arguments.length,r=new Array(e),n=0;n=9007199254740991)&&this.throwError(r,t.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(r,t.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}},{key:"checkArgumentCount",value:function(e,r,n){n=n?": "+n:"",er&&this.throwError("too many arguments"+n,t.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:r})}},{key:"checkNew",value:function(e,r){e!==Object&&null!=e||this.throwError("missing new",t.errors.MISSING_NEW,{name:r.name})}},{key:"checkAbstract",value:function(e,r){e===r?this.throwError("cannot instantiate abstract class "+JSON.stringify(r.name)+" directly; use a sub-class",t.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):e!==Object&&null!=e||this.throwError("missing new",t.errors.MISSING_NEW,{name:r.name})}}],[{key:"globalLogger",value:function(){return h||(h=new t(a.version)),h}},{key:"setCensorship",value:function(e,r){if(!e&&r&&this.globalLogger().throwError("cannot permanently disable censorship",t.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),s){if(!e)return;this.globalLogger().throwError("error censorship permanent",t.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}u=!!e,s=!!r}},{key:"setLogLevel",value:function(e){var r=f[e.toLowerCase()];null!=r?c=r:t.globalLogger().warn("invalid log level - "+e)}},{key:"from",value:function(e){return new t(e)}}]),t}();e.Logger=m,m.errors=d,m.levels=l},function(t,e,r){"use strict";function n(e){return t.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},t.exports.default=t.exports,t.exports.__esModule=!0,n(e)}t.exports=n,t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(136);t.exports=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&n(t,e)},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(2).default,i=r(137);t.exports=function(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?i(t):e},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(211),o=r(111),a=r(221),s=r(22),u=r(8),f=function t(e,r){var i=[];return r.forEach((function(r){if("object"===(0,n.default)(r.components)){if("tuple"!==r.type.substring(0,5))throw new Error("components found but type is not tuple; report on GitHub");var o="",a=r.type.indexOf("[");a>=0&&(o=r.type.substring(a));var s=t(e,r.components);Array.isArray(s)&&e?i.push("tuple("+s.join(",")+")"+o):e?i.push("("+s+")"):i.push("("+s.join(",")+")"+o)}else i.push(r.type)})),i},c=function(t){if(!o.isHexStrict(t))throw new Error("The parameter must be a valid HEX string.");var e="",r=0,n=t.length;for("0x"===t.substring(0,2)&&(r=2);r7?r+=t[n].toUpperCase():r+=t[n];return r},toHex:o.toHex,toBN:o.toBN,bytesToHex:o.bytesToHex,hexToBytes:o.hexToBytes,hexToNumberString:o.hexToNumberString,hexToNumber:o.hexToNumber,toDecimal:o.hexToNumber,numberToHex:o.numberToHex,fromDecimal:o.numberToHex,hexToUtf8:o.hexToUtf8,hexToString:o.hexToUtf8,toUtf8:o.hexToUtf8,stripHexPrefix:o.stripHexPrefix,utf8ToHex:o.utf8ToHex,stringToHex:o.utf8ToHex,fromUtf8:o.utf8ToHex,hexToAscii:c,toAscii:c,asciiToHex:h,fromAscii:h,unitMap:i.unitMap,toWei:function(t,e){if(e=l(e),!o.isBN(t)&&"string"!=typeof t)throw new Error("Please pass numbers as strings or BN objects to avoid precision errors.");return o.isBN(t)?i.toWei(t,e):i.toWei(t,e).toString(10)},fromWei:function(t,e){if(e=l(e),!o.isBN(t)&&"string"!=typeof t)throw new Error("Please pass numbers as strings or BN objects to avoid precision errors.");return o.isBN(t)?i.fromWei(t,e):i.fromWei(t,e).toString(10)},padLeft:o.leftPad,leftPad:o.leftPad,padRight:o.rightPad,rightPad:o.rightPad,toTwosComplement:o.toTwosComplement,isBloom:o.isBloom,isUserEthereumAddressInBloom:o.isUserEthereumAddressInBloom,isContractAddressInBloom:o.isContractAddressInBloom,isTopic:o.isTopic,isTopicInBloom:o.isTopicInBloom,isInBloom:o.isInBloom,compareBlockNumbers:function(t,e){if(t==e)return 0;if("genesis"!=t&&"earliest"!=t&&0!=t||"genesis"!=e&&"earliest"!=e&&0!=e){if("genesis"==t||"earliest"==t)return-1;if("genesis"==e||"earliest"==e)return 1;if("latest"==t)return"pending"==e?-1:1;if("latest"===e)return"pending"==t?1:-1;if("pending"==t)return 1;if("pending"==e)return-1;var r=new u(t),n=new u(e);return r.lt(n)?-1:r.eq(n)?0:1}return 0},toNumber:o.toNumber}},function(t,e,r){"use strict";t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,r){"use strict";function n(t,e){if(!t)throw new Error(e||"Assertion failed")}t.exports=n,n.equal=function(t,e,r){if(t!=e)throw new Error(r||"Assertion failed: "+t+" != "+e)}},function(t,e,r){"use strict";var n=e,i=r(8),o=r(18),a=r(183);n.assert=o,n.toArray=a.toArray,n.zero2=a.zero2,n.toHex=a.toHex,n.encode=a.encode,n.getNAF=function(t,e,r){var n=new Array(Math.max(t.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-u:u,o.isubn(s)):s=0,n[a]=s,o.iushrn(1)}return n},n.getJSF=function(t,e){var r=[[],[]];t=t.clone(),e=e.clone();for(var n,i=0,o=0;t.cmpn(-i)>0||e.cmpn(-o)>0;){var a,s,u=t.andln(3)+i&3,f=e.andln(3)+o&3;3===u&&(u=-1),3===f&&(f=-1),a=0==(1&u)?0:3!==(n=t.andln(7)+i&7)&&5!==n||2!==f?u:-u,r[0].push(a),s=0==(1&f)?0:3!==(n=e.andln(7)+o&7)&&5!==n||2!==u?f:-f,r[1].push(s),2*i===a+1&&(i=1-i),2*o===s+1&&(o=1-o),t.iushrn(1),e.iushrn(1)}return r},n.cachedProperty=function(t,e,r){var n="_"+e;t.prototype[e]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(t){return"string"==typeof t?n.toArray(t,"hex"):t},n.intFromLE=function(t){return new i(t,"hex","le")}},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.checkResultErrors=function(t){var e=[];return function t(r,n){if(!Array.isArray(n))return;for(var i in n){var o=r.slice();o.push(i);try{t(o,n[i])}catch(t){e.push({path:o,error:t})}}}([],t),e},e.Reader=e.Writer=e.Coder=void 0;var i=n(r(5)),o=n(r(9)),a=r(11),s=r(24),u=r(33),f=r(12),c=r(50),h=new f.Logger(c.version);var l=function(){function t(e,r,n,o){(0,i.default)(this,t),this.name=e,this.type=r,this.localName=n,this.dynamic=o}return(0,o.default)(t,[{key:"_throwError",value:function(t,e){h.throwArgumentError(t,this.localName,e)}}]),t}();e.Coder=l;var d=function(){function t(e){(0,i.default)(this,t),(0,u.defineReadOnly)(this,"wordSize",e||32),this._data=[],this._dataLength=0,this._padding=new Uint8Array(e)}return(0,o.default)(t,[{key:"data",get:function(){return(0,a.hexConcat)(this._data)}},{key:"length",get:function(){return this._dataLength}},{key:"_writeData",value:function(t){return this._data.push(t),this._dataLength+=t.length,t.length}},{key:"appendWriter",value:function(t){return this._writeData((0,a.concat)(t._data))}},{key:"writeBytes",value:function(t){var e=(0,a.arrayify)(t),r=e.length%this.wordSize;return r&&(e=(0,a.concat)([e,this._padding.slice(r)])),this._writeData(e)}},{key:"_getValue",value:function(t){var e=(0,a.arrayify)(s.BigNumber.from(t));return e.length>this.wordSize&&h.throwError("value out-of-bounds",f.Logger.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:e.length}),e.length%this.wordSize&&(e=(0,a.concat)([this._padding.slice(e.length%this.wordSize),e])),e}},{key:"writeValue",value:function(t){return this._writeData(this._getValue(t))}},{key:"writeUpdatableValue",value:function(){var t=this,e=this._data.length;return this._data.push(this._padding),this._dataLength+=this.wordSize,function(r){t._data[e]=t._getValue(r)}}}]),t}();e.Writer=d;var p=function(){function t(e,r,n,o){(0,i.default)(this,t),(0,u.defineReadOnly)(this,"_data",(0,a.arrayify)(e)),(0,u.defineReadOnly)(this,"wordSize",r||32),(0,u.defineReadOnly)(this,"_coerceFunc",n),(0,u.defineReadOnly)(this,"allowLoose",o),this._offset=0}return(0,o.default)(t,[{key:"data",get:function(){return(0,a.hexlify)(this._data)}},{key:"consumed",get:function(){return this._offset}},{key:"coerce",value:function(e,r){return this._coerceFunc?this._coerceFunc(e,r):t.coerce(e,r)}},{key:"_peekBytes",value:function(t,e,r){var n=Math.ceil(e/this.wordSize)*this.wordSize;return this._offset+n>this._data.length&&(this.allowLoose&&r&&this._offset+e<=this._data.length?n=e:h.throwError("data out-of-bounds",f.Logger.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+n})),this._data.slice(this._offset,this._offset+n)}},{key:"subReader",value:function(e){return new t(this._data.slice(this._offset+e),this.wordSize,this._coerceFunc,this.allowLoose)}},{key:"readBytes",value:function(t,e){var r=this._peekBytes(0,t,!!e);return this._offset+=r.length,r.slice(0,t)}},{key:"readValue",value:function(){return s.BigNumber.from(this.readBytes(this.wordSize))}}],[{key:"coerce",value:function(t,e){var r=t.match("^u?int([0-9]+)$");return r&&parseInt(r[1])<=48&&(e=e.toNumber()),e}}]),t}();e.Reader=p},function(t,e,r){"use strict";var n=r(18),i=r(3);function o(t,e){return 55296==(64512&t.charCodeAt(e))&&(!(e<0||e+1>=t.length)&&56320==(64512&t.charCodeAt(e+1)))}function a(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function s(t){return 1===t.length?"0"+t:t}function u(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}e.inherits=i,e.toArray=function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var r=[];if("string"==typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(t="0"+t),i=0;i>6|192,r[n++]=63&a|128):o(t,i)?(a=65536+((1023&a)<<10)+(1023&t.charCodeAt(++i)),r[n++]=a>>18|240,r[n++]=a>>12&63|128,r[n++]=a>>6&63|128,r[n++]=63&a|128):(r[n++]=a>>12|224,r[n++]=a>>6&63|128,r[n++]=63&a|128)}else for(i=0;i>>0}return a},e.split32=function(t,e){for(var r=new Array(4*t.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},e.rotr32=function(t,e){return t>>>e|t<<32-e},e.rotl32=function(t,e){return t<>>32-e},e.sum32=function(t,e){return t+e>>>0},e.sum32_3=function(t,e,r){return t+e+r>>>0},e.sum32_4=function(t,e,r,n){return t+e+r+n>>>0},e.sum32_5=function(t,e,r,n,i){return t+e+r+n+i>>>0},e.sum64=function(t,e,r,n){var i=t[e],o=n+t[e+1]>>>0,a=(o>>0,t[e+1]=o},e.sum64_hi=function(t,e,r,n){return(e+n>>>0>>0},e.sum64_lo=function(t,e,r,n){return e+n>>>0},e.sum64_4_hi=function(t,e,r,n,i,o,a,s){var u=0,f=e;return u+=(f=f+n>>>0)>>0)>>0)>>0},e.sum64_4_lo=function(t,e,r,n,i,o,a,s){return e+n+o+s>>>0},e.sum64_5_hi=function(t,e,r,n,i,o,a,s,u,f){var c=0,h=e;return c+=(h=h+n>>>0)>>0)>>0)>>0)>>0},e.sum64_5_lo=function(t,e,r,n,i,o,a,s,u,f){return e+n+o+s+f>>>0},e.rotr64_hi=function(t,e,r){return(e<<32-r|t>>>r)>>>0},e.rotr64_lo=function(t,e,r){return(t<<32-r|e>>>r)>>>0},e.shr64_hi=function(t,e,r){return t>>>r},e.shr64_lo=function(t,e,r){return(t<<32-r|e>>>r)>>>0}},function(t,e,r){"use strict";(function(e,n){var i=r(4).Buffer,o=e.crypto||e.msCrypto;o&&o.getRandomValues?t.exports=function(t,e){if(t>4294967295)throw new RangeError("requested too many random bytes");var r=i.allocUnsafe(t);if(t>0)if(t>65536)for(var a=0;a0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=a.length,s=u,console&&console.warn&&console.warn(s)}return t}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=d.bind(n);return i.listener=r,n.wrapFn=i,i}function m(t,e,r){var n=t._events;if(void 0===n)return[];var i=n[e];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(t){for(var e=new Array(t.length),r=0;r0&&(o=e[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var u=i[t];if(void 0===u)return!1;if("function"==typeof u)a(u,this,e);else{var f=u.length,c=v(u,f);for(r=0;r=0;o--)if(r[o]===e||r[o].listener===e){a=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(t,e){for(;e+1=0;n--)this.removeListener(t,e[n]);return this},u.prototype.listeners=function(t){return m(this,t,!0)},u.prototype.rawListeners=function(t){return m(this,t,!1)},u.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):b.call(t,e)},u.prototype.listenerCount=b,u.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"BigNumber",{enumerable:!0,get:function(){return n.BigNumber}}),Object.defineProperty(e,"_base16To36",{enumerable:!0,get:function(){return n._base16To36}}),Object.defineProperty(e,"_base36To16",{enumerable:!0,get:function(){return n._base36To16}}),Object.defineProperty(e,"formatFixed",{enumerable:!0,get:function(){return i.formatFixed}}),Object.defineProperty(e,"FixedFormat",{enumerable:!0,get:function(){return i.FixedFormat}}),Object.defineProperty(e,"FixedNumber",{enumerable:!0,get:function(){return i.FixedNumber}}),Object.defineProperty(e,"parseFixed",{enumerable:!0,get:function(){return i.parseFixed}});var n=r(126),i=r(261)},function(t,e,r){"use strict";var n=r(4).Buffer,i=r(87).Transform,o=r(29).StringDecoder;function a(t){i.call(this),this.hashMode="string"==typeof t,this.hashMode?this[t]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(3)(a,i),a.prototype.update=function(t,e,r){"string"==typeof t&&(t=n.from(t,e));var i=this._update(t);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(t,e,r){var n;try{this.hashMode?this._update(t):this.push(this._update(t))}catch(t){n=t}finally{r(n)}},a.prototype._flush=function(t){var e;try{this.push(this.__final())}catch(t){e=t}t(e)},a.prototype._finalOrDigest=function(t){var e=this.__final()||n.alloc(0);return t&&(e=this._toString(e,t,!0)),e},a.prototype._toString=function(t,e,r){if(this._decoder||(this._decoder=new o(e),this._encoding=e),this._encoding!==e)throw new Error("can't switch encodings");var n=this._decoder.write(t);return r&&(n+=this._decoder.end()),n},t.exports=a},function(t,e,r){"use strict";var n=Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]},i=function(t,e){for(var r in t)"default"===r||e.hasOwnProperty(r)||n(e,t,r)};Object.defineProperty(e,"__esModule",{value:!0}),i(r(198),e),i(r(199),e),i(r(446),e),i(r(102),e),i(r(447),e),i(r(35),e),i(r(448),e),i(r(449),e),i(r(103),e),i(r(42),e)},function(t,e,r){"use strict";var n=r(206),i=r(252);t.exports={packageInit:function(t,e){if(e=Array.prototype.slice.call(e),!t)throw new Error('You need to instantiate using the "new" keyword.');Object.defineProperty(t,"currentProvider",{get:function(){return t._provider},set:function(e){return t.setProvider(e)},enumerable:!0,configurable:!0}),e[0]&&e[0]._requestManager?t._requestManager=e[0]._requestManager:t._requestManager=new n.Manager(e[0],e[1]),t.givenProvider=n.Manager.givenProvider,t.providers=n.Manager.providers,t._provider=t._requestManager.provider,t.setProvider||(t.setProvider=function(e,r){return t._requestManager.setProvider(e,r),t._provider=t._requestManager.provider,!0}),t.setRequestManager=function(e){t._requestManager=e,t._provider=e.provider},t.BatchRequest=n.BatchManager.bind(null,t._requestManager),t.extend=i(t)},addProviders:function(t){t.givenProvider=n.Manager.givenProvider,t.providers=n.Manager.providers}}},function(t,e,r){"use strict";var n=r(56),i=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};t.exports=h;var o=Object.create(r(47));o.inherits=r(3);var a=r(117),s=r(75);o.inherits(h,a);for(var u=i(s.prototype),f=0;f>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function u(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function f(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function c(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function h(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function l(t){return t.toString(this.encoding)}function d(t){return t&&t.length?this.write(t):""}e.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(t.lastNeed=i-1),i;if(--n=0)return i>0&&(t.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},function(t,e,r){"use strict";var n=r(0),i=n(r(48)),o=n(r(31)),a=n(r(44)),s=n(r(78)),u=n(r(2));function f(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function c(t){for(var e=1;e1?(t[r[0]]=t[r[0]]||{},t[r[0]][r[1]]=e):t[r[0]]=e},v.prototype.getCall=function(t){return"function"==typeof this.call?this.call(t):this.call},v.prototype.extractCallback=function(t){if("function"==typeof t[t.length-1])return t.pop()},v.prototype.validateArgs=function(t){if(t.length!==this.params)throw h.InvalidNumberOfParams(t.length,this.params,this.name)},v.prototype.formatInput=function(t){var e=this;return this.inputFormatter?this.inputFormatter.map((function(r,n){return r?r.call(e,t[n]):t[n]})):t},v.prototype.formatOutput=function(t){var e=this;return Array.isArray(t)?t.map((function(t){return e.outputFormatter&&t?e.outputFormatter(t):t})):this.outputFormatter&&t?this.outputFormatter(t):t},v.prototype.toPayload=function(t){var e=this.getCall(t),r=this.extractCallback(t),n=this.formatInput(t);this.validateArgs(n);var i={method:e,params:n,callback:r};return this.transformPayload&&(i=this.transformPayload(i)),i},v.prototype._confirmTransaction=function(t,e,r){var n=this,o=!1,a=!0,f=0,c=0,y=null,g=null,w=r.params[0]&&"object"===(0,u.default)(r.params[0])&&r.params[0].gas?r.params[0].gas:null,_=!!r.params[0]&&"object"===(0,u.default)(r.params[0])&&r.params[0].data&&r.params[0].from&&!r.params[0].to,k=_&&r.params[0].data.length>2,M=[new v({name:"getBlockByNumber",call:"eth_getBlockByNumber",params:2,inputFormatter:[l.inputBlockNumberFormatter,function(t){return!!t}],outputFormatter:l.outputBlockFormatter}),new v({name:"getTransactionReceipt",call:"eth_getTransactionReceipt",params:1,inputFormatter:[null],outputFormatter:l.outputTransactionReceiptFormatter}),new v({name:"getCode",call:"eth_getCode",params:2,inputFormatter:[l.inputAddressFormatter,l.inputDefaultBlockNumberFormatter]}),new v({name:"getTransactionByHash",call:"eth_getTransactionByHash",params:1,inputFormatter:[null],outputFormatter:l.outputTransactionFormatter}),new m({name:"subscribe",type:"eth",subscriptions:{newBlockHeaders:{subscriptionName:"newHeads",params:0,outputFormatter:l.outputBlockFormatter}}})],S={};M.forEach((function(t){t.attachToObject(S),t.requestManager=n.requestManager}));var A=function(u,m,v,M,A){if(!v)return A||(A={unsubscribe:function(){clearInterval(y)}}),(u?p.resolve(u):S.getTransactionReceipt(e)).catch((function(e){A.unsubscribe(),o=!0,d._fireError({message:"Failed to check for transaction receipt:",data:e},t.eventEmitter,t.reject)})).then(function(){var e=(0,s.default)(i.default.mark((function e(r){var o,s,f;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r&&r.blockHash){e.next=2;break}throw new Error("Receipt missing or blockHash null");case 2:if(n.extraFormatters&&n.extraFormatters.receiptFormatter&&(r=n.extraFormatters.receiptFormatter(r)),!(t.eventEmitter.listeners("confirmation").length>0)){e.next=28;break}if(void 0!==u&&0===c){e.next=25;break}return e.next=7,S.getBlockByNumber("latest");case 7:if(s=e.sent,f=s?s.hash:null,!m){e.next=24;break}if(!g){e.next=17;break}return e.next=13,S.getBlockByNumber(g.number+1);case 13:(o=e.sent)&&(g=o,t.eventEmitter.emit("confirmation",c,r,f)),e.next=22;break;case 17:return e.next=19,S.getBlockByNumber(r.blockNumber);case 19:o=e.sent,g=o,t.eventEmitter.emit("confirmation",c,r,f);case 22:e.next=25;break;case 24:t.eventEmitter.emit("confirmation",c,r,f);case 25:(m&&o||!m)&&c++,a=!1,c===n.transactionConfirmationBlocks+1&&(A.unsubscribe(),t.eventEmitter.removeAllListeners());case 28:return e.abrupt("return",r);case 29:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).then(function(){var e=(0,s.default)(i.default.mark((function e(r){var s;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!_||o){e.next=19;break}if(r.contractAddress){e.next=5;break}return a&&(A.unsubscribe(),o=!0),d._fireError(h.NoContractAddressFoundError(r),t.eventEmitter,t.reject,null,r),e.abrupt("return");case 5:return e.prev=5,e.next=8,S.getCode(r.contractAddress);case 8:s=e.sent,e.next=13;break;case 11:e.prev=11,e.t0=e.catch(5);case 13:if(s){e.next=15;break}return e.abrupt("return");case 15:!0===r.status&&k||s.length>2?(t.eventEmitter.emit("receipt",r),n.extraFormatters&&n.extraFormatters.contractDeployFormatter?t.resolve(n.extraFormatters.contractDeployFormatter(r)):t.resolve(r),a&&t.eventEmitter.removeAllListeners()):d._fireError(h.ContractCodeNotStoredError(r),t.eventEmitter,t.reject,null,r),a&&A.unsubscribe(),o=!0;case 19:return e.abrupt("return",r);case 20:case"end":return e.stop()}}),e,null,[[5,11]])})));return function(t){return e.apply(this,arguments)}}()).then(function(){var e=(0,s.default)(i.default.mark((function e(s){var u,f,c,p;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(_||o){e.next=35;break}if(s.outOfGas||w&&w===s.gasUsed||!0!==s.status&&"0x1"!==s.status&&void 0!==s.status){e.next=7;break}t.eventEmitter.emit("receipt",s),t.resolve(s),a&&t.eventEmitter.removeAllListeners(),e.next=33;break;case 7:if(JSON.stringify(s,null,2),!1!==s.status&&"0x0"!==s.status){e.next=32;break}if(e.prev=9,u=null,!n.handleRevert||"eth_sendTransaction"!==n.call&&"eth_sendRawTransaction"!==n.call){e.next=24;break}return f=r.params[0],"eth_sendRawTransaction"===n.call&&(c=r.params[0],p=b.parse(c),f=l.inputTransactionFormatter({data:p.data,to:p.to,from:p.from,gas:p.gasLimit.toHexString(),gasPrice:p.gasPrice.toHexString(),value:p.value.toHexString()})),e.next=16,n.getRevertReason(f,s.blockNumber);case 16:if(!(u=e.sent)){e.next=21;break}d._fireError(h.TransactionRevertInstructionError(u.reason,u.signature,s),t.eventEmitter,t.reject,null,s),e.next=22;break;case 21:throw!1;case 22:e.next=25;break;case 24:throw!1;case 25:e.next=30;break;case 27:e.prev=27,e.t0=e.catch(9),d._fireError(h.TransactionRevertedWithoutReasonError(s),t.eventEmitter,t.reject,null,s);case 30:e.next=33;break;case 32:d._fireError(h.TransactionOutOfGasError(s),t.eventEmitter,t.reject,null,s);case 33:a&&A.unsubscribe(),o=!0;case 35:case"end":return e.stop()}}),e,null,[[9,27]])})));return function(t){return e.apply(this,arguments)}}()).catch((function(){f++,m?f-1>=n.transactionPollingTimeout&&(A.unsubscribe(),o=!0,d._fireError(h.TransactionError("Transaction was not mined within "+n.transactionPollingTimeout+" seconds, please make sure your transaction was properly sent. Be aware that it might still be mined!"),t.eventEmitter,t.reject)):f-1>=n.transactionBlockTimeout&&(A.unsubscribe(),o=!0,d._fireError(h.TransactionError("Transaction was not mined within "+n.transactionBlockTimeout+" blocks, please make sure your transaction was properly sent. Be aware that it might still be mined!"),t.eventEmitter,t.reject))}));A.unsubscribe(),o=!0,d._fireError({message:"Failed to subscribe to new newBlockHeaders to confirm the transaction receipts.",data:v},t.eventEmitter,t.reject)},x=function(t){var e=function(){y=setInterval(A.bind(null,t,!0),1e3)};this.requestManager.provider.on?S.subscribe("newBlockHeaders",(function(r,n,i){r||!n?e():A(t,!1,r,0,i)})):e()}.bind(this);S.getTransactionReceipt(e).then((function(e){e&&e.blockHash?(t.eventEmitter.listeners("confirmation").length>0&&x(e),A(e,!1)):o||x()})).catch((function(){o||x()}))};var y=function(t,e){return"number"==typeof t?e.wallet[t]:t&&"object"===(0,u.default)(t)&&t.address&&t.privateKey?t:e.wallet[t.toLowerCase()]};function g(t,e){return new Promise((function(r,n){try{var i=new v({name:"getBlockByNumber",call:"eth_getBlockByNumber",params:2,inputFormatter:[function(t){return t?d.toHex(t):"latest"},function(){return!1}]}).createFunction(t.requestManager),a=new v({name:"getGasPrice",call:"eth_gasPrice",params:0}).createFunction(t.requestManager);Promise.all([i(),a()]).then((function(t){var n=(0,o.default)(t,2),i=n[0],a=n[1];if(i&&i.baseFeePerGas){var s,u;e.gasPrice?(s=e.gasPrice,u=e.gasPrice,delete e.gasPrice):(s=e.maxPriorityFeePerGas||"0x3B9ACA00",u=e.maxFeePerGas||d.toHex(d.toBN(i.baseFeePerGas).mul(d.toBN(2)).add(d.toBN(s)))),r({maxFeePerGas:u,maxPriorityFeePerGas:s})}else{if(e.maxPriorityFeePerGas||e.maxFeePerGas)throw Error("Network doesn't support eip-1559");r({gasPrice:a})}}))}catch(t){n(t)}}))}v.prototype.buildCall=function(){var t=this,e="eth_sendTransaction"===t.call||"eth_sendRawTransaction"===t.call,r="eth_call"===t.call,n=function(){var n=p(!e),i=t.toPayload(Array.prototype.slice.call(arguments)),o=function(o,a){var s;if(t.handleRevert&&r&&t.abiCoder&&(!o&&t.isRevertReasonString(a)?s=a.substring(10):o&&o.data&&(s=o.data.substring(10)),s)){var u=t.abiCoder.decodeParameter("string","0x"+s);return void d._fireError(h.RevertInstructionError(u,"Error(String)"),n.eventEmitter,n.reject,i.callback,{reason:u,signature:"Error(String)"})}try{a=t.formatOutput(a)}catch(t){o=t}if(a instanceof Error&&(o=a),o)return o.error&&(o=o.error),d._fireError(o,n.eventEmitter,n.reject,i.callback);i.callback&&i.callback(null,a),e?(n.eventEmitter.emit("transactionHash",a),t._confirmTransaction(n,a,i)):o||n.resolve(a)},a=function(e){var r=c(c({},i),{},{method:"eth_sendRawTransaction",params:[e.rawTransaction]});t.requestManager.send(r,o)},s=function(t,e){var r;if(e&&e.accounts&&e.accounts.wallet&&e.accounts.wallet.length)if("eth_sendTransaction"===t.method){var i=t.params[0];if((r=y(i&&"object"===(0,u.default)(i)?i.from:null,e.accounts))&&r.privateKey)return delete(i=JSON.parse(JSON.stringify(i))).from,e.defaultChain&&!i.chain&&(i.chain=e.defaultChain),e.defaultHardfork&&!i.hardfork&&(i.hardfork=e.defaultHardfork),e.defaultCommon&&!i.common&&(i.common=e.defaultCommon),void e.accounts.signTransaction(i,r.privateKey).then(a).catch((function(t){if("function"==typeof n.eventEmitter.listeners&&n.eventEmitter.listeners("error").length){try{n.eventEmitter.emit("error",t)}catch(t){}n.eventEmitter.removeAllListeners(),n.eventEmitter.catch((function(){}))}n.reject(t)}))}else if("eth_sign"===t.method){var s=t.params[1];if((r=y(t.params[0],e.accounts))&&r.privateKey){var f=e.accounts.sign(s,r.privateKey);return t.callback&&t.callback(null,f.signature),void n.resolve(f.signature)}}return e.requestManager.send(t,o)};return e&&i.params[0]&&"object"===(0,u.default)(i.params[0])&&void 0===i.params[0].gasPrice&&(void 0===i.params[0].maxPriorityFeePerGas||void 0===i.params[0].maxFeePerGas)?g(t,i.params[0]).then((function(r){void 0!==r.gasPrice?i.params[0].gasPrice=r.gasPrice:void 0!==r.maxPriorityFeePerGas&&void 0!==r.maxFeePerGas&&(i.params[0].maxPriorityFeePerGas=r.maxPriorityFeePerGas,i.params[0].maxFeePerGas=r.maxFeePerGas),e&&setTimeout((function(){n.eventEmitter.emit("sending",i)}),0),s(i,t)})):(e&&setTimeout((function(){n.eventEmitter.emit("sending",i)}),0),s(i,t)),e&&setTimeout((function(){n.eventEmitter.emit("sent",i)}),0),n.eventEmitter};return n.method=t,n.request=this.request.bind(this),n},v.prototype.getRevertReason=function(t,e){var r=this;return new Promise((function(n,i){new v({name:"call",call:"eth_call",params:2,abiCoder:r.abiCoder,handleRevert:!0}).createFunction(r.requestManager)(t,d.numberToHex(e)).then((function(){n(!1)})).catch((function(t){t.reason?n({reason:t.reason,signature:t.signature}):i(t)}))}))},v.prototype.isRevertReasonString=function(t){return"string"==typeof t&&(t.length-2)/2%32==4&&"0x08c379a0"===t.substring(0,10)},v.prototype.request=function(){var t=this.toPayload(Array.prototype.slice.call(arguments));return t.format=this.formatOutput.bind(this),t},t.exports=v},function(t,e,r){"use strict";var n=r(254),i=r(255),o=r(124),a=r(256);t.exports=function(t,e){return n(t)||i(t,e)||o(t,e)||a()},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.keccak256=function(t){return"0x"+i.default.keccak_256((0,o.arrayify)(t))};var i=n(r(262)),o=r(11)},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.defineReadOnly=h,e.getStatic=function(t,e){for(var r=0;r<32;r++){if(t[e])return t[e];if(!t.prototype||"object"!==(0,a.default)(t.prototype))break;t=Object.getPrototypeOf(t.prototype).constructor}return null},e.resolveProperties=function(t){return f(this,void 0,void 0,i.default.mark((function e(){var r,n;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Object.keys(t).map((function(e){var r=t[e];return Promise.resolve(r).then((function(t){return{key:e,value:t}}))})),e.next=3,Promise.all(r);case 3:return n=e.sent,e.abrupt("return",n.reduce((function(t,e){return t[e.key]=e.value,t}),{}));case 5:case"end":return e.stop()}}),e)})))},e.checkProperties=function(t,e){t&&"object"===(0,a.default)(t)||c.throwArgumentError("invalid object","object",t);Object.keys(t).forEach((function(r){e[r]||c.throwArgumentError("invalid object key - "+r,"transaction:"+r,t)}))},e.shallowCopy=function(t){var e={};for(var r in t)e[r]=t[r];return e},e.deepCopy=p,e.Description=void 0;var i=n(r(48)),o=n(r(5)),a=n(r(2)),s=r(12),u=r(269),f=function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function a(t){try{u(n.next(t))}catch(t){o(t)}}function s(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,s)}u((n=n.apply(t,e||[])).next())}))},c=new s.Logger(u.version);function h(t,e,r){Object.defineProperty(t,e,{enumerable:!0,value:r,writable:!1})}var l={bigint:!0,boolean:!0,function:!0,number:!0,string:!0};function d(t){if(function t(e){if(null==e||l[(0,a.default)(e)])return!0;if(Array.isArray(e)||"object"===(0,a.default)(e)){if(!Object.isFrozen(e))return!1;for(var r=Object.keys(e),n=0;n=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void i(!1,"Invalid character in "+t)}function f(t,e,r){var n=u(t,r);return r-1>=e&&(n|=u(t,r-1)<<4),n}function c(t,e,r,n){for(var o=0,a=0,s=Math.min(t.length,r),u=e;u=49?f-49+10:f>=17?f-17+10:f,i(f>=0&&a0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,r,n){if("number"==typeof t)return this._initNumber(t,r,n);if("object"===(0,e.default)(t))return this._initArray(t,r,n);"hex"===r&&(r=16),i(r===(0|r)&&r>=2&&r<=36);var o=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(o++,this.negative=1),o=0;n-=3)a=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},a.prototype._parseHex=function(t,e,r){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=2)i=f(t,e,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(t.length-e)%2==0?e+1:e;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,a=o%n,s=Math.min(o,o-a)+r,u=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!=typeof Symbol&&"function"==typeof Symbol.for)try{a.prototype[Symbol.for("nodejs.util.inspect.custom")]=l}catch(t){a.prototype.inspect=l}else a.prototype.inspect=l;function l(){return(this.red?""}var d=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],p=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],m=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var n=0,o=0,a=0;a>>24-n&16777215)||a!==this.length-1?d[6-u.length]+u+r:u+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=p[t],c=m[t];r="";var h=this.clone();for(h.negative=0;!h.isZero();){var l=h.modrn(c).toString(t);r=(h=h.idivn(c)).isZero()?l+r:d[f-l.length]+l+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16,2)},s&&(a.prototype.toBuffer=function(t,e){return this.toArrayLike(s,t,e)}),a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)};function b(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var f=1;f>>26,h=67108863&u,l=Math.min(f,e.length-1),d=Math.max(0,f-t.length+1);d<=l;d++){var p=f-d|0;c+=(a=(i=0|t.words[p])*(o=0|e.words[d])+h)/67108864|0,h=67108863&a}r.words[f]=0|h,u=0|c}return 0!==u?r.words[f]=0|u:r.length--,r._strip()}a.prototype.toArrayLike=function(t,e,r){this._strip();var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0");var a=function(t,e){return t.allocUnsafe?t.allocUnsafe(e):new t(e)}(t,o);return this["_toArrayLike"+("le"===e?"LE":"BE")](a,n),a},a.prototype._toArrayLikeLE=function(t,e){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(t[r--]=a>>8&255),r>=0&&(t[r--]=a>>16&255),6===o?(r>=0&&(t[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(t[r--]=n;r>=0;)t[r--]=0},Math.clz32?a.prototype._countBits=function(t){return 32-Math.clz32(t)}:a.prototype._countBits=function(t){var e=t,r=0;return e>=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){i("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-r),this._strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){i("number"==typeof t&&t>=0);var r=t/26|0,n=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,m=d>>>13,b=0|a[2],v=8191&b,y=b>>>13,g=0|a[3],w=8191&g,_=g>>>13,k=0|a[4],M=8191&k,S=k>>>13,A=0|a[5],x=8191&A,E=A>>>13,O=0|a[6],P=8191&O,B=O>>>13,T=0|a[7],R=8191&T,I=T>>>13,C=0|a[8],U=8191&C,j=C>>>13,N=0|a[9],L=8191&N,F=N>>>13,D=0|s[0],q=8191&D,H=D>>>13,z=0|s[1],K=8191&z,G=z>>>13,V=0|s[2],W=8191&V,Z=V>>>13,J=0|s[3],X=8191&J,Y=J>>>13,$=0|s[4],Q=8191&$,tt=$>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ft=st>>>13,ct=0|s[8],ht=8191&ct,lt=ct>>>13,dt=0|s[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var bt=(f+(n=Math.imul(h,q))|0)+((8191&(i=(i=Math.imul(h,H))+Math.imul(l,q)|0))<<13)|0;f=((o=Math.imul(l,H))+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(p,q),i=(i=Math.imul(p,H))+Math.imul(m,q)|0,o=Math.imul(m,H);var vt=(f+(n=n+Math.imul(h,K)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(l,K)|0))<<13)|0;f=((o=o+Math.imul(l,G)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,q),i=(i=Math.imul(v,H))+Math.imul(y,q)|0,o=Math.imul(y,H),n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,G)|0;var yt=(f+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,W)|0))<<13)|0;f=((o=o+Math.imul(l,Z)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,q),i=(i=Math.imul(w,H))+Math.imul(_,q)|0,o=Math.imul(_,H),n=n+Math.imul(v,K)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,Z)|0;var gt=(f+(n=n+Math.imul(h,X)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(l,X)|0))<<13)|0;f=((o=o+Math.imul(l,Y)|0)+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(M,q),i=(i=Math.imul(M,H))+Math.imul(S,q)|0,o=Math.imul(S,H),n=n+Math.imul(w,K)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(_,K)|0,o=o+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,Z)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var wt=(f+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(l,Q)|0))<<13)|0;f=((o=o+Math.imul(l,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(x,q),i=(i=Math.imul(x,H))+Math.imul(E,q)|0,o=Math.imul(E,H),n=n+Math.imul(M,K)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,K)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,Z)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,Z)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var _t=(f+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(l,rt)|0))<<13)|0;f=((o=o+Math.imul(l,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(P,q),i=(i=Math.imul(P,H))+Math.imul(B,q)|0,o=Math.imul(B,H),n=n+Math.imul(x,K)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(E,K)|0,o=o+Math.imul(E,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Z)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,Z)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var kt=(f+(n=n+Math.imul(h,ot)|0)|0)+((8191&(i=(i=i+Math.imul(h,at)|0)+Math.imul(l,ot)|0))<<13)|0;f=((o=o+Math.imul(l,at)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(R,q),i=(i=Math.imul(R,H))+Math.imul(I,q)|0,o=Math.imul(I,H),n=n+Math.imul(P,K)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(B,K)|0,o=o+Math.imul(B,G)|0,n=n+Math.imul(x,W)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,Z)|0,n=n+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,Y)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var Mt=(f+(n=n+Math.imul(h,ut)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(l,ut)|0))<<13)|0;f=((o=o+Math.imul(l,ft)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(U,q),i=(i=Math.imul(U,H))+Math.imul(j,q)|0,o=Math.imul(j,H),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(B,W)|0,o=o+Math.imul(B,Z)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ft)|0;var St=(f+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,lt)|0)+Math.imul(l,ht)|0))<<13)|0;f=((o=o+Math.imul(l,lt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(L,q),i=(i=Math.imul(L,H))+Math.imul(F,q)|0,o=Math.imul(F,H),n=n+Math.imul(U,K)|0,i=(i=i+Math.imul(U,G)|0)+Math.imul(j,K)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,Z)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(B,X)|0,o=o+Math.imul(B,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,o=o+Math.imul(S,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,at)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ft)|0,n=n+Math.imul(p,ht)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ht)|0,o=o+Math.imul(m,lt)|0;var At=(f+(n=n+Math.imul(h,pt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(l,pt)|0))<<13)|0;f=((o=o+Math.imul(l,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(L,K),i=(i=Math.imul(L,G))+Math.imul(F,K)|0,o=Math.imul(F,G),n=n+Math.imul(U,W)|0,i=(i=i+Math.imul(U,Z)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,Z)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,tt)|0,n=n+Math.imul(x,rt)|0,i=(i=i+Math.imul(x,nt)|0)+Math.imul(E,rt)|0,o=o+Math.imul(E,nt)|0,n=n+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(S,ot)|0,o=o+Math.imul(S,at)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,ft)|0,n=n+Math.imul(v,ht)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ht)|0,o=o+Math.imul(y,lt)|0;var xt=(f+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;f=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(L,W),i=(i=Math.imul(L,Z))+Math.imul(F,W)|0,o=Math.imul(F,Z),n=n+Math.imul(U,X)|0,i=(i=i+Math.imul(U,Y)|0)+Math.imul(j,X)|0,o=o+Math.imul(j,Y)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(B,rt)|0,o=o+Math.imul(B,nt)|0,n=n+Math.imul(x,ot)|0,i=(i=i+Math.imul(x,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,n=n+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ut)|0,o=o+Math.imul(S,ft)|0,n=n+Math.imul(w,ht)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ht)|0,o=o+Math.imul(_,lt)|0;var Et=(f+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;f=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(L,X),i=(i=Math.imul(L,Y))+Math.imul(F,X)|0,o=Math.imul(F,Y),n=n+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,tt)|0,n=n+Math.imul(R,rt)|0,i=(i=i+Math.imul(R,nt)|0)+Math.imul(I,rt)|0,o=o+Math.imul(I,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(B,ot)|0,o=o+Math.imul(B,at)|0,n=n+Math.imul(x,ut)|0,i=(i=i+Math.imul(x,ft)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ft)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,lt)|0)+Math.imul(S,ht)|0,o=o+Math.imul(S,lt)|0;var Ot=(f+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;f=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,tt))+Math.imul(F,Q)|0,o=Math.imul(F,tt),n=n+Math.imul(U,rt)|0,i=(i=i+Math.imul(U,nt)|0)+Math.imul(j,rt)|0,o=o+Math.imul(j,nt)|0,n=n+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(B,ut)|0,o=o+Math.imul(B,ft)|0,n=n+Math.imul(x,ht)|0,i=(i=i+Math.imul(x,lt)|0)+Math.imul(E,ht)|0,o=o+Math.imul(E,lt)|0;var Pt=(f+(n=n+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,pt)|0))<<13)|0;f=((o=o+Math.imul(S,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(L,rt),i=(i=Math.imul(L,nt))+Math.imul(F,rt)|0,o=Math.imul(F,nt),n=n+Math.imul(U,ot)|0,i=(i=i+Math.imul(U,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,n=n+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ft)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ft)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(B,ht)|0,o=o+Math.imul(B,lt)|0;var Bt=(f+(n=n+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,mt)|0)+Math.imul(E,pt)|0))<<13)|0;f=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),n=n+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ft)|0)+Math.imul(j,ut)|0,o=o+Math.imul(j,ft)|0,n=n+Math.imul(R,ht)|0,i=(i=i+Math.imul(R,lt)|0)+Math.imul(I,ht)|0,o=o+Math.imul(I,lt)|0;var Tt=(f+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(B,pt)|0))<<13)|0;f=((o=o+Math.imul(B,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(L,ut),i=(i=Math.imul(L,ft))+Math.imul(F,ut)|0,o=Math.imul(F,ft),n=n+Math.imul(U,ht)|0,i=(i=i+Math.imul(U,lt)|0)+Math.imul(j,ht)|0,o=o+Math.imul(j,lt)|0;var Rt=(f+(n=n+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(I,pt)|0))<<13)|0;f=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(L,ht),i=(i=Math.imul(L,lt))+Math.imul(F,ht)|0,o=Math.imul(F,lt);var It=(f+(n=n+Math.imul(U,pt)|0)|0)+((8191&(i=(i=i+Math.imul(U,mt)|0)+Math.imul(j,pt)|0))<<13)|0;f=((o=o+Math.imul(j,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Ct=(f+(n=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,mt))+Math.imul(F,pt)|0))<<13)|0;return f=((o=Math.imul(F,mt))+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,u[0]=bt,u[1]=vt,u[2]=yt,u[3]=gt,u[4]=wt,u[5]=_t,u[6]=kt,u[7]=Mt,u[8]=St,u[9]=At,u[10]=xt,u[11]=Et,u[12]=Ot,u[13]=Pt,u[14]=Bt,u[15]=Tt,u[16]=Rt,u[17]=It,u[18]=Ct,0!==f&&(u[19]=f,r.length++),r};function y(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function g(t,e,r){return y(t,e,r)}function w(t,e){this.x=t,this.y=e}Math.imul||(v=b),a.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?v(this,t,e):r<63?b(this,t,e):r<1024?y(this,t,e):g(this,t,e)},w.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},w.prototype.permute=function(t,e,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[n]=67108863&a}return 0!==r&&(this.words[n]=r,this.length++),e?this.ineg():this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i&1}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(e=0;e>>26-r}a&&(this.words[e]=a,this.length++)}if(0!==n){for(e=this.length-1;e>=0;e--)this.words[e+n]=this.words[e];for(e=0;e=0),n=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,f=0;f=0&&(0!==c||f>=n);f--){var h=0|this.words[f];this.words[f]=c<<26-o|h>>>o,c=h&s}return u&&0!==c&&(u.words[u.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},a.prototype.ishrn=function(t,e,r){return i(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){i("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,n=1<=0);var e=t%26,r=(t-e)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var n=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(i("number"==typeof t),i(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[n+r]=67108863&o}for(;n>26,this.words[n+r]=67108863&o;if(0===s)return this._strip();for(i(-1===s),s=0,n=0;n>26,this.words[n]=67108863&o;return this.negative=1,this._strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==e){(s=new a(null)).length=u+1,s.words=new Array(s.length);for(var f=0;f=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s._strip(),n._strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return i(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(n=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:n,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modrn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modrn(t.words[0]))}:this._wordDiv(t,e);var n,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modrn=function(t){var e=t<0;e&&(t=-t),i(t<=67108863);for(var r=(1<<26)%t,n=0,o=this.length-1;o>=0;o--)n=(r*n+(0|this.words[o]))%t;return e?-n:n},a.prototype.modn=function(t){return this.modrn(t)},a.prototype.idivn=function(t){var e=t<0;e&&(t=-t),i(t<=67108863);for(var r=0,n=this.length-1;n>=0;n--){var o=(0|this.words[n])+67108864*r;this.words[n]=o/t|0,r=o%t}return this._strip(),e?this.ineg():this},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n=new a(1),o=new a(0),s=new a(0),u=new a(1),f=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++f;for(var c=r.clone(),h=e.clone();!e.isZero();){for(var l=0,d=1;0==(e.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(e.iushrn(l);l-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(c),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,m=1;0==(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(c),u.isub(h)),s.iushrn(1),u.iushrn(1);e.cmp(r)>=0?(e.isub(r),n.isub(s),o.isub(u)):(r.isub(e),s.isub(n),u.isub(o))}return{a:s,b:u,gcd:r.iushln(f)}},a.prototype._invmp=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n,o=new a(1),s=new a(0),u=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var f=0,c=1;0==(e.words[0]&c)&&f<26;++f,c<<=1);if(f>0)for(e.iushrn(f);f-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(n=0===e.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(t),n},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){i("number"==typeof t);var e=t%26,r=(t-e)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)e=1;else{r&&(t=-t),i(t<=67108863,"Number is too big");var n=0|this.words[0];e=n===t?0:nt.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new E(t)},a.prototype.toRed=function(t){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return i(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return i(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var _={k256:null,p224:null,p192:null,p25519:null};function k(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function M(){k.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function S(){k.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function A(){k.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function x(){k.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function E(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else i(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function O(t){E.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}k.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},k.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},k.prototype.split=function(t,e){t.iushrn(this.n,0,e)},k.prototype.imulK=function(t){return t.imul(this.k)},o(M,k),M.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},M.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(_[t])return _[t];var e;if("k256"===t)e=new M;else if("p224"===t)e=new S;else if("p192"===t)e=new A;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new x}return _[t]=e,e},E.prototype._verify1=function(t){i(0===t.negative,"red works only with positives"),i(t.red,"red works only with red numbers")},E.prototype._verify2=function(t,e){i(0==(t.negative|e.negative),"red works only with positives"),i(t.red&&t.red===e.red,"red works only with red numbers")},E.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):(h(t,t.umod(this.m)._forceRed(this)),t)},E.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},E.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},E.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},E.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},E.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},E.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},E.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},E.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},E.prototype.isqr=function(t){return this.imul(t,t.clone())},E.prototype.sqr=function(t){return this.mul(t,t)},E.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(i(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),u=s.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,f).cmp(u);)c.redIAdd(u);for(var h=this.pow(c,n),l=this.pow(t,n.addn(1).iushrn(1)),d=this.pow(t,n),p=o;0!==d.cmp(s);){for(var m=d,b=0;0!==m.cmp(s);b++)m=m.redSqr();i(b=0;n--){for(var f=e.words[n],c=u-1;c>=0;c--){var h=f>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}u=26}return i},E.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},E.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new O(t)},o(O,E),O.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},O.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},O.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t)}).call(this,r(17)(t))},function(t,e,r){"use strict";(function(t){var n=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.baToJSON=e.addHexPrefix=e.toUnsigned=e.fromSigned=e.bufferToHex=e.bufferToInt=e.toBuffer=e.unpadHexString=e.unpadArray=e.unpadBuffer=e.setLengthRight=e.setLengthLeft=e.zeros=void 0;var i=n(r(34)),o=r(42),a=r(70);e.zeros=function(e){return t.allocUnsafe(e).fill(0)};var s=function(t,r,n){var i=e.zeros(r);return n?t.length0&&"0"===e.toString();)e=(t=t.slice(1))[0];return t};e.unpadBuffer=function(t){return a.assertIsBuffer(t),u(t)},e.unpadArray=function(t){return a.assertIsArray(t),u(t)},e.unpadHexString=function(t){return a.assertIsHexString(t),t=o.stripHexPrefix(t),u(t)},e.toBuffer=function(e){if(null==e)return t.allocUnsafe(0);if(t.isBuffer(e))return t.from(e);if(Array.isArray(e)||e instanceof Uint8Array)return t.from(e);if("string"==typeof e){if(!o.isHexString(e))throw new Error("Cannot convert string to buffer. toBuffer only supports 0x-prefixed hex strings and this string was given: "+e);return t.from(o.padToEven(o.stripHexPrefix(e)),"hex")}if("number"==typeof e)return o.intToBuffer(e);if(i.default.isBN(e))return e.toArrayLike(t);if(e.toArray)return t.from(e.toArray());if(e.toBuffer)return t.from(e.toBuffer());throw new Error("invalid type")},e.bufferToInt=function(t){return new i.default(e.toBuffer(t)).toNumber()},e.bufferToHex=function(t){return"0x"+(t=e.toBuffer(t)).toString("hex")},e.fromSigned=function(t){return new i.default(t).fromTwos(256)},e.toUnsigned=function(e){return t.from(e.toTwos(256).toArray())},e.addHexPrefix=function(t){return"string"!=typeof t||o.isHexPrefixed(t)?t:"0x"+t},e.baToJSON=function(r){if(t.isBuffer(r))return"0x"+r.toString("hex");if(r instanceof Array){for(var n=[],i=0;i2?"one of ".concat(e," ").concat(t.slice(0,r-1).join(", "),", or ")+t[r-1]:2===r?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}o("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),o("ERR_INVALID_ARG_TYPE",(function(t,e,r){var i,o,s,u;if("string"==typeof e&&(o="not ",e.substr(!s||s<0?0:+s,o.length)===o)?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}(t," argument"))u="The ".concat(t," ").concat(i," ").concat(a(e,"type"));else{var f=function(t,e,r){return"number"!=typeof r&&(r=0),!(r+e.length>t.length)&&-1!==t.indexOf(e,r)}(t,".")?"property":"argument";u='The "'.concat(t,'" ').concat(f," ").concat(i," ").concat(a(e,"type"))}return u+=". Received type ".concat((0,n.default)(r))}),TypeError),o("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),o("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),o("ERR_STREAM_PREMATURE_CLOSE","Premature close"),o("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),o("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),o("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),o("ERR_STREAM_WRITE_AFTER_END","write after end"),o("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),o("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),o("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.codes=i},function(t,e,r){"use strict";(function(e){var n=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};t.exports=f;var i=r(152),o=r(156);r(3)(f,i);for(var a=n(o.prototype),s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(4294967295&r)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var o=this._hash();return t?o.toString(t):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=i},function(t,e,r){"use strict";var n=r(0)(r(2));var i={};function o(t,e,r){r||(r=Error);var n=function(t){var r,n;function i(r,n,i){return t.call(this,function(t,r,n){return"string"==typeof e?e:e(t,r,n)}(r,n,i))||this}return n=t,(r=i).prototype=Object.create(n.prototype),r.prototype.constructor=r,r.__proto__=n,i}(r);n.prototype.name=r.name,n.prototype.code=t,i[t]=n}function a(t,e){if(Array.isArray(t)){var r=t.length;return t=t.map((function(t){return String(t)})),r>2?"one of ".concat(e," ").concat(t.slice(0,r-1).join(", "),", or ")+t[r-1]:2===r?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}o("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),o("ERR_INVALID_ARG_TYPE",(function(t,e,r){var i,o,s,u;if("string"==typeof e&&(o="not ",e.substr(!s||s<0?0:+s,o.length)===o)?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}(t," argument"))u="The ".concat(t," ").concat(i," ").concat(a(e,"type"));else{var f=function(t,e,r){return"number"!=typeof r&&(r=0),!(r+e.length>t.length)&&-1!==t.indexOf(e,r)}(t,".")?"property":"argument";u='The "'.concat(t,'" ').concat(f," ").concat(i," ").concat(a(e,"type"))}return u+=". Received type ".concat((0,n.default)(r))}),TypeError),o("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),o("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),o("ERR_STREAM_PREMATURE_CLOSE","Premature close"),o("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),o("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),o("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),o("ERR_STREAM_WRITE_AFTER_END","write after end"),o("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),o("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),o("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.codes=i},function(t,e,r){"use strict";(function(e){var n=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};t.exports=f;var i=r(177),o=r(181);r(3)(f,i);for(var a=n(o.prototype),s=0;s=0}))},intToBuffer:function(t){var r=s(t);return new e(a(r.slice(2)),"hex")},getBinarySize:function(t){if("string"!=typeof t)throw new Error("[ethjs-util] while getting binary size, method getBinarySize requires input 'str' to be type String, got '"+(0,n.default)(t)+"'.");return e.byteLength(t,"utf8")},isHexPrefixed:i,stripHexPrefix:o,padToEven:a,intToHex:s,fromAscii:function(t){for(var e="",r=0;r",'"',"`"," ","\r","\n","\t"]),h=["'"].concat(c),l=["%","/","?",";","#"].concat(h),d=["/","?","#"],p=/^[+a-z0-9A-Z_-]{0,63}$/,m=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,b={javascript:!0,"javascript:":!0},v={javascript:!0,"javascript:":!0},y={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},g=r(227);function w(t,e,r){if(t&&o.isObject(t)&&t instanceof a)return t;var n=new a;return n.parse(t,e,r),n}a.prototype.parse=function(t,e,r){if(!o.isString(t))throw new TypeError("Parameter 'url' must be a string, not "+(0,n.default)(t));var a=t.indexOf("?"),u=-1!==a&&a127?C+="x":C+=I[U];if(!C.match(p)){var N=T.slice(0,O),L=T.slice(O+1),F=I.match(m);F&&(N.push(F[1]),L.unshift(F[2])),L.length&&(w="/"+L.join(".")+w),this.hostname=N.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),B||(this.hostname=i.toASCII(this.hostname));var D=this.port?":"+this.port:"",q=this.hostname||"";this.host=q+D,this.href+=this.host,B&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==w[0]&&(w="/"+w))}if(!b[M])for(O=0,R=h.length;O0)&&r.host.split("@"))&&(r.auth=P.shift(),r.host=r.hostname=P.shift());return r.search=t.search,r.query=t.query,o.isNull(r.pathname)&&o.isNull(r.search)||(r.path=(r.pathname?r.pathname:"")+(r.search?r.search:"")),r.href=r.format(),r}if(!M.length)return r.pathname=null,r.search?r.path="/"+r.search:r.path=null,r.href=r.format(),r;for(var A=M.slice(-1)[0],x=(r.host||t.host||M.length>1)&&("."===A||".."===A)||""===A,E=0,O=M.length;O>=0;O--)"."===(A=M[O])?M.splice(O,1):".."===A?(M.splice(O,1),E++):E&&(M.splice(O,1),E--);if(!_&&!k)for(;E--;E)M.unshift("..");!_||""===M[0]||M[0]&&"/"===M[0].charAt(0)||M.unshift(""),x&&"/"!==M.join("/").substr(-1)&&M.push("");var P,B=""===M[0]||M[0]&&"/"===M[0].charAt(0);S&&(r.hostname=r.host=B?"":M.length?M.shift():"",(P=!!(r.host&&r.host.indexOf("@")>0)&&r.host.split("@"))&&(r.auth=P.shift(),r.host=r.hostname=P.shift()));return(_=_||r.host&&M.length)&&!B&&M.unshift(""),M.length?r.pathname=M.join("/"):(r.pathname=null,r.path=null),o.isNull(r.pathname)&&o.isNull(r.search)||(r.path=(r.pathname?r.pathname:"")+(r.search?r.search:"")),r.auth=t.auth||r.auth,r.slashes=r.slashes||t.slashes,r.href=r.format(),r},a.prototype.parseHost=function(){var t=this.host,e=u.exec(t);e&&(":"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)}},function(t,e,r){"use strict";(e=t.exports=r(117)).Stream=e,e.Readable=e,e.Writable=r(75),e.Duplex=r(28),e.Transform=r(121),e.PassThrough=r(242)},function(t,e,r){"use strict";(function(t){var n=r(0)(r(2));function i(t){return Object.prototype.toString.call(t)}e.isArray=function(t){return Array.isArray?Array.isArray(t):"[object Array]"===i(t)},e.isBoolean=function(t){return"boolean"==typeof t},e.isNull=function(t){return null===t},e.isNullOrUndefined=function(t){return null==t},e.isNumber=function(t){return"number"==typeof t},e.isString=function(t){return"string"==typeof t},e.isSymbol=function(t){return"symbol"===(0,n.default)(t)},e.isUndefined=function(t){return void 0===t},e.isRegExp=function(t){return"[object RegExp]"===i(t)},e.isObject=function(t){return"object"===(0,n.default)(t)&&null!==t},e.isDate=function(t){return"[object Date]"===i(t)},e.isError=function(t){return"[object Error]"===i(t)||t instanceof Error},e.isFunction=function(t){return"function"==typeof t},e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"===(0,n.default)(t)||void 0===t},e.isBuffer=t.isBuffer}).call(this,r(1).Buffer)},function(t,e,r){"use strict";t.exports=r(253)},function(t,e,r){"use strict";var n=r(21),i=r(18);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}e.BlockHash=o,o.prototype.update=function(t,e){if(t=n.toArray(t,e),this.pending?this.pending=this.pending.concat(t):this.pending=t,this.pendingTotal+=t.length,this.pending.length>=this._delta8){var r=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-r,t.length),0===this.pending.length&&(this.pending=null),t=n.join32(t,0,t.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=t>>>16&255,n[i++]=t>>>8&255,n[i++]=255&t}else for(n[i++]=255&t,n[i++]=t>>>8&255,n[i++]=t>>>16&255,n[i++]=t>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o1?(t[r[0]]=t[r[0]]||{},t[r[0]][r[1]]=e):t[r[0]]=e},i.prototype.buildCall=function(){var t=this;return function(){t.subscriptions[arguments[0]]||console.warn("Subscription "+JSON.stringify(arguments[0])+" doesn't exist. Subscribing anyway.");var e=new n({subscription:t.subscriptions[arguments[0]]||{},requestManager:t.requestManager,type:t.type});return e.subscribe.apply(e,arguments)}},t.exports={subscriptions:i,subscription:n}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getAddress=v,e.isAddress=function(t){try{return v(t),!0}catch(t){}return!1},e.getIcapAddress=function(t){var e=(0,i._base16To36)(v(t).substring(2)).toUpperCase();for(;e.length<30;)e="0"+e;return"XE"+b("XE00"+e)+e},e.getContractAddress=function(t){var e=null;try{e=v(t.from)}catch(e){f.throwArgumentError("missing from address","transaction",t)}var r=(0,n.stripZeros)((0,n.arrayify)(i.BigNumber.from(t.nonce).toHexString()));return v((0,n.hexDataSlice)((0,o.keccak256)((0,a.encode)([e,r])),12))},e.getCreate2Address=function(t,e,r){32!==(0,n.hexDataLength)(e)&&f.throwArgumentError("salt must be 32 bytes","salt",e);32!==(0,n.hexDataLength)(r)&&f.throwArgumentError("initCodeHash must be 32 bytes","initCodeHash",r);return v((0,n.hexDataSlice)((0,o.keccak256)((0,n.concat)(["0xff",v(t),e,r])),12))};var n=r(11),i=r(24),o=r(32),a=r(128),s=r(12),u=r(264),f=new s.Logger(u.version);function c(t){(0,n.isHexString)(t,20)||f.throwArgumentError("invalid address","address",t);for(var e=(t=t.toLowerCase()).substring(2).split(""),r=new Uint8Array(40),i=0;i<40;i++)r[i]=e[i].charCodeAt(0);for(var a=(0,n.arrayify)((0,o.keccak256)(r)),s=0;s<40;s+=2)a[s>>1]>>4>=8&&(e[s]=e[s].toUpperCase()),(15&a[s>>1])>=8&&(e[s+1]=e[s+1].toUpperCase());return"0x"+e.join("")}for(var h={},l=0;l<10;l++)h[String(l)]=String(l);for(var d=0;d<26;d++)h[String.fromCharCode(65+d)]=String(10+d);var p,m=Math.floor((p=9007199254740991,Math.log10?Math.log10(p):Math.log(p)/Math.LN10));function b(t){for(var e=(t=(t=t.toUpperCase()).substring(4)+t.substring(0,2)+"00").split("").map((function(t){return h[t]})).join("");e.length>=m;){var r=e.substring(0,m);e=parseInt(r,10)%97+e.substring(r.length)}for(var n=String(98-parseInt(e,10)%97);n.length<2;)n="0"+n;return n}function v(t){var e=null;if("string"!=typeof t&&f.throwArgumentError("invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==t.substring(0,2)&&(t="0x"+t),e=c(t),t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&e!==t&&f.throwArgumentError("bad address checksum","address",t);else if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(t.substring(2,4)!==b(t)&&f.throwArgumentError("bad icap checksum","address",t),e=(0,i._base36To16)(t.substring(4));e.length<40;)e="0"+e;e=c("0x"+e)}else f.throwArgumentError("invalid address","address",t);return e}},function(t,e,r){"use strict";var n=e;n.utils=r(21),n.common=r(49),n.sha=r(272),n.ripemd=r(276),n.hmac=r(277),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},function(t,e,r){"use strict";var n=r(27),i=r(30),o=r(16),a=function(){var t=this;n.packageInit(this,arguments),[new i({name:"getId",call:"net_version",params:0,outputFormatter:parseInt}),new i({name:"isListening",call:"net_listening",params:0}),new i({name:"getPeerCount",call:"net_peerCount",params:0,outputFormatter:o.hexToNumber})].forEach((function(e){e.attachToObject(t),e.setRequestManager(t._requestManager)}))};n.addProviders(a),t.exports=a},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"formatBytes32String",{enumerable:!0,get:function(){return n.formatBytes32String}}),Object.defineProperty(e,"parseBytes32String",{enumerable:!0,get:function(){return n.parseBytes32String}}),Object.defineProperty(e,"nameprep",{enumerable:!0,get:function(){return i.nameprep}}),Object.defineProperty(e,"_toEscapedUtf8String",{enumerable:!0,get:function(){return o._toEscapedUtf8String}}),Object.defineProperty(e,"toUtf8Bytes",{enumerable:!0,get:function(){return o.toUtf8Bytes}}),Object.defineProperty(e,"toUtf8CodePoints",{enumerable:!0,get:function(){return o.toUtf8CodePoints}}),Object.defineProperty(e,"toUtf8String",{enumerable:!0,get:function(){return o.toUtf8String}}),Object.defineProperty(e,"UnicodeNormalizationForm",{enumerable:!0,get:function(){return o.UnicodeNormalizationForm}}),Object.defineProperty(e,"Utf8ErrorFuncs",{enumerable:!0,get:function(){return o.Utf8ErrorFuncs}}),Object.defineProperty(e,"Utf8ErrorReason",{enumerable:!0,get:function(){return o.Utf8ErrorReason}});var n=r(292),i=r(294),o=r(81)},function(t){t.exports=JSON.parse('{"identity":0,"ip4":4,"tcp":6,"sha1":17,"sha2-256":18,"sha2-512":19,"sha3-512":20,"sha3-384":21,"sha3-256":22,"sha3-224":23,"shake-128":24,"shake-256":25,"keccak-224":26,"keccak-256":27,"keccak-384":28,"keccak-512":29,"dccp":33,"murmur3-128":34,"murmur3-32":35,"ip6":41,"ip6zone":42,"path":47,"multicodec":48,"multihash":49,"multiaddr":50,"multibase":51,"dns":53,"dns4":54,"dns6":55,"dnsaddr":56,"protobuf":80,"cbor":81,"raw":85,"dbl-sha2-256":86,"rlp":96,"bencode":99,"dag-pb":112,"dag-cbor":113,"libp2p-key":114,"git-raw":120,"torrent-info":123,"torrent-file":124,"leofcoin-block":129,"leofcoin-tx":130,"leofcoin-pr":131,"sctp":132,"eth-block":144,"eth-block-list":145,"eth-tx-trie":146,"eth-tx":147,"eth-tx-receipt-trie":148,"eth-tx-receipt":149,"eth-state-trie":150,"eth-account-snapshot":151,"eth-storage-trie":152,"bitcoin-block":176,"bitcoin-tx":177,"zcash-block":192,"zcash-tx":193,"stellar-block":208,"stellar-tx":209,"md4":212,"md5":213,"bmt":214,"decred-block":224,"decred-tx":225,"ipld-ns":226,"ipfs-ns":227,"swarm-ns":228,"ipns-ns":229,"zeronet":230,"ed25519-pub":237,"dash-block":240,"dash-tx":241,"swarm-manifest":250,"swarm-feed":251,"udp":273,"p2p-webrtc-star":275,"p2p-webrtc-direct":276,"p2p-stardust":277,"p2p-circuit":290,"dag-json":297,"udt":301,"utp":302,"unix":400,"p2p":421,"ipfs":421,"https":443,"onion":444,"onion3":445,"garlic64":446,"garlic32":447,"tls":448,"quic":460,"ws":477,"wss":478,"p2p-websocket-star":479,"http":480,"json":512,"messagepack":513,"x11":4352,"blake2b-8":45569,"blake2b-16":45570,"blake2b-24":45571,"blake2b-32":45572,"blake2b-40":45573,"blake2b-48":45574,"blake2b-56":45575,"blake2b-64":45576,"blake2b-72":45577,"blake2b-80":45578,"blake2b-88":45579,"blake2b-96":45580,"blake2b-104":45581,"blake2b-112":45582,"blake2b-120":45583,"blake2b-128":45584,"blake2b-136":45585,"blake2b-144":45586,"blake2b-152":45587,"blake2b-160":45588,"blake2b-168":45589,"blake2b-176":45590,"blake2b-184":45591,"blake2b-192":45592,"blake2b-200":45593,"blake2b-208":45594,"blake2b-216":45595,"blake2b-224":45596,"blake2b-232":45597,"blake2b-240":45598,"blake2b-248":45599,"blake2b-256":45600,"blake2b-264":45601,"blake2b-272":45602,"blake2b-280":45603,"blake2b-288":45604,"blake2b-296":45605,"blake2b-304":45606,"blake2b-312":45607,"blake2b-320":45608,"blake2b-328":45609,"blake2b-336":45610,"blake2b-344":45611,"blake2b-352":45612,"blake2b-360":45613,"blake2b-368":45614,"blake2b-376":45615,"blake2b-384":45616,"blake2b-392":45617,"blake2b-400":45618,"blake2b-408":45619,"blake2b-416":45620,"blake2b-424":45621,"blake2b-432":45622,"blake2b-440":45623,"blake2b-448":45624,"blake2b-456":45625,"blake2b-464":45626,"blake2b-472":45627,"blake2b-480":45628,"blake2b-488":45629,"blake2b-496":45630,"blake2b-504":45631,"blake2b-512":45632,"blake2s-8":45633,"blake2s-16":45634,"blake2s-24":45635,"blake2s-32":45636,"blake2s-40":45637,"blake2s-48":45638,"blake2s-56":45639,"blake2s-64":45640,"blake2s-72":45641,"blake2s-80":45642,"blake2s-88":45643,"blake2s-96":45644,"blake2s-104":45645,"blake2s-112":45646,"blake2s-120":45647,"blake2s-128":45648,"blake2s-136":45649,"blake2s-144":45650,"blake2s-152":45651,"blake2s-160":45652,"blake2s-168":45653,"blake2s-176":45654,"blake2s-184":45655,"blake2s-192":45656,"blake2s-200":45657,"blake2s-208":45658,"blake2s-216":45659,"blake2s-224":45660,"blake2s-232":45661,"blake2s-240":45662,"blake2s-248":45663,"blake2s-256":45664,"skein256-8":45825,"skein256-16":45826,"skein256-24":45827,"skein256-32":45828,"skein256-40":45829,"skein256-48":45830,"skein256-56":45831,"skein256-64":45832,"skein256-72":45833,"skein256-80":45834,"skein256-88":45835,"skein256-96":45836,"skein256-104":45837,"skein256-112":45838,"skein256-120":45839,"skein256-128":45840,"skein256-136":45841,"skein256-144":45842,"skein256-152":45843,"skein256-160":45844,"skein256-168":45845,"skein256-176":45846,"skein256-184":45847,"skein256-192":45848,"skein256-200":45849,"skein256-208":45850,"skein256-216":45851,"skein256-224":45852,"skein256-232":45853,"skein256-240":45854,"skein256-248":45855,"skein256-256":45856,"skein512-8":45857,"skein512-16":45858,"skein512-24":45859,"skein512-32":45860,"skein512-40":45861,"skein512-48":45862,"skein512-56":45863,"skein512-64":45864,"skein512-72":45865,"skein512-80":45866,"skein512-88":45867,"skein512-96":45868,"skein512-104":45869,"skein512-112":45870,"skein512-120":45871,"skein512-128":45872,"skein512-136":45873,"skein512-144":45874,"skein512-152":45875,"skein512-160":45876,"skein512-168":45877,"skein512-176":45878,"skein512-184":45879,"skein512-192":45880,"skein512-200":45881,"skein512-208":45882,"skein512-216":45883,"skein512-224":45884,"skein512-232":45885,"skein512-240":45886,"skein512-248":45887,"skein512-256":45888,"skein512-264":45889,"skein512-272":45890,"skein512-280":45891,"skein512-288":45892,"skein512-296":45893,"skein512-304":45894,"skein512-312":45895,"skein512-320":45896,"skein512-328":45897,"skein512-336":45898,"skein512-344":45899,"skein512-352":45900,"skein512-360":45901,"skein512-368":45902,"skein512-376":45903,"skein512-384":45904,"skein512-392":45905,"skein512-400":45906,"skein512-408":45907,"skein512-416":45908,"skein512-424":45909,"skein512-432":45910,"skein512-440":45911,"skein512-448":45912,"skein512-456":45913,"skein512-464":45914,"skein512-472":45915,"skein512-480":45916,"skein512-488":45917,"skein512-496":45918,"skein512-504":45919,"skein512-512":45920,"skein1024-8":45921,"skein1024-16":45922,"skein1024-24":45923,"skein1024-32":45924,"skein1024-40":45925,"skein1024-48":45926,"skein1024-56":45927,"skein1024-64":45928,"skein1024-72":45929,"skein1024-80":45930,"skein1024-88":45931,"skein1024-96":45932,"skein1024-104":45933,"skein1024-112":45934,"skein1024-120":45935,"skein1024-128":45936,"skein1024-136":45937,"skein1024-144":45938,"skein1024-152":45939,"skein1024-160":45940,"skein1024-168":45941,"skein1024-176":45942,"skein1024-184":45943,"skein1024-192":45944,"skein1024-200":45945,"skein1024-208":45946,"skein1024-216":45947,"skein1024-224":45948,"skein1024-232":45949,"skein1024-240":45950,"skein1024-248":45951,"skein1024-256":45952,"skein1024-264":45953,"skein1024-272":45954,"skein1024-280":45955,"skein1024-288":45956,"skein1024-296":45957,"skein1024-304":45958,"skein1024-312":45959,"skein1024-320":45960,"skein1024-328":45961,"skein1024-336":45962,"skein1024-344":45963,"skein1024-352":45964,"skein1024-360":45965,"skein1024-368":45966,"skein1024-376":45967,"skein1024-384":45968,"skein1024-392":45969,"skein1024-400":45970,"skein1024-408":45971,"skein1024-416":45972,"skein1024-424":45973,"skein1024-432":45974,"skein1024-440":45975,"skein1024-448":45976,"skein1024-456":45977,"skein1024-464":45978,"skein1024-472":45979,"skein1024-480":45980,"skein1024-488":45981,"skein1024-496":45982,"skein1024-504":45983,"skein1024-512":45984,"skein1024-520":45985,"skein1024-528":45986,"skein1024-536":45987,"skein1024-544":45988,"skein1024-552":45989,"skein1024-560":45990,"skein1024-568":45991,"skein1024-576":45992,"skein1024-584":45993,"skein1024-592":45994,"skein1024-600":45995,"skein1024-608":45996,"skein1024-616":45997,"skein1024-624":45998,"skein1024-632":45999,"skein1024-640":46000,"skein1024-648":46001,"skein1024-656":46002,"skein1024-664":46003,"skein1024-672":46004,"skein1024-680":46005,"skein1024-688":46006,"skein1024-696":46007,"skein1024-704":46008,"skein1024-712":46009,"skein1024-720":46010,"skein1024-728":46011,"skein1024-736":46012,"skein1024-744":46013,"skein1024-752":46014,"skein1024-760":46015,"skein1024-768":46016,"skein1024-776":46017,"skein1024-784":46018,"skein1024-792":46019,"skein1024-800":46020,"skein1024-808":46021,"skein1024-816":46022,"skein1024-824":46023,"skein1024-832":46024,"skein1024-840":46025,"skein1024-848":46026,"skein1024-856":46027,"skein1024-864":46028,"skein1024-872":46029,"skein1024-880":46030,"skein1024-888":46031,"skein1024-896":46032,"skein1024-904":46033,"skein1024-912":46034,"skein1024-920":46035,"skein1024-928":46036,"skein1024-936":46037,"skein1024-944":46038,"skein1024-952":46039,"skein1024-960":46040,"skein1024-968":46041,"skein1024-976":46042,"skein1024-984":46043,"skein1024-992":46044,"skein1024-1000":46045,"skein1024-1008":46046,"skein1024-1016":46047,"skein1024-1024":46048,"holochain-adr-v0":8417572,"holochain-adr-v1":8483108,"holochain-key-v0":9728292,"holochain-key-v1":9793828,"holochain-sig-v0":10645796,"holochain-sig-v1":10711332}')},function(t,e,r){"use strict";e.randomBytes=e.rng=e.pseudoRandomBytes=e.prng=r(22),e.createHash=e.Hash=r(36),e.createHmac=e.Hmac=r(160);var n=r(366),i=Object.keys(n),o=["sha1","sha224","sha256","sha384","sha512","md5","rmd160"].concat(i);e.getHashes=function(){return o};var a=r(163);e.pbkdf2=a.pbkdf2,e.pbkdf2Sync=a.pbkdf2Sync;var s=r(368);e.Cipher=s.Cipher,e.createCipher=s.createCipher,e.Cipheriv=s.Cipheriv,e.createCipheriv=s.createCipheriv,e.Decipher=s.Decipher,e.createDecipher=s.createDecipher,e.Decipheriv=s.Decipheriv,e.createDecipheriv=s.createDecipheriv,e.getCiphers=s.getCiphers,e.listCiphers=s.listCiphers;var u=r(383);e.DiffieHellmanGroup=u.DiffieHellmanGroup,e.createDiffieHellmanGroup=u.createDiffieHellmanGroup,e.getDiffieHellman=u.getDiffieHellman,e.createDiffieHellman=u.createDiffieHellman,e.DiffieHellman=u.DiffieHellman;var f=r(387);e.createSign=f.createSign,e.Sign=f.Sign,e.createVerify=f.createVerify,e.Verify=f.Verify,e.createECDH=r(422);var c=r(423);e.publicEncrypt=c.publicEncrypt,e.privateEncrypt=c.privateEncrypt,e.publicDecrypt=c.publicDecrypt,e.privateDecrypt=c.privateDecrypt;var h=r(426);e.randomFill=h.randomFill,e.randomFillSync=h.randomFillSync,e.createCredentials=function(){throw new Error(["sorry, createCredentials is not implemented yet","we accept pull requests","https://github.com/crypto-browserify/crypto-browserify"].join("\n"))},e.constants={DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8,NPN_ENABLED:1,ALPN_ENABLED:1,RSA_PKCS1_PADDING:1,RSA_SSLV23_PADDING:2,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_X931_PADDING:5,RSA_PKCS1_PSS_PADDING:6,POINT_CONVERSION_COMPRESSED:2,POINT_CONVERSION_UNCOMPRESSED:4,POINT_CONVERSION_HYBRID:6}},function(t,e,r){"use strict";var n=r(4).Buffer;function i(t){n.isBuffer(t)||(t=n.from(t));for(var e=t.length/4|0,r=new Array(e),i=0;i>>24]^c[p>>>16&255]^h[m>>>8&255]^l[255&b]^e[v++],a=f[p>>>24]^c[m>>>16&255]^h[b>>>8&255]^l[255&d]^e[v++],s=f[m>>>24]^c[b>>>16&255]^h[d>>>8&255]^l[255&p]^e[v++],u=f[b>>>24]^c[d>>>16&255]^h[p>>>8&255]^l[255&m]^e[v++],d=o,p=a,m=s,b=u;return o=(n[d>>>24]<<24|n[p>>>16&255]<<16|n[m>>>8&255]<<8|n[255&b])^e[v++],a=(n[p>>>24]<<24|n[m>>>16&255]<<16|n[b>>>8&255]<<8|n[255&d])^e[v++],s=(n[m>>>24]<<24|n[b>>>16&255]<<16|n[d>>>8&255]<<8|n[255&p])^e[v++],u=(n[b>>>24]<<24|n[d>>>16&255]<<16|n[p>>>8&255]<<8|n[255&m])^e[v++],[o>>>=0,a>>>=0,s>>>=0,u>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],u=function(){for(var t=new Array(256),e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;for(var r=[],n=[],i=[[],[],[],[]],o=[[],[],[],[]],a=0,s=0,u=0;u<256;++u){var f=s^s<<1^s<<2^s<<3^s<<4;f=f>>>8^255&f^99,r[a]=f,n[f]=a;var c=t[a],h=t[c],l=t[h],d=257*t[f]^16843008*f;i[0][a]=d<<24|d>>>8,i[1][a]=d<<16|d>>>16,i[2][a]=d<<8|d>>>24,i[3][a]=d,d=16843009*l^65537*h^257*c^16843008*a,o[0][f]=d<<24|d>>>8,o[1][f]=d<<16|d>>>16,o[2][f]=d<<8|d>>>24,o[3][f]=d,0===a?a=s=1:(a=c^t[t[t[l^c]]],s^=t[t[s]])}return{SBOX:r,INV_SBOX:n,SUB_MIX:i,INV_SUB_MIX:o}}();function f(t){this._key=i(t),this._reset()}f.blockSize=16,f.keySize=32,f.prototype.blockSize=f.blockSize,f.prototype.keySize=f.keySize,f.prototype._reset=function(){for(var t=this._key,e=t.length,r=e+6,n=4*(r+1),i=[],o=0;o>>24,a=u.SBOX[a>>>24]<<24|u.SBOX[a>>>16&255]<<16|u.SBOX[a>>>8&255]<<8|u.SBOX[255&a],a^=s[o/e|0]<<24):e>6&&o%e==4&&(a=u.SBOX[a>>>24]<<24|u.SBOX[a>>>16&255]<<16|u.SBOX[a>>>8&255]<<8|u.SBOX[255&a]),i[o]=i[o-e]^a}for(var f=[],c=0;c>>24]]^u.INV_SUB_MIX[1][u.SBOX[l>>>16&255]]^u.INV_SUB_MIX[2][u.SBOX[l>>>8&255]]^u.INV_SUB_MIX[3][u.SBOX[255&l]]}this._nRounds=r,this._keySchedule=i,this._invKeySchedule=f},f.prototype.encryptBlockRaw=function(t){return a(t=i(t),this._keySchedule,u.SUB_MIX,u.SBOX,this._nRounds)},f.prototype.encryptBlock=function(t){var e=this.encryptBlockRaw(t),r=n.allocUnsafe(16);return r.writeUInt32BE(e[0],0),r.writeUInt32BE(e[1],4),r.writeUInt32BE(e[2],8),r.writeUInt32BE(e[3],12),r},f.prototype.decryptBlock=function(t){var e=(t=i(t))[1];t[1]=t[3],t[3]=e;var r=a(t,this._invKeySchedule,u.INV_SUB_MIX,u.INV_SBOX,this._nRounds),o=n.allocUnsafe(16);return o.writeUInt32BE(r[0],0),o.writeUInt32BE(r[3],4),o.writeUInt32BE(r[2],8),o.writeUInt32BE(r[1],12),o},f.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},t.exports.AES=f},function(t,e,r){"use strict";var n=r(4).Buffer,i=r(83);t.exports=function(t,e,r,o){if(n.isBuffer(t)||(t=n.from(t,"binary")),e&&(n.isBuffer(e)||(e=n.from(e,"binary")),8!==e.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var a=r/8,s=n.alloc(a),u=n.alloc(o||0),f=n.alloc(0);a>0||o>0;){var c=new i;c.update(f),c.update(t),e&&c.update(e),f=c.digest();var h=0;if(a>0){var l=s.length-a;h=Math.min(a,f.length),f.copy(s,l,0,h),a-=h}if(h0){var d=u.length-o,p=Math.min(o,f.length-h);f.copy(u,d,h,h+p),o-=p}}return f.fill(0),{key:s,iv:u}}},function(t,e,r){"use strict";var n=r(8),i=r(19),o=i.getNAF,a=i.getJSF,s=i.assert;function u(t,e){this.type=t,this.p=new n(e.p,16),this.red=e.prime?n.red(e.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=e.n&&new n(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function f(t,e){this.curve=t,this.type=e,this.precomputed=null}t.exports=u,u.prototype.point=function(){throw new Error("Not implemented")},u.prototype.validate=function(){throw new Error("Not implemented")},u.prototype._fixedNafMul=function(t,e){s(t.precomputed);var r=t._getDoubles(),n=o(e,1,this._bitLength),i=(1<=a;c--)u=(u<<1)+n[c];f.push(u)}for(var h=this.jpoint(null,null,null),l=this.jpoint(null,null,null),d=i;d>0;d--){for(a=0;a=0;f--){for(var c=0;f>=0&&0===a[f];f--)c++;if(f>=0&&c++,u=u.dblp(c),f<0)break;var h=a[f];s(0!==h),u="affine"===t.type?h>0?u.mixedAdd(i[h-1>>1]):u.mixedAdd(i[-h-1>>1].neg()):h>0?u.add(i[h-1>>1]):u.add(i[-h-1>>1].neg())}return"affine"===t.type?u.toP():u},u.prototype._wnafMulAdd=function(t,e,r,n,i){var s,u,f,c=this._wnafT1,h=this._wnafT2,l=this._wnafT3,d=0;for(s=0;s=1;s-=2){var m=s-1,b=s;if(1===c[m]&&1===c[b]){var v=[e[m],null,null,e[b]];0===e[m].y.cmp(e[b].y)?(v[1]=e[m].add(e[b]),v[2]=e[m].toJ().mixedAdd(e[b].neg())):0===e[m].y.cmp(e[b].y.redNeg())?(v[1]=e[m].toJ().mixedAdd(e[b]),v[2]=e[m].add(e[b].neg())):(v[1]=e[m].toJ().mixedAdd(e[b]),v[2]=e[m].toJ().mixedAdd(e[b].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],g=a(r[m],r[b]);for(d=Math.max(g[0].length,d),l[m]=new Array(d),l[b]=new Array(d),u=0;u=0;s--){for(var S=0;s>=0;){var A=!0;for(u=0;u=0&&S++,k=k.dblp(S),s<0)break;for(u=0;u0?f=h[u][x-1>>1]:x<0&&(f=h[u][-x-1>>1].neg()),k="affine"===f.type?k.mixedAdd(f):k.add(f))}}for(s=0;s=Math.ceil((t.bitLength()+1)/e.step)},f.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;ir.length)throw new Error("invalid rlp: total length is larger than the data");if(0===(s=r.slice(o,h)).length)throw new Error("invalid rlp, List has a invalid length");for(;s.length;)u=e(s),f.push(u.data),s=u.remainder;return{data:f,remainder:r.slice(h)}}(u(e));if(r)return n;if(0!==n.remainder.length)throw new Error("invalid remainder");return n.data},e.getLength=function(e){if(!e||0===e.length)return t.from([]);var r=u(e),n=r[0];if(n<=127)return r.length;if(n<=183)return n-127;if(n<=191)return n-182;if(n<=247)return n-191;var o=n-246;return o+i(r.slice(1,o).toString("hex"),16)}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),e.assertIsString=e.assertIsArray=e.assertIsBuffer=e.assertIsHexString=void 0;var n=r(42);e.assertIsHexString=function(t){if(!n.isHexString(t))throw new Error("This method only supports 0x-prefixed hex strings but input was: "+t)},e.assertIsBuffer=function(e){if(!t.isBuffer(e))throw new Error("This method only supports Buffer but input was: "+e)},e.assertIsArray=function(t){if(!Array.isArray(t))throw new Error("This method only supports number arrays but input was: "+t)},e.assertIsString=function(t){if("string"!=typeof t)throw new Error("This method only supports strings but input was: "+t)}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n="0123456789abcdef".split(""),i=[1,256,65536,16777216],o=[0,8,16,24],a=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],s=function(t){var e,r,n,i,o,s,u,f,c,h,l,d,p,m,b,v,y,g,w,_,k,M,S,A,x,E,O,P,B,T,R,I,C,U,j,N,L,F,D,q,H,z,K,G,V,W,Z,J,X,Y,$,Q,tt,et,rt,nt,it,ot,at,st,ut,ft,ct;for(n=0;n<48;n+=2)i=t[0]^t[10]^t[20]^t[30]^t[40],o=t[1]^t[11]^t[21]^t[31]^t[41],s=t[2]^t[12]^t[22]^t[32]^t[42],u=t[3]^t[13]^t[23]^t[33]^t[43],f=t[4]^t[14]^t[24]^t[34]^t[44],c=t[5]^t[15]^t[25]^t[35]^t[45],h=t[6]^t[16]^t[26]^t[36]^t[46],l=t[7]^t[17]^t[27]^t[37]^t[47],e=(d=t[8]^t[18]^t[28]^t[38]^t[48])^(s<<1|u>>>31),r=(p=t[9]^t[19]^t[29]^t[39]^t[49])^(u<<1|s>>>31),t[0]^=e,t[1]^=r,t[10]^=e,t[11]^=r,t[20]^=e,t[21]^=r,t[30]^=e,t[31]^=r,t[40]^=e,t[41]^=r,e=i^(f<<1|c>>>31),r=o^(c<<1|f>>>31),t[2]^=e,t[3]^=r,t[12]^=e,t[13]^=r,t[22]^=e,t[23]^=r,t[32]^=e,t[33]^=r,t[42]^=e,t[43]^=r,e=s^(h<<1|l>>>31),r=u^(l<<1|h>>>31),t[4]^=e,t[5]^=r,t[14]^=e,t[15]^=r,t[24]^=e,t[25]^=r,t[34]^=e,t[35]^=r,t[44]^=e,t[45]^=r,e=f^(d<<1|p>>>31),r=c^(p<<1|d>>>31),t[6]^=e,t[7]^=r,t[16]^=e,t[17]^=r,t[26]^=e,t[27]^=r,t[36]^=e,t[37]^=r,t[46]^=e,t[47]^=r,e=h^(i<<1|o>>>31),r=l^(o<<1|i>>>31),t[8]^=e,t[9]^=r,t[18]^=e,t[19]^=r,t[28]^=e,t[29]^=r,t[38]^=e,t[39]^=r,t[48]^=e,t[49]^=r,m=t[0],b=t[1],W=t[11]<<4|t[10]>>>28,Z=t[10]<<4|t[11]>>>28,P=t[20]<<3|t[21]>>>29,B=t[21]<<3|t[20]>>>29,st=t[31]<<9|t[30]>>>23,ut=t[30]<<9|t[31]>>>23,z=t[40]<<18|t[41]>>>14,K=t[41]<<18|t[40]>>>14,U=t[2]<<1|t[3]>>>31,j=t[3]<<1|t[2]>>>31,v=t[13]<<12|t[12]>>>20,y=t[12]<<12|t[13]>>>20,J=t[22]<<10|t[23]>>>22,X=t[23]<<10|t[22]>>>22,T=t[33]<<13|t[32]>>>19,R=t[32]<<13|t[33]>>>19,ft=t[42]<<2|t[43]>>>30,ct=t[43]<<2|t[42]>>>30,et=t[5]<<30|t[4]>>>2,rt=t[4]<<30|t[5]>>>2,N=t[14]<<6|t[15]>>>26,L=t[15]<<6|t[14]>>>26,g=t[25]<<11|t[24]>>>21,w=t[24]<<11|t[25]>>>21,Y=t[34]<<15|t[35]>>>17,$=t[35]<<15|t[34]>>>17,I=t[45]<<29|t[44]>>>3,C=t[44]<<29|t[45]>>>3,A=t[6]<<28|t[7]>>>4,x=t[7]<<28|t[6]>>>4,nt=t[17]<<23|t[16]>>>9,it=t[16]<<23|t[17]>>>9,F=t[26]<<25|t[27]>>>7,D=t[27]<<25|t[26]>>>7,_=t[36]<<21|t[37]>>>11,k=t[37]<<21|t[36]>>>11,Q=t[47]<<24|t[46]>>>8,tt=t[46]<<24|t[47]>>>8,G=t[8]<<27|t[9]>>>5,V=t[9]<<27|t[8]>>>5,E=t[18]<<20|t[19]>>>12,O=t[19]<<20|t[18]>>>12,ot=t[29]<<7|t[28]>>>25,at=t[28]<<7|t[29]>>>25,q=t[38]<<8|t[39]>>>24,H=t[39]<<8|t[38]>>>24,M=t[48]<<14|t[49]>>>18,S=t[49]<<14|t[48]>>>18,t[0]=m^~v&g,t[1]=b^~y&w,t[10]=A^~E&P,t[11]=x^~O&B,t[20]=U^~N&F,t[21]=j^~L&D,t[30]=G^~W&J,t[31]=V^~Z&X,t[40]=et^~nt&ot,t[41]=rt^~it&at,t[2]=v^~g&_,t[3]=y^~w&k,t[12]=E^~P&T,t[13]=O^~B&R,t[22]=N^~F&q,t[23]=L^~D&H,t[32]=W^~J&Y,t[33]=Z^~X&$,t[42]=nt^~ot&st,t[43]=it^~at&ut,t[4]=g^~_&M,t[5]=w^~k&S,t[14]=P^~T&I,t[15]=B^~R&C,t[24]=F^~q&z,t[25]=D^~H&K,t[34]=J^~Y&Q,t[35]=X^~$&tt,t[44]=ot^~st&ft,t[45]=at^~ut&ct,t[6]=_^~M&m,t[7]=k^~S&b,t[16]=T^~I&A,t[17]=R^~C&x,t[26]=q^~z&U,t[27]=H^~K&j,t[36]=Y^~Q&G,t[37]=$^~tt&V,t[46]=st^~ft&et,t[47]=ut^~ct&rt,t[8]=M^~m&v,t[9]=S^~b&y,t[18]=I^~A&E,t[19]=C^~x&O,t[28]=z^~U&N,t[29]=K^~j&L,t[38]=Q^~G&W,t[39]=tt^~V&Z,t[48]=ft^~et&nt,t[49]=ct^~rt&it,t[0]^=a[n],t[1]^=a[n+1]},u=function(t){return function(e){var r;if("0x"===e.slice(0,2)){r=[];for(var a=2,u=e.length;a>2]|=e[d]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(u[b>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=f){for(t.start=b-f,t.block=u[c],b=0;b>2]|=i[3&b],t.lastByteIndex===f)for(u[0]=u[c],b=1;b>4&15]+n[15&p]+n[p>>12&15]+n[p>>8&15]+n[p>>20&15]+n[p>>16&15]+n[p>>28&15]+n[p>>24&15];v%c==0&&(s(l),b=0)}return"0x"+m}(function(t){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(t<<1)>>5,outputBlocks:t>>5,s:(e=[0,0,0,0,0,0,0,0,0,0],[].concat(e,e,e,e,e))};var e}(t),r)}};t.exports={keccak256:u(256),keccak512:u(512),keccak256s:u(256),keccak512s:u(512)}},function(t,e){(function(e){t.exports=e}).call(this,{})},function(t,e,r){"use strict";var n=Object.prototype.hasOwnProperty,i="~";function o(){}function a(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function s(t,e,r,n,o){if("function"!=typeof r)throw new TypeError("The listener must be a function");var s=new a(r,n||t,o),u=i?i+e:e;return t._events[u]?t._events[u].fn?t._events[u]=[t._events[u],s]:t._events[u].push(s):(t._events[u]=s,t._eventsCount++),t}function u(t,e){0==--t._eventsCount?t._events=new o:delete t._events[e]}function f(){this._events=new o,this._eventsCount=0}Object.create&&(o.prototype=Object.create(null),(new o).__proto__||(i=!1)),f.prototype.eventNames=function(){var t,e,r=[];if(0===this._eventsCount)return r;for(e in t=this._events)n.call(t,e)&&r.push(i?e.slice(1):e);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(t)):r},f.prototype.listeners=function(t){var e=i?i+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var n=0,o=r.length,a=new Array(o);n-1?n:o.nextTick;y.WritableState=v;var f=Object.create(r(47));f.inherits=r(3);var c={deprecate:r(76)},h=r(118),l=r(4).Buffer,d=i.Uint8Array||function(){};var p,m=r(119);function b(){}function v(t,e){s=s||r(28),t=t||{};var n=e instanceof s;this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var i=t.highWaterMark,f=t.writableHighWaterMark,c=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(f||0===f)?f:c,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var h=!1===t.decodeStrings;this.decodeStrings=!h,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,i=r.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,i){--e.pendingcb,r?(o.nextTick(i,n),o.nextTick(S,t,e),t._writableState.errorEmitted=!0,t.emit("error",n)):(i(n),t._writableState.errorEmitted=!0,t.emit("error",n),S(t,e))}(t,r,n,e,i);else{var a=k(r);a||r.corked||r.bufferProcessing||!r.bufferedRequest||_(t,r),n?u(w,t,r,a,i):w(t,r,a,i)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function y(t){if(s=s||r(28),!(p.call(y,this)||this instanceof s))return new y(t);this._writableState=new v(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),h.call(this)}function g(t,e,r,n,i,o,a){e.writelen=n,e.writecb=a,e.writing=!0,e.sync=!0,r?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function w(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,n(),S(t,e)}function _(t,e){e.bufferProcessing=!0;var r=e.bufferedRequest;if(t._writev&&r&&r.next){var n=e.bufferedRequestCount,i=new Array(n),o=e.corkedRequestsFree;o.entry=r;for(var s=0,u=!0;r;)i[s]=r,r.isBuf||(u=!1),r=r.next,s+=1;i.allBuffers=u,g(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;r;){var f=r.chunk,c=r.encoding,h=r.callback;if(g(t,e,!1,e.objectMode?1:f.length,f,c,h),r=r.next,e.bufferedRequestCount--,e.writing)break}null===r&&(e.lastBufferedRequest=null)}e.bufferedRequest=r,e.bufferProcessing=!1}function k(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function M(t,e){t._final((function(r){e.pendingcb--,r&&t.emit("error",r),e.prefinished=!0,t.emit("prefinish"),S(t,e)}))}function S(t,e){var r=k(e);return r&&(!function(t,e){e.prefinished||e.finalCalled||("function"==typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(M,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),r}f.inherits(y,h),v.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(v.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(y,Symbol.hasInstance,{value:function(t){return!!p.call(this,t)||this===y&&(t&&t._writableState instanceof v)}})):p=function(t){return t instanceof this},y.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},y.prototype.write=function(t,e,r){var n,i=this._writableState,a=!1,s=!i.objectMode&&(n=t,l.isBuffer(n)||n instanceof d);return s&&!l.isBuffer(t)&&(t=function(t){return l.from(t)}(t)),"function"==typeof e&&(r=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),"function"!=typeof r&&(r=b),i.ended?function(t,e){var r=new Error("write after end");t.emit("error",r),o.nextTick(e,r)}(this,r):(s||function(t,e,r,n){var i=!0,a=!1;return null===r?a=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||e.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(t.emit("error",a),o.nextTick(n,a),i=!1),i}(this,i,t,r))&&(i.pendingcb++,a=function(t,e,r,n,i,o){if(!r){var a=function(t,e,r){t.objectMode||!1===t.decodeStrings||"string"!=typeof e||(e=l.from(e,r));return e}(e,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=e.objectMode?1:n.length;e.length+=s;var u=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(y.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),y.prototype._write=function(t,e,r){r(new Error("_write() is not implemented"))},y.prototype._writev=null,y.prototype.end=function(t,e,r){var n=this._writableState;"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(t,e,r){e.ending=!0,S(t,e),r&&(e.finished?o.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,n,r)},Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),y.prototype.destroy=m.destroy,y.prototype._undestroy=m.undestroy,y.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,r(6),r(120).setImmediate,r(7))},function(t,e,r){"use strict";(function(e){function r(t){try{if(!e.localStorage)return!1}catch(t){return!1}var r=e.localStorage[t];return null!=r&&"true"===String(r).toLowerCase()}t.exports=function(t,e){if(r("noDeprecation"))return t;var n=!1;return function(){if(!n){if(r("throwDeprecation"))throw new Error(e);r("traceDeprecation")?console.trace(e):console.warn(e),n=!0}return t.apply(this,arguments)}}}).call(this,r(7))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(){this.listeners={}}return t.prototype.addEventListener=function(t,e){t=t.toLowerCase(),this.listeners[t]=this.listeners[t]||[],this.listeners[t].push(e.handleEvent||e)},t.prototype.removeEventListener=function(t,e){if(t=t.toLowerCase(),this.listeners[t]){var r=this.listeners[t].indexOf(e.handleEvent||e);r<0||this.listeners[t].splice(r,1)}},t.prototype.dispatchEvent=function(t){var e=t.type.toLowerCase();if(t.target=this,this.listeners[e])for(var r=0,n=this.listeners[e];r=0||"tuple"===t)&&v[e])return!0;return(b[e]||"payable"===e)&&p.throwArgumentError("invalid modifier","name",e),!1}function g(t,e){for(var r in e)(0,c.defineReadOnly)(t,r,e[r])}var w=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"});e.FormatTypes=w;var _=new RegExp(/^(.*)\[([0-9]*)\]$/),k=function(){function t(e,r){(0,s.default)(this,t),e!==m&&p.throwError("use fromString",h.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new ParamType()"}),g(this,r);var n=this.type.match(_);g(this,n?{arrayLength:parseInt(n[2]||"-1"),arrayChildren:t.fromObject({type:n[1],components:this.components}),baseType:"array"}:{arrayLength:null,arrayChildren:null,baseType:null!=this.components?"tuple":this.type}),this._isParamType=!0,Object.freeze(this)}return(0,u.default)(t,[{key:"format",value:function(t){if(t||(t=w.sighash),w[t]||p.throwArgumentError("invalid format type","format",t),t===w.json){var e={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(e.indexed=this.indexed),this.components&&(e.components=this.components.map((function(e){return JSON.parse(e.format(t))}))),JSON.stringify(e)}var r="";return"array"===this.baseType?(r+=this.arrayChildren.format(t),r+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(t!==w.sighash&&(r+=this.type),r+="("+this.components.map((function(e){return e.format(t)})).join(t===w.full?", ":",")+")"):r+=this.type,t!==w.sighash&&(!0===this.indexed&&(r+=" indexed"),t===w.full&&this.name&&(r+=" "+this.name)),r}}],[{key:"from",value:function(e,r){return"string"==typeof e?t.fromString(e,r):t.fromObject(e)}},{key:"fromObject",value:function(e){return t.isParamType(e)?e:new t(m,{name:e.name||null,type:T(e.type),indexed:null==e.indexed?null:!!e.indexed,components:e.components?e.components.map(t.fromObject):null})}},{key:"fromString",value:function(e,r){return function(e){return t.fromObject({name:e.name,type:e.type,indexed:e.indexed,components:e.components})}(function(t,e){var r=t;function n(e){p.throwArgumentError("unexpected character at position ".concat(e),"param",t)}function i(t){var r={type:"",name:"",parent:t,state:{allowType:!0}};return e&&(r.indexed=!1),r}t=t.replace(/\s/g," ");for(var o={type:"",name:"",state:{allowType:!0}},a=o,s=0;s2&&p.throwArgumentError("invalid human-readable ABI signature","value",t),r[1].match(/^[0-9]+$/)||p.throwArgumentError("invalid human-readable ABI signature gas","value",t),e.gas=f.BigNumber.from(r[1]),r[0]):t}function E(t,e){e.constant=!1,e.payable=!1,e.stateMutability="nonpayable",t.split(" ").forEach((function(t){switch(t.trim()){case"constant":e.constant=!0;break;case"payable":e.payable=!0,e.stateMutability="payable";break;case"nonpayable":e.payable=!1,e.stateMutability="nonpayable";break;case"pure":e.constant=!0,e.stateMutability="pure";break;case"view":e.constant=!0,e.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+t)}}))}function O(t){var e={constant:!1,payable:!0,stateMutability:"payable"};return null!=t.stateMutability?(e.stateMutability=t.stateMutability,e.constant="view"===e.stateMutability||"pure"===e.stateMutability,null!=t.constant&&!!t.constant!==e.constant&&p.throwArgumentError("cannot have constant function with mutability "+e.stateMutability,"value",t),e.payable="payable"===e.stateMutability,null!=t.payable&&!!t.payable!==e.payable&&p.throwArgumentError("cannot have payable function with mutability "+e.stateMutability,"value",t)):null!=t.payable?(e.payable=!!t.payable,null!=t.constant||e.payable||"constructor"===t.type||p.throwArgumentError("unable to determine stateMutability","value",t),e.constant=!!t.constant,e.constant?e.stateMutability="view":e.stateMutability=e.payable?"payable":"nonpayable",e.payable&&e.constant&&p.throwArgumentError("cannot have constant payable function","value",t)):null!=t.constant?(e.constant=!!t.constant,e.payable=!e.constant,e.stateMutability=e.constant?"view":"payable"):"constructor"!==t.type&&p.throwArgumentError("unable to determine stateMutability","value",t),e}e.EventFragment=A;var P=function(t){(0,i.default)(r,t);var e=d(r);function r(){return(0,s.default)(this,r),e.apply(this,arguments)}return(0,u.default)(r,[{key:"format",value:function(t){if(t||(t=w.sighash),w[t]||p.throwArgumentError("invalid format type","format",t),t===w.json)return JSON.stringify({type:"constructor",stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((function(e){return JSON.parse(e.format(t))}))});t===w.sighash&&p.throwError("cannot format a constructor for sighash",h.Logger.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});var e="constructor("+this.inputs.map((function(e){return e.format(t)})).join(t===w.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(e+=this.stateMutability+" "),e.trim()}}],[{key:"from",value:function(t){return"string"==typeof t?r.fromString(t):r.fromObject(t)}},{key:"fromObject",value:function(t){if(r.isConstructorFragment(t))return t;"constructor"!==t.type&&p.throwArgumentError("invalid constructor object","value",t);var e=O(t);e.constant&&p.throwArgumentError("constructor cannot be constant","value",t);var n={name:null,type:t.type,inputs:t.inputs?t.inputs.map(k.fromObject):[],payable:e.payable,stateMutability:e.stateMutability,gas:t.gas?f.BigNumber.from(t.gas):null};return new r(m,n)}},{key:"fromString",value:function(t){var e={type:"constructor"},n=(t=x(t,e)).match(C);return n&&"constructor"===n[1].trim()||p.throwArgumentError("invalid constructor string","value",t),e.inputs=M(n[2].trim(),!1),E(n[3].trim(),e),r.fromObject(e)}},{key:"isConstructorFragment",value:function(t){return t&&t._isFragment&&"constructor"===t.type}}]),r}(S);e.ConstructorFragment=P;var B=function(t){(0,i.default)(r,t);var e=d(r);function r(){return(0,s.default)(this,r),e.apply(this,arguments)}return(0,u.default)(r,[{key:"format",value:function(t){if(t||(t=w.sighash),w[t]||p.throwArgumentError("invalid format type","format",t),t===w.json)return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payble:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((function(e){return JSON.parse(e.format(t))})),ouputs:this.outputs.map((function(e){return JSON.parse(e.format(t))}))});var e="";return t!==w.sighash&&(e+="function "),e+=this.name+"("+this.inputs.map((function(e){return e.format(t)})).join(t===w.full?", ":",")+") ",t!==w.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(e+=this.stateMutability+" "):this.constant&&(e+="view "),this.outputs&&this.outputs.length&&(e+="returns ("+this.outputs.map((function(e){return e.format(t)})).join(", ")+") "),null!=this.gas&&(e+="@"+this.gas.toString()+" ")),e.trim()}}],[{key:"from",value:function(t){return"string"==typeof t?r.fromString(t):r.fromObject(t)}},{key:"fromObject",value:function(t){if(r.isFunctionFragment(t))return t;"function"!==t.type&&p.throwArgumentError("invalid function object","value",t);var e=O(t),n={type:t.type,name:I(t.name),constant:e.constant,inputs:t.inputs?t.inputs.map(k.fromObject):[],outputs:t.outputs?t.outputs.map(k.fromObject):[],payable:e.payable,stateMutability:e.stateMutability,gas:t.gas?f.BigNumber.from(t.gas):null};return new r(m,n)}},{key:"fromString",value:function(t){var e={type:"function"},n=(t=x(t,e)).split(" returns ");n.length>2&&p.throwArgumentError("invalid function string","value",t);var i=n[0].match(C);if(i||p.throwArgumentError("invalid function signature","value",t),e.name=i[1].trim(),e.name&&I(e.name),e.inputs=M(i[2],!1),E(i[3].trim(),e),n.length>1){var o=n[1].match(C);""==o[1].trim()&&""==o[3].trim()||p.throwArgumentError("unexpected tokens","value",t),e.outputs=M(o[2],!1)}else e.outputs=[];return r.fromObject(e)}},{key:"isFunctionFragment",value:function(t){return t&&t._isFragment&&"function"===t.type}}]),r}(P);function T(t){return t.match(/^uint($|[^1-9])/)?t="uint256"+t.substring(4):t.match(/^int($|[^1-9])/)&&(t="int256"+t.substring(3)),t}e.FunctionFragment=B;var R=new RegExp("^[A-Za-z_][A-Za-z0-9_]*$");function I(t){return t&&t.match(R)||p.throwArgumentError('invalid identifier "'.concat(t,'"'),"value",t),t}var C=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.toUtf8Bytes=l,e._toEscapedUtf8String=function(t,e){return'"'+h(t,e).map((function(t){if(t<256){switch(t){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(t>=32&&t<127)return String.fromCharCode(t)}return t<=65535?d(t):d(55296+((t-=65536)>>10&1023))+d(56320+(1023&t))})).join("")+'"'},e._toUtf8String=p,e.toUtf8String=function(t,e){return p(h(t,e))},e.toUtf8CodePoints=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.current;return h(l(t,e))},e.Utf8ErrorFuncs=e.Utf8ErrorReason=e.UnicodeNormalizationForm=void 0;var n,i,o=r(11),a=r(12),s=r(293),u=new a.Logger(s.version);function f(t,e,r,n,o){if(t===i.BAD_PREFIX||t===i.UNEXPECTED_CONTINUE){for(var a=0,s=e+1;s>6==2;s++)a++;return a}return t===i.OVERRUN?r.length-e-1:0}e.UnicodeNormalizationForm=n,function(t){t.current="",t.NFC="NFC",t.NFD="NFD",t.NFKC="NFKC",t.NFKD="NFKD"}(n||(e.UnicodeNormalizationForm=n={})),e.Utf8ErrorReason=i,function(t){t.UNEXPECTED_CONTINUE="unexpected continuation byte",t.BAD_PREFIX="bad codepoint prefix",t.OVERRUN="string overrun",t.MISSING_CONTINUE="missing continuation byte",t.OUT_OF_RANGE="out of UTF-8 range",t.UTF16_SURROGATE="UTF-16 surrogate",t.OVERLONG="overlong representation"}(i||(e.Utf8ErrorReason=i={}));var c=Object.freeze({error:function(t,e,r,n,i){return u.throwArgumentError("invalid codepoint at offset ".concat(e,"; ").concat(t),"bytes",r)},ignore:f,replace:function(t,e,r,n,o){return t===i.OVERLONG?(n.push(o),0):(n.push(65533),f(t,e,r))}});function h(t,e){null==e&&(e=c.error),t=(0,o.arrayify)(t);for(var r=[],n=0;n>7!=0){var s=null,u=null;if(192==(224&a))s=1,u=127;else if(224==(240&a))s=2,u=2047;else{if(240!=(248&a)){n+=e(128==(192&a)?i.UNEXPECTED_CONTINUE:i.BAD_PREFIX,n-1,t,r);continue}s=3,u=65535}if(n-1+s>=t.length)n+=e(i.OVERRUN,n-1,t,r);else{for(var f=a&(1<<8-s-1)-1,h=0;h1114111?n+=e(i.OUT_OF_RANGE,n-1-s,t,r,f):f>=55296&&f<=57343?n+=e(i.UTF16_SURROGATE,n-1-s,t,r,f):f<=u?n+=e(i.OVERLONG,n-1-s,t,r,f):r.push(f))}}else r.push(a)}return r}function l(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.current;e!=n.current&&(u.checkNormalize(),t=t.normalize(e));for(var r=[],i=0;i>6|192),r.push(63&a|128);else if(55296==(64512&a)){i++;var s=t.charCodeAt(i);if(i>=t.length||56320!=(64512&s))throw new Error("invalid utf-8 string");var f=65536+((1023&a)<<10)+(1023&s);r.push(f>>18|240),r.push(f>>12&63|128),r.push(f>>6&63|128),r.push(63&f|128)}else r.push(a>>12|224),r.push(a>>6&63|128),r.push(63&a|128)}return(0,o.arrayify)(r)}function d(t){var e="0000"+t.toString(16);return"\\u"+e.substring(e.length-4)}function p(t){return t.map((function(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10&1023),56320+(1023&t)))})).join("")}e.Utf8ErrorFuncs=c},function(t,e,r){"use strict";var n=r(1).Buffer,i=r(318),o=r(51),a=r(324);function s(t){e.decode(t)}e.names=a.names,e.codes=a.codes,e.defaultLengths=a.defaultLengths,e.toHexString=function(t){if(!n.isBuffer(t))throw new Error("must be passed a buffer");return t.toString("hex")},e.fromHexString=function(t){return n.from(t,"hex")},e.toB58String=function(t){if(!n.isBuffer(t))throw new Error("must be passed a buffer");return i.encode("base58btc",t).toString().slice(1)},e.fromB58String=function(t){var e=t;return n.isBuffer(t)&&(e=t.toString()),i.decode("z"+e)},e.decode=function(t){if(!n.isBuffer(t))throw new Error("multihash must be a Buffer");if(t.length<2)throw new Error("multihash too short. must be > 2 bytes.");var r=o.decode(t);if(!e.isValidCode(r))throw new Error("multihash unknown function code: 0x".concat(r.toString(16)));t=t.slice(o.decode.bytes);var i=o.decode(t);if(i<0)throw new Error("multihash invalid length: ".concat(i));if((t=t.slice(o.decode.bytes)).length!==i)throw new Error("multihash length inconsistent: 0x".concat(t.toString("hex")));return{code:r,name:a.codes[r],length:i,digest:t}},e.encode=function(t,r,i){if(!t||void 0===r)throw new Error("multihash encode requires at least two args: digest, code");var a=e.coerceCode(r);if(!n.isBuffer(t))throw new Error("digest should be a Buffer");if(null==i&&(i=t.length),i&&t.length!==i)throw new Error("digest length should be equal to specified length.");return n.concat([n.from(o.encode(a)),n.from(o.encode(i)),t])},e.coerceCode=function(t){var r=t;if("string"==typeof t){if(void 0===a.names[t])throw new Error("Unrecognized hash function named: ".concat(t));r=a.names[t]}if("number"!=typeof r)throw new Error("Hash function code should be a number. Got: ".concat(r));if(void 0===a.codes[r]&&!e.isAppCode(r))throw new Error("Unrecognized function code: ".concat(r));return r},e.isAppCode=function(t){return t>0&&t<16},e.isValidCode=function(t){return!!e.isAppCode(t)||!!a.codes[t]},e.validate=s,e.prefix=function(t){return s(t),t.slice(0,2)}},function(t,e,r){"use strict";var n=r(3),i=r(151),o=r(4).Buffer,a=new Array(16);function s(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function u(t,e){return t<>>32-e}function f(t,e,r,n,i,o,a){return u(t+(e&r|~e&n)+i+o|0,a)+e|0}function c(t,e,r,n,i,o,a){return u(t+(e&n|r&~n)+i+o|0,a)+e|0}function h(t,e,r,n,i,o,a){return u(t+(e^r^n)+i+o|0,a)+e|0}function l(t,e,r,n,i,o,a){return u(t+(r^(e|~n))+i+o|0,a)+e|0}n(s,i),s.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);var r=this._a,n=this._b,i=this._c,o=this._d;r=f(r,n,i,o,t[0],3614090360,7),o=f(o,r,n,i,t[1],3905402710,12),i=f(i,o,r,n,t[2],606105819,17),n=f(n,i,o,r,t[3],3250441966,22),r=f(r,n,i,o,t[4],4118548399,7),o=f(o,r,n,i,t[5],1200080426,12),i=f(i,o,r,n,t[6],2821735955,17),n=f(n,i,o,r,t[7],4249261313,22),r=f(r,n,i,o,t[8],1770035416,7),o=f(o,r,n,i,t[9],2336552879,12),i=f(i,o,r,n,t[10],4294925233,17),n=f(n,i,o,r,t[11],2304563134,22),r=f(r,n,i,o,t[12],1804603682,7),o=f(o,r,n,i,t[13],4254626195,12),i=f(i,o,r,n,t[14],2792965006,17),r=c(r,n=f(n,i,o,r,t[15],1236535329,22),i,o,t[1],4129170786,5),o=c(o,r,n,i,t[6],3225465664,9),i=c(i,o,r,n,t[11],643717713,14),n=c(n,i,o,r,t[0],3921069994,20),r=c(r,n,i,o,t[5],3593408605,5),o=c(o,r,n,i,t[10],38016083,9),i=c(i,o,r,n,t[15],3634488961,14),n=c(n,i,o,r,t[4],3889429448,20),r=c(r,n,i,o,t[9],568446438,5),o=c(o,r,n,i,t[14],3275163606,9),i=c(i,o,r,n,t[3],4107603335,14),n=c(n,i,o,r,t[8],1163531501,20),r=c(r,n,i,o,t[13],2850285829,5),o=c(o,r,n,i,t[2],4243563512,9),i=c(i,o,r,n,t[7],1735328473,14),r=h(r,n=c(n,i,o,r,t[12],2368359562,20),i,o,t[5],4294588738,4),o=h(o,r,n,i,t[8],2272392833,11),i=h(i,o,r,n,t[11],1839030562,16),n=h(n,i,o,r,t[14],4259657740,23),r=h(r,n,i,o,t[1],2763975236,4),o=h(o,r,n,i,t[4],1272893353,11),i=h(i,o,r,n,t[7],4139469664,16),n=h(n,i,o,r,t[10],3200236656,23),r=h(r,n,i,o,t[13],681279174,4),o=h(o,r,n,i,t[0],3936430074,11),i=h(i,o,r,n,t[3],3572445317,16),n=h(n,i,o,r,t[6],76029189,23),r=h(r,n,i,o,t[9],3654602809,4),o=h(o,r,n,i,t[12],3873151461,11),i=h(i,o,r,n,t[15],530742520,16),r=l(r,n=h(n,i,o,r,t[2],3299628645,23),i,o,t[0],4096336452,6),o=l(o,r,n,i,t[7],1126891415,10),i=l(i,o,r,n,t[14],2878612391,15),n=l(n,i,o,r,t[5],4237533241,21),r=l(r,n,i,o,t[12],1700485571,6),o=l(o,r,n,i,t[3],2399980690,10),i=l(i,o,r,n,t[10],4293915773,15),n=l(n,i,o,r,t[1],2240044497,21),r=l(r,n,i,o,t[8],1873313359,6),o=l(o,r,n,i,t[15],4264355552,10),i=l(i,o,r,n,t[6],2734768916,15),n=l(n,i,o,r,t[13],1309151649,21),r=l(r,n,i,o,t[4],4149444226,6),o=l(o,r,n,i,t[11],3174756917,10),i=l(i,o,r,n,t[2],718787259,15),n=l(n,i,o,r,t[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=o.allocUnsafe(16);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t},t.exports=s},function(t,e,r){"use strict";var n=r(37).codes.ERR_STREAM_PREMATURE_CLOSE;function i(){}t.exports=function t(e,r,o){if("function"==typeof r)return t(e,null,r);r||(r={}),o=function(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,n=new Array(r),i=0;i>>32-e}function m(t,e,r,n,i,o,a,s){return p(t+(e^r^n)+o+a|0,s)+i|0}function b(t,e,r,n,i,o,a,s){return p(t+(e&r|~e&n)+o+a|0,s)+i|0}function v(t,e,r,n,i,o,a,s){return p(t+((e|~r)^n)+o+a|0,s)+i|0}function y(t,e,r,n,i,o,a,s){return p(t+(e&n|r&~n)+o+a|0,s)+i|0}function g(t,e,r,n,i,o,a,s){return p(t+(e^(r|~n))+o+a|0,s)+i|0}i(d,o),d.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);for(var r=0|this._a,n=0|this._b,i=0|this._c,o=0|this._d,d=0|this._e,w=0|this._a,_=0|this._b,k=0|this._c,M=0|this._d,S=0|this._e,A=0;A<80;A+=1){var x,E;A<16?(x=m(r,n,i,o,d,t[s[A]],h[0],f[A]),E=g(w,_,k,M,S,t[u[A]],l[0],c[A])):A<32?(x=b(r,n,i,o,d,t[s[A]],h[1],f[A]),E=y(w,_,k,M,S,t[u[A]],l[1],c[A])):A<48?(x=v(r,n,i,o,d,t[s[A]],h[2],f[A]),E=v(w,_,k,M,S,t[u[A]],l[2],c[A])):A<64?(x=y(r,n,i,o,d,t[s[A]],h[3],f[A]),E=b(w,_,k,M,S,t[u[A]],l[3],c[A])):(x=g(r,n,i,o,d,t[s[A]],h[4],f[A]),E=m(w,_,k,M,S,t[u[A]],l[4],c[A])),r=d,d=o,o=p(i,10),i=n,n=x,w=S,S=M,M=p(k,10),k=_,_=E}var O=this._b+i+M|0;this._b=this._c+o+S|0,this._c=this._d+d+w|0,this._d=this._e+r+_|0,this._e=this._a+n+k|0,this._a=O},d.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=n.alloc?n.alloc(20):new n(20);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t.writeInt32LE(this._e,16),t},t.exports=d},function(t,e,r){"use strict";var n=t.exports=function(t){t=t.toLowerCase();var e=n[t];if(!e)throw new Error(t+" is not supported (we accept pull requests)");return new e};n.sha=r(357),n.sha1=r(358),n.sha224=r(359),n.sha256=r(158),n.sha384=r(360),n.sha512=r(159)},function(t,e,r){"use strict";t.exports=i;var n=r(23).EventEmitter;function i(){n.call(this)}r(3)(i,n),i.Readable=r(46),i.Writable=r(361),i.Duplex=r(362),i.Transform=r(363),i.PassThrough=r(364),i.Stream=i,i.prototype.pipe=function(t,e){var r=this;function i(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function o(){r.readable&&r.resume&&r.resume()}r.on("data",i),t.on("drain",o),t._isStdio||e&&!1===e.end||(r.on("end",s),r.on("close",u));var a=!1;function s(){a||(a=!0,t.end())}function u(){a||(a=!0,"function"==typeof t.destroy&&t.destroy())}function f(t){if(c(),0===n.listenerCount(this,"error"))throw t}function c(){r.removeListener("data",i),t.removeListener("drain",o),r.removeListener("end",s),r.removeListener("close",u),r.removeListener("error",f),t.removeListener("error",f),r.removeListener("end",c),r.removeListener("close",c),t.removeListener("close",c)}return r.on("error",f),t.on("error",f),r.on("end",c),r.on("close",c),t.on("close",c),t.emit("pipe",r),t}},function(t,e,r){"use strict";var n=r(18);function i(t){this.options=t,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}t.exports=i,i.prototype._init=function(){},i.prototype.update=function(t){return 0===t.length?[]:"decrypt"===this.type?this._updateDecrypt(t):this._updateEncrypt(t)},i.prototype._buffer=function(t,e){for(var r=Math.min(this.buffer.length-this.bufferOff,t.length-e),n=0;n0;n--)e+=this._buffer(t,e),r+=this._flushBuffer(i,r);return e+=this._buffer(t,e),i},i.prototype.final=function(t){var e,r;return t&&(e=this.update(t)),r="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),e?e.concat(r):r},i.prototype._pad=function(t,e){if(0===e)return!1;for(;e */var n=r(1),i=n.Buffer;function o(t,e){for(var r in t)e[r]=t[r]}function a(t,e,r){return i(t,e,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=n:(o(n,e),e.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,r)},a.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var n=i(t);return void 0!==e?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n.SlowBuffer(t)}},function(t,e,r){"use strict";var n=r(40).codes.ERR_STREAM_PREMATURE_CLOSE;function i(){}t.exports=function t(e,r,o){if("function"==typeof r)return t(e,null,r);r||(r={}),o=function(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,n=new Array(r),i=0;i=0||!e.umod(t.prime1)||!e.umod(t.prime2));return e}function a(t,r){var i=function(t){var e=o(t);return{blinder:e.toRed(n.mont(t.modulus)).redPow(new n(t.publicExponent)).fromRed(),unblinder:e.invm(t.modulus)}}(r),a=r.modulus.byteLength(),s=new n(t).mul(i.blinder).umod(r.modulus),u=s.toRed(n.mont(r.prime1)),f=s.toRed(n.mont(r.prime2)),c=r.coefficient,h=r.prime1,l=r.prime2,d=u.redPow(r.exponent1).fromRed(),p=f.redPow(r.exponent2).fromRed(),m=d.isub(p).imul(c).umod(h).imul(l);return p.iadd(m).imul(i.unblinder).umod(r.modulus).toArrayLike(e,"be",a)}a.getr=o,t.exports=a}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n,i=e,o=r(60),a=r(184),s=r(19).assert;function u(t){"short"===t.type?this.curve=new a.short(t):"edwards"===t.type?this.curve=new a.edwards(t):this.curve=new a.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function f(t,e){Object.defineProperty(i,t,{configurable:!0,enumerable:!0,get:function(){var r=new u(e);return Object.defineProperty(i,t,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=u,f("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),f("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),f("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),f("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),f("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),f("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),f("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(403)}catch(t){n=void 0}f("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},function(t,e,r){"use strict";(function(e){var n,i=r(0)(r(2)),o=r(1),a=o.Buffer,s={};for(n in o)o.hasOwnProperty(n)&&"SlowBuffer"!==n&&"Buffer"!==n&&(s[n]=o[n]);var u=s.Buffer={};for(n in a)a.hasOwnProperty(n)&&"allocUnsafe"!==n&&"allocUnsafeSlow"!==n&&(u[n]=a[n]);if(s.Buffer.prototype=a.prototype,u.from&&u.from!==Uint8Array.from||(u.from=function(t,e,r){if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type '+(0,i.default)(t));if(t&&void 0===t.length)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+(0,i.default)(t));return a(t,e,r)}),u.alloc||(u.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError('The "size" argument must be of type number. Received type '+(0,i.default)(t));if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var n=a(t);return e&&0!==e.length?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n}),!s.kStringMaxLength)try{s.kStringMaxLength=e.binding("buffer").kStringMaxLength}catch(t){}s.constants||(s.constants={MAX_LENGTH:s.kMaxLength},s.kStringMaxLength&&(s.constants.MAX_STRING_LENGTH=s.kStringMaxLength)),t.exports=s}).call(this,r(6))},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(98).Reporter,o=r(55).EncoderBuffer,a=r(55).DecoderBuffer,s=r(18),u=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],f=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(u);function c(t,e,r){var n={};this._baseState=n,n.name=r,n.enc=t,n.parent=e||null,n.children=null,n.tag=null,n.args=null,n.reverseArgs=null,n.choice=null,n.optional=!1,n.any=!1,n.obj=!1,n.use=null,n.useDecoder=null,n.key=null,n.default=null,n.explicit=null,n.implicit=null,n.contains=null,n.parent||(n.children=[],this._wrap())}t.exports=c;var h=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];c.prototype.clone=function(){var t=this._baseState,e={};h.forEach((function(r){e[r]=t[r]}));var r=new this.constructor(e.parent);return r._baseState=e,r},c.prototype._wrap=function(){var t=this._baseState;f.forEach((function(e){this[e]=function(){var r=new this.constructor(this);return t.children.push(r),r[e].apply(r,arguments)}}),this)},c.prototype._init=function(t){var e=this._baseState;s(null===e.parent),t.call(this),e.children=e.children.filter((function(t){return t._baseState.parent===this}),this),s.equal(e.children.length,1,"Root node can have only one child")},c.prototype._useArgs=function(t){var e=this._baseState,r=t.filter((function(t){return t instanceof this.constructor}),this);t=t.filter((function(t){return!(t instanceof this.constructor)}),this),0!==r.length&&(s(null===e.children),e.children=r,r.forEach((function(t){t._baseState.parent=this}),this)),0!==t.length&&(s(null===e.args),e.args=t,e.reverseArgs=t.map((function(t){if("object"!==(0,n.default)(t)||t.constructor!==Object)return t;var e={};return Object.keys(t).forEach((function(r){r==(0|r)&&(r|=0);var n=t[r];e[n]=r})),e})))},["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"].forEach((function(t){c.prototype[t]=function(){var e=this._baseState;throw new Error(t+" not implemented for encoding: "+e.enc)}})),u.forEach((function(t){c.prototype[t]=function(){var e=this._baseState,r=Array.prototype.slice.call(arguments);return s(null===e.tag),e.tag=t,this._useArgs(r),this}})),c.prototype.use=function(t){s(t);var e=this._baseState;return s(null===e.use),e.use=t,this},c.prototype.optional=function(){return this._baseState.optional=!0,this},c.prototype.def=function(t){var e=this._baseState;return s(null===e.default),e.default=t,e.optional=!0,this},c.prototype.explicit=function(t){var e=this._baseState;return s(null===e.explicit&&null===e.implicit),e.explicit=t,this},c.prototype.implicit=function(t){var e=this._baseState;return s(null===e.explicit&&null===e.implicit),e.implicit=t,this},c.prototype.obj=function(){var t=this._baseState,e=Array.prototype.slice.call(arguments);return t.obj=!0,0!==e.length&&this._useArgs(e),this},c.prototype.key=function(t){var e=this._baseState;return s(null===e.key),e.key=t,this},c.prototype.any=function(){return this._baseState.any=!0,this},c.prototype.choice=function(t){var e=this._baseState;return s(null===e.choice),e.choice=t,this._useArgs(Object.keys(t).map((function(e){return t[e]}))),this},c.prototype.contains=function(t){var e=this._baseState;return s(null===e.use),e.contains=t,this},c.prototype._decode=function(t,e){var r=this._baseState;if(null===r.parent)return t.wrapResult(r.children[0]._decode(t,e));var n,i=r.default,o=!0,s=null;if(null!==r.key&&(s=t.enterKey(r.key)),r.optional){var u=null;if(null!==r.explicit?u=r.explicit:null!==r.implicit?u=r.implicit:null!==r.tag&&(u=r.tag),null!==u||r.any){if(o=this._peekTag(t,u,r.any),t.isError(o))return o}else{var f=t.save();try{null===r.choice?this._decodeGeneric(r.tag,t,e):this._decodeChoice(t,e),o=!0}catch(t){o=!1}t.restore(f)}}if(r.obj&&o&&(n=t.enterObject()),o){if(null!==r.explicit){var c=this._decodeTag(t,r.explicit);if(t.isError(c))return c;t=c}var h=t.offset;if(null===r.use&&null===r.choice){var l;r.any&&(l=t.save());var d=this._decodeTag(t,null!==r.implicit?r.implicit:r.tag,r.any);if(t.isError(d))return d;r.any?i=t.raw(l):t=d}if(e&&e.track&&null!==r.tag&&e.track(t.path(),h,t.length,"tagged"),e&&e.track&&null!==r.tag&&e.track(t.path(),t.offset,t.length,"content"),r.any||(i=null===r.choice?this._decodeGeneric(r.tag,t,e):this._decodeChoice(t,e)),t.isError(i))return i;if(r.any||null!==r.choice||null===r.children||r.children.forEach((function(r){r._decode(t,e)})),r.contains&&("octstr"===r.tag||"bitstr"===r.tag)){var p=new a(i);i=this._getUse(r.contains,t._reporterState.obj)._decode(p,e)}}return r.obj&&o&&(i=t.leaveObject(n)),null===r.key||null===i&&!0!==o?null!==s&&t.exitKey(s):t.leaveKey(s,r.key,i),i},c.prototype._decodeGeneric=function(t,e,r){var n=this._baseState;return"seq"===t||"set"===t?null:"seqof"===t||"setof"===t?this._decodeList(e,t,n.args[0],r):/str$/.test(t)?this._decodeStr(e,t,r):"objid"===t&&n.args?this._decodeObjid(e,n.args[0],n.args[1],r):"objid"===t?this._decodeObjid(e,null,null,r):"gentime"===t||"utctime"===t?this._decodeTime(e,t,r):"null_"===t?this._decodeNull(e,r):"bool"===t?this._decodeBool(e,r):"objDesc"===t?this._decodeStr(e,t,r):"int"===t||"enum"===t?this._decodeInt(e,n.args&&n.args[0],r):null!==n.use?this._getUse(n.use,e._reporterState.obj)._decode(e,r):e.error("unknown tag: "+t)},c.prototype._getUse=function(t,e){var r=this._baseState;return r.useDecoder=this._use(t,e),s(null===r.useDecoder._baseState.parent),r.useDecoder=r.useDecoder._baseState.children[0],r.implicit!==r.useDecoder._baseState.implicit&&(r.useDecoder=r.useDecoder.clone(),r.useDecoder._baseState.implicit=r.implicit),r.useDecoder},c.prototype._decodeChoice=function(t,e){var r=this._baseState,n=null,i=!1;return Object.keys(r.choice).some((function(o){var a=t.save(),s=r.choice[o];try{var u=s._decode(t,e);if(t.isError(u))return!1;n={type:o,value:u},i=!0}catch(e){return t.restore(a),!1}return!0}),this),i?n:t.error("Choice not matched")},c.prototype._createEncoderBuffer=function(t){return new o(t,this.reporter)},c.prototype._encode=function(t,e,r){var n=this._baseState;if(null===n.default||n.default!==t){var i=this._encodeValue(t,e,r);if(void 0!==i&&!this._skipDefault(i,e,r))return i}},c.prototype._encodeValue=function(t,e,r){var o=this._baseState;if(null===o.parent)return o.children[0]._encode(t,e||new i);var a=null;if(this.reporter=e,o.optional&&void 0===t){if(null===o.default)return;t=o.default}var s=null,u=!1;if(o.any)a=this._createEncoderBuffer(t);else if(o.choice)a=this._encodeChoice(t,e);else if(o.contains)s=this._getUse(o.contains,r)._encode(t,e),u=!0;else if(o.children)s=o.children.map((function(r){if("null_"===r._baseState.tag)return r._encode(null,e,t);if(null===r._baseState.key)return e.error("Child should have a key");var i=e.enterKey(r._baseState.key);if("object"!==(0,n.default)(t))return e.error("Child expected, but input is not object");var o=r._encode(t[r._baseState.key],e,t);return e.leaveKey(i),o}),this).filter((function(t){return t})),s=this._createEncoderBuffer(s);else if("seqof"===o.tag||"setof"===o.tag){if(!o.args||1!==o.args.length)return e.error("Too many args for : "+o.tag);if(!Array.isArray(t))return e.error("seqof/setof, but data is not Array");var f=this.clone();f._baseState.implicit=null,s=this._createEncoderBuffer(t.map((function(r){var n=this._baseState;return this._getUse(n.args[0],t)._encode(r,e)}),f))}else null!==o.use?a=this._getUse(o.use,r)._encode(t,e):(s=this._encodePrimitive(o.tag,t),u=!0);if(!o.any&&null===o.choice){var c=null!==o.implicit?o.implicit:o.tag,h=null===o.implicit?"universal":"context";null===c?null===o.use&&e.error("Tag could be omitted only for .use()"):null===o.use&&(a=this._encodeComposite(c,u,h,s))}return null!==o.explicit&&(a=this._encodeComposite(o.explicit,!1,"context",a)),a},c.prototype._encodeChoice=function(t,e){var r=this._baseState,n=r.choice[t.type];return n||s(!1,t.type+" not found in "+JSON.stringify(Object.keys(r.choice))),n._encode(t.value,e)},c.prototype._encodePrimitive=function(t,e){var r=this._baseState;if(/str$/.test(t))return this._encodeStr(e,t);if("objid"===t&&r.args)return this._encodeObjid(e,r.reverseArgs[0],r.args[1]);if("objid"===t)return this._encodeObjid(e,null,null);if("gentime"===t||"utctime"===t)return this._encodeTime(e,t);if("null_"===t)return this._encodeNull();if("int"===t||"enum"===t)return this._encodeInt(e,r.args&&r.reverseArgs[0]);if("bool"===t)return this._encodeBool(e);if("objDesc"===t)return this._encodeStr(e,t);throw new Error("Unsupported tag: "+t)},c.prototype._isNumstr=function(t){return/^[0-9 ]*$/.test(t)},c.prototype._isPrintstr=function(t){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(t)}},function(t,e,r){"use strict";var n=r(3);function i(t){this._reporterState={obj:null,path:[],options:t||{},errors:[]}}function o(t,e){this.path=t,this.rethrow(e)}e.Reporter=i,i.prototype.isError=function(t){return t instanceof o},i.prototype.save=function(){var t=this._reporterState;return{obj:t.obj,pathLen:t.path.length}},i.prototype.restore=function(t){var e=this._reporterState;e.obj=t.obj,e.path=e.path.slice(0,t.pathLen)},i.prototype.enterKey=function(t){return this._reporterState.path.push(t)},i.prototype.exitKey=function(t){var e=this._reporterState;e.path=e.path.slice(0,t-1)},i.prototype.leaveKey=function(t,e,r){var n=this._reporterState;this.exitKey(t),null!==n.obj&&(n.obj[e]=r)},i.prototype.path=function(){return this._reporterState.path.join("/")},i.prototype.enterObject=function(){var t=this._reporterState,e=t.obj;return t.obj={},e},i.prototype.leaveObject=function(t){var e=this._reporterState,r=e.obj;return e.obj=t,r},i.prototype.error=function(t){var e,r=this._reporterState,n=t instanceof o;if(e=n?t:new o(r.path.map((function(t){return"["+JSON.stringify(t)+"]"})).join(""),t.message||t,t.stack),!r.options.partial)throw e;return n||r.errors.push(e),e},i.prototype.wrapResult=function(t){var e=this._reporterState;return e.options.partial?{result:this.isError(t)?null:t,errors:e.errors}:t},n(o,Error),o.prototype.rethrow=function(t){if(this.message=t+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,o),!this.stack)try{throw new Error(this.message)}catch(t){this.stack=t.stack}return this}},function(t,e,r){"use strict";function n(t){var e={};return Object.keys(t).forEach((function(r){(0|r)==r&&(r|=0);var n=t[r];e[n]=r})),e}e.tagClass={0:"universal",1:"application",2:"context",3:"private"},e.tagClassByName=n(e.tagClass),e.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},e.tagByName=n(e.tag)},function(t,e,r){"use strict";(function(e){var n=r(0)(r(2)),i=r(101); - /*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ - function o(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,i=0,o=Math.min(r,n);i=0;u--)if(c[u]!==h[u])return!1;for(u=c.length-1;u>=0;u--)if(a=c[u],!w(t[a],e[a],r,n))return!1;return!0}(t,e,r,i))}return r?t===e:t==e}function _(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function k(t,e){if(!t||!e)return!1;if("[object RegExp]"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function M(t,e,r,n){var i;if("function"!=typeof e)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),t&&!i&&y(i,r,"Missing expected exception"+n);var o="string"==typeof n,a=!t&&i&&!r;if((!t&&s.isError(i)&&o&&k(i,r)||a)&&y(i,r,"Got unwanted exception"+n),t&&i&&r&&!k(i,r)||!t&&i)throw i}d.AssertionError=function(t){this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=function(t){return b(v(t.actual),128)+" "+t.operator+" "+b(v(t.expected),128)}(this),this.generatedMessage=!0);var e=t.stackStartFunction||y;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var r=new Error;if(r.stack){var n=r.stack,i=m(e),o=n.indexOf("\n"+i);if(o>=0){var a=n.indexOf("\n",o+1);n=n.substring(a+1)}this.stack=n}}},s.inherits(d.AssertionError,Error),d.fail=y,d.ok=g,d.equal=function(t,e,r){t!=e&&y(t,e,r,"==",d.equal)},d.notEqual=function(t,e,r){t==e&&y(t,e,r,"!=",d.notEqual)},d.deepEqual=function(t,e,r){w(t,e,!1)||y(t,e,r,"deepEqual",d.deepEqual)},d.deepStrictEqual=function(t,e,r){w(t,e,!0)||y(t,e,r,"deepStrictEqual",d.deepStrictEqual)},d.notDeepEqual=function(t,e,r){w(t,e,!1)&&y(t,e,r,"notDeepEqual",d.notDeepEqual)},d.notDeepStrictEqual=function t(e,r,n){w(e,r,!0)&&y(e,r,n,"notDeepStrictEqual",t)},d.strictEqual=function(t,e,r){t!==e&&y(t,e,r,"===",d.strictEqual)},d.notStrictEqual=function(t,e,r){t===e&&y(t,e,r,"!==",d.notStrictEqual)},d.throws=function(t,e,r){M(!0,t,e,r)},d.doesNotThrow=function(t,e,r){M(!1,t,e,r)},d.ifError=function(t){if(t)throw t},d.strict=i((function t(e,r){e||y(e,!0,r,"==",t)}),d,{equal:d.strictEqual,deepEqual:d.deepStrictEqual,notEqual:d.notStrictEqual,notDeepEqual:d.notDeepStrictEqual}),d.strict.strict=d.strict;var S=Object.keys||function(t){var e=[];for(var r in t)u.call(t,r)&&e.push(r);return e}}).call(this,r(7))},function(t,e,r){"use strict"; - /* - object-assign - (c) Sindre Sorhus - @license MIT - */var n=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function a(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}t.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(t){n[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,s,u=a(t),f=1;f=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},o=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.BaseTransaction=void 0;var a=o(r(105)),s=r(26),u=r(43),f=function(){function t(t){this.activeCapabilities=[],this.DEFAULT_CHAIN="mainnet",this.DEFAULT_HARDFORK="istanbul";var e=t.nonce,r=t.gasLimit,n=t.to,i=t.value,o=t.data,a=t.v,u=t.r,f=t.s,c=t.type;this._type=new s.BN(s.toBuffer(c)).toNumber();var h=s.toBuffer(""===n?"0x":n),l=s.toBuffer(""===a?"0x":a),d=s.toBuffer(""===u?"0x":u),p=s.toBuffer(""===f?"0x":f);this.nonce=new s.BN(s.toBuffer(""===e?"0x":e)),this.gasLimit=new s.BN(s.toBuffer(""===r?"0x":r)),this.to=h.length>0?new s.Address(h):void 0,this.value=new s.BN(s.toBuffer(""===i?"0x":i)),this.data=s.toBuffer(""===o?"0x":o),this.v=l.length>0?new s.BN(l):void 0,this.r=d.length>0?new s.BN(d):void 0,this.s=p.length>0?new s.BN(p):void 0,this._validateCannotExceedMaxInteger({nonce:this.nonce,gasLimit:this.gasLimit,value:this.value,r:this.r,s:this.s})}return Object.defineProperty(t.prototype,"transactionType",{get:function(){return this.type},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"type",{get:function(){return this._type},enumerable:!1,configurable:!0}),t.prototype.supports=function(t){return this.activeCapabilities.includes(t)},t.prototype.validate=function(t){void 0===t&&(t=!1);var e=[];return this.getBaseFee().gt(this.gasLimit)&&e.push("gasLimit is too low. given "+this.gasLimit+", need at least "+this.getBaseFee()),this.isSigned()&&!this.verifySignature()&&e.push("Invalid Signature"),t?e:0===e.length},t.prototype.getBaseFee=function(){var t=this.getDataFee().addn(this.common.param("gasPrices","tx"));return this.common.gteHardfork("homestead")&&this.toCreationAddress()&&t.iaddn(this.common.param("gasPrices","txCreation")),t},t.prototype.getDataFee=function(){for(var t=this.common.param("gasPrices","txDataZero"),e=this.common.param("gasPrices","txDataNonZero"),r=0,n=0;n-1&&this.activeCapabilities.splice(c,1)}return f},t.prototype._getCommon=function(t,e){var r;if(e){var n=new s.BN(s.toBuffer(e));if(t){if(!t.chainIdBN().eq(n))throw new Error("The chain ID does not match the chain ID of Common");return t.copy()}return a.default.isSupportedChainId(n)?new a.default({chain:n,hardfork:this.DEFAULT_HARDFORK}):a.default.forCustomChain(this.DEFAULT_CHAIN,{name:"custom-chain",networkId:n,chainId:n},this.DEFAULT_HARDFORK)}return null!==(r=null==t?void 0:t.copy())&&void 0!==r?r:new a.default({chain:this.DEFAULT_CHAIN,hardfork:this.DEFAULT_HARDFORK})},t.prototype._validateCannotExceedMaxInteger=function(t,e){var r,o;void 0===e&&(e=53);try{for(var a=n(Object.entries(t)),u=a.next();!u.done;u=a.next()){var f=i(u.value,2),c=f[0],h=f[1];if(53===e){if(null==h?void 0:h.gt(s.MAX_INTEGER))throw new Error(c+" cannot exceed MAX_INTEGER, given "+h)}else{if(256!==e)throw new Error("unimplemented bits value");if(null==h?void 0:h.gte(s.TWO_POW256))throw new Error(c+" must be less than 2^256, given "+h)}}}catch(t){r={error:t}}finally{try{u&&!u.done&&(o=a.return)&&o.call(a)}finally{if(r)throw r.error}}},t}();e.BaseTransaction=f},function(t,e,r){"use strict";(function(t){var n,i=r(0)(r(2)),o=(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),a=function(){return(a=Object.assign||function(t){for(var e,r=1,n=arguments.length;r=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Hardfork=e.Chain=e.CustomChain=void 0;var u,f,c=r(23),h=r(450),l=r(26),d=r(451),p=r(458),m=r(471);!function(t){t.PolygonMainnet="polygon-mainnet",t.PolygonMumbai="polygon-mumbai",t.ArbitrumRinkebyTestnet="arbitrum-rinkeby-testnet",t.xDaiChain="x-dai-chain"}(u=e.CustomChain||(e.CustomChain={})),function(t){t[t.Mainnet=1]="Mainnet",t[t.Ropsten=3]="Ropsten",t[t.Rinkeby=4]="Rinkeby",t[t.Kovan=42]="Kovan",t[t.Goerli=5]="Goerli",t[t.Calaveras=123]="Calaveras"}(e.Chain||(e.Chain={})),function(t){t.Chainstart="chainstart",t.Homestead="homestead",t.Dao="dao",t.TangerineWhistle="tangerineWhistle",t.SpuriousDragon="spuriousDragon",t.Byzantium="byzantium",t.Constantinople="constantinople",t.Petersburg="petersburg",t.Istanbul="istanbul",t.MuirGlacier="muirGlacier",t.Berlin="berlin",t.London="london"}(f=e.Hardfork||(e.Hardfork={}));var b=function(e){function r(t){var r,n,i=e.call(this)||this;return i._supportedHardforks=[],i._eips=[],i._customChains=null!==(r=t.customChains)&&void 0!==r?r:[],i._chainParams=i.setChain(t.chain),i.DEFAULT_HARDFORK=null!==(n=i._chainParams.defaultHardfork)&&void 0!==n?n:f.Istanbul,i._hardfork=i.DEFAULT_HARDFORK,t.supportedHardforks&&(i._supportedHardforks=t.supportedHardforks),t.hardfork&&i.setHardfork(t.hardfork),t.eips&&i.setEIPs(t.eips),i}return o(r,e),r.custom=function(t,e){var n;void 0===e&&(e={});var i=null!==(n=e.baseChain)&&void 0!==n?n:"mainnet",o=a({},r._getChainParams(i));if(o.name="custom-chain","string"!=typeof t)return new r(a({chain:a(a({},o),t)},e));if(t===u.PolygonMainnet)return r.custom({name:u.PolygonMainnet,chainId:137,networkId:137});if(t===u.PolygonMumbai)return r.custom({name:u.PolygonMumbai,chainId:80001,networkId:80001});if(t===u.ArbitrumRinkebyTestnet)return r.custom({name:u.ArbitrumRinkebyTestnet,chainId:421611,networkId:421611});if(t===u.xDaiChain)return r.custom({name:u.xDaiChain,chainId:100,networkId:100});throw new Error("Custom chain "+t+" not supported")},r.forCustomChain=function(t,e,n,i){var o=r._getChainParams(t);return new r({chain:a(a({},o),e),hardfork:n,supportedHardforks:i})},r.isSupportedChainId=function(t){var e=d._getInitializedChains();return Boolean(e.names[t.toString()])},r._getChainParams=function(t,e){var r=d._getInitializedChains(e);if("number"==typeof t||l.BN.isBN(t)){if(t=t.toString(),r.names[t])return r[r.names[t]];throw new Error("Chain with ID "+t+" not supported")}if(r[t])return r[t];throw new Error("Chain with name "+t+" not supported")},r.prototype.setChain=function(t){var e,n;if("number"==typeof t||"string"==typeof t||l.BN.isBN(t))this._chainParams=r._getChainParams(t,this._customChains);else{if("object"!==(0,i.default)(t))throw new Error("Wrong input format");if(this._customChains.length>0)throw new Error("Chain must be a string, number, or BN when initialized with customChains passed in");try{for(var o=s(["networkId","genesis","hardforks","bootstrapNodes"]),a=o.next();!a.done;a=o.next()){var u=a.value;if(void 0===t[u])throw new Error("Missing required chain parameter: "+u)}}catch(t){e={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(e)throw e.error}}this._chainParams=t}return this._chainParams},r.prototype.setHardfork=function(t){var e,r;if(!this._isSupportedHardfork(t))throw new Error("Hardfork "+t+" not set as supported in supportedHardforks");var n=!1;try{for(var i=s(p.hardforks),o=i.next();!o.done;o=i.next()){o.value[0]===t&&(this._hardfork!==t&&(this._hardfork=t,this.emit("hardforkChanged",t)),n=!0)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}if(!n)throw new Error("Hardfork with name "+t+" not supported")},r.prototype.getHardforkByBlockNumber=function(t){var e,r;t=l.toType(t,l.TypeOutput.BN);var n=f.Chainstart;try{for(var i=s(this.hardforks()),o=i.next();!o.done;o=i.next()){var a=o.value;null!==a.block&&(t.gte(new l.BN(a.block))&&(n=a.name))}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return n},r.prototype.setHardforkByBlockNumber=function(t){t=l.toType(t,l.TypeOutput.BN);var e=this.getHardforkByBlockNumber(t);return this.setHardfork(e),e},r.prototype._chooseHardfork=function(t,e){if(void 0===e&&(e=!0),t){if(e&&!this._isSupportedHardfork(t))throw new Error("Hardfork "+t+" not set as supported in supportedHardforks")}else t=this._hardfork;return t},r.prototype._getHardfork=function(t){var e,r,n=this.hardforks();try{for(var i=s(n),o=i.next();!o.done;o=i.next()){var a=o.value;if(a.name===t)return a}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}throw new Error("Hardfork "+t+" not defined for chain "+this.chainName())},r.prototype._isSupportedHardfork=function(t){var e,r;if(!(this._supportedHardforks.length>0))return!0;try{for(var n=s(this._supportedHardforks),i=n.next();!i.done;i=n.next()){if(t===i.value)return!0}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return!1},r.prototype.setEIPs=function(t){var e,r,n=this;void 0===t&&(t=[]);var i=function(e){if(!(e in m.EIPs))throw new Error(e+" not supported");var r=o.gteHardfork(m.EIPs[e].minimumHardfork);if(!r)throw new Error(e+" cannot be activated on hardfork "+o.hardfork()+", minimumHardfork: "+r);m.EIPs[e].requiredEIPs&&m.EIPs[e].requiredEIPs.forEach((function(r){if(!t.includes(r)&&!n.isActivatedEIP(r))throw new Error(e+" requires EIP "+r+", but is not included in the EIP list")}))},o=this;try{for(var a=s(t),u=a.next();!u.done;u=a.next()){i(u.value)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}this._eips=t},r.prototype.param=function(t,e){var r,n,i=null;try{for(var o=s(this._eips),a=o.next();!a.done;a=o.next()){var u=a.value;if(null!==(i=this.paramByEIP(t,e,u)))return i}}catch(t){r={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return this.paramByHardfork(t,e,this._hardfork)},r.prototype.paramByHardfork=function(t,e,r){var n,i,o,a;r=this._chooseHardfork(r);var u=null;try{for(var f=s(p.hardforks),c=f.next();!c.done;c=f.next()){var h=c.value;if(h[1].hasOwnProperty("eips")){var l=h[1].eips;try{for(var d=(o=void 0,s(l)),m=d.next();!m.done;m=d.next()){var b=m.value,v=this.paramByEIP(t,e,b);u=null!==v?v:u}}catch(t){o={error:t}}finally{try{m&&!m.done&&(a=d.return)&&a.call(d)}finally{if(o)throw o.error}}}else{if(!h[1][t])throw new Error("Topic "+t+" not defined");void 0!==h[1][t][e]&&(u=h[1][t][e].v)}if(h[0]===r)break}}catch(t){n={error:t}}finally{try{c&&!c.done&&(i=f.return)&&i.call(f)}finally{if(n)throw n.error}}return u},r.prototype.paramByEIP=function(t,e,r){if(!(r in m.EIPs))throw new Error(r+" not supported");var n=m.EIPs[r];if(!(t in n))throw new Error("Topic "+t+" not defined");return void 0===n[t][e]?null:n[t][e].v},r.prototype.paramByBlock=function(t,e,r){var n=this.activeHardforks(r),i=n[n.length-1].name;return this.paramByHardfork(t,e,i)},r.prototype.isActivatedEIP=function(t){var e,r;if(this.eips().includes(t))return!0;try{for(var n=s(p.hardforks),i=n.next();!i.done;i=n.next()){var o=i.value[1];if(this.gteHardfork(o.name)&&"eips"in o&&o.eips.includes(t))return!0}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return!1},r.prototype.hardforkIsActiveOnBlock=function(t,e,r){var n;void 0===r&&(r={}),e=l.toType(e,l.TypeOutput.BN);var i=null!==(n=r.onlySupported)&&void 0!==n&&n;t=this._chooseHardfork(t,i);var o=this.hardforkBlockBN(t);return!(!o||!e.gte(o))},r.prototype.activeOnBlock=function(t,e){return this.hardforkIsActiveOnBlock(null,t,e)},r.prototype.hardforkGteHardfork=function(t,e,r){var n,i;void 0===r&&(r={});var o,a=void 0!==r.onlyActive&&r.onlyActive;t=this._chooseHardfork(t,r.onlySupported),o=a?this.activeHardforks(null,r):this.hardforks();var u=-1,f=-1,c=0;try{for(var h=s(o),l=h.next();!l.done;l=h.next()){var d=l.value;d.name===t&&(u=c),d.name===e&&(f=c),c+=1}}catch(t){n={error:t}}finally{try{l&&!l.done&&(i=h.return)&&i.call(h)}finally{if(n)throw n.error}}return u>=f&&-1!==f},r.prototype.gteHardfork=function(t,e){return this.hardforkGteHardfork(null,t,e)},r.prototype.hardforkIsActiveOnChain=function(t,e){var r,n,i;void 0===e&&(e={});var o=null!==(i=e.onlySupported)&&void 0!==i&&i;t=this._chooseHardfork(t,o);try{for(var a=s(this.hardforks()),u=a.next();!u.done;u=a.next()){var f=u.value;if(f.name===t&&null!==f.block)return!0}}catch(t){r={error:t}}finally{try{u&&!u.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}return!1},r.prototype.activeHardforks=function(t,e){var r,n;void 0===e&&(e={});var i=[],o=this.hardforks();try{for(var a=s(o),u=a.next();!u.done;u=a.next()){var f=u.value;if(null!==f.block){if(null!=t&&t0)return r[r.length-1].name;throw new Error("No (supported) active hardfork found")},r.prototype.hardforkBlock=function(t){return l.toType(this.hardforkBlockBN(t),l.TypeOutput.Number)},r.prototype.hardforkBlockBN=function(t){return t=this._chooseHardfork(t,!1),new l.BN(this._getHardfork(t).block)},r.prototype.isHardforkBlock=function(t,e){return t=l.toType(t,l.TypeOutput.BN),e=this._chooseHardfork(e,!1),this.hardforkBlockBN(e).eq(t)},r.prototype.nextHardforkBlock=function(t){var e=this.nextHardforkBlockBN(t);return null===e?null:l.toType(e,l.TypeOutput.Number)},r.prototype.nextHardforkBlockBN=function(t){t=this._chooseHardfork(t,!1);var e=this.hardforkBlockBN(t);return this.hardforks().reduce((function(t,r){var n=new l.BN(r.block);return n.gt(e)&&null===t?n:t}),null)},r.prototype.isNextHardforkBlock=function(t,e){t=l.toType(t,l.TypeOutput.BN),e=this._chooseHardfork(e,!1);var r=this.nextHardforkBlockBN(e);return null!==r&&r.eq(t)},r.prototype._calcForkHash=function(e){var r,n,i=t.from(this.genesis().hash.substr(2),"hex"),o=t.alloc(0),a=0;try{for(var u=s(this.hardforks()),f=u.next();!f.done;f=u.next()){var c=f.value,d=c.block;if(0!==d&&null!==d&&d!==a){var p=t.from(d.toString(16).padStart(16,"0"),"hex");o=t.concat([o,p])}if(c.name===e)break;a=d}}catch(t){r={error:t}}finally{try{f&&!f.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}var m=t.concat([i,o]);return"0x"+l.intToBuffer(h.buf(m)>>>0).toString("hex")},r.prototype.forkHash=function(t){t=this._chooseHardfork(t,!1);var e=this._getHardfork(t);if(null===e.block){throw new Error("No fork hash calculation possible for non-applied or future hardfork")}return void 0!==e.forkHash?e.forkHash:this._calcForkHash(t)},r.prototype.hardforkForForkHash=function(t){var e=this.hardforks().filter((function(e){return e.forkHash===t}));return e.length>=1?e[e.length-1]:null},r.prototype.genesis=function(){return this._chainParams.genesis},r.prototype.hardforks=function(){return this._chainParams.hardforks},r.prototype.bootstrapNodes=function(){return this._chainParams.bootstrapNodes},r.prototype.dnsNetworks=function(){return this._chainParams.dnsNetworks},r.prototype.hardfork=function(){return this._hardfork},r.prototype.chainId=function(){return l.toType(this.chainIdBN(),l.TypeOutput.Number)},r.prototype.chainIdBN=function(){return new l.BN(this._chainParams.chainId)},r.prototype.chainName=function(){return this._chainParams.name},r.prototype.networkId=function(){return l.toType(this.networkIdBN(),l.TypeOutput.Number)},r.prototype.networkIdBN=function(){return new l.BN(this._chainParams.networkId)},r.prototype.eips=function(){return this._eips},r.prototype.consensusType=function(){return this._chainParams.consensus.type},r.prototype.consensusAlgorithm=function(){return this._chainParams.consensus.algorithm},r.prototype.consensusConfig=function(){return this._chainParams.consensus[this.consensusAlgorithm()]},r.prototype.copy=function(){return Object.assign(Object.create(Object.getPrototypeOf(this)),this)},r}(c.EventEmitter);e.default=b}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(t){var n=r(0)(r(2)),i=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),r={},n=0;n=i)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return t}})),s=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),m(r)?n.showHidden=r:r&&e._extend(n,r),g(n.showHidden)&&(n.showHidden=!1),g(n.depth)&&(n.depth=2),g(n.colors)&&(n.colors=!1),g(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=f),h(n,t,n.depth)}function f(t,e){var r=u.styles[e];return r?"["+u.colors[r][0]+"m"+t+"["+u.colors[r][1]+"m":t}function c(t,e){return t}function h(t,r,n){if(t.customInspect&&r&&S(r.inspect)&&r.inspect!==e.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,t);return y(i)||(i=h(t,i,n)),i}var o=function(t,e){if(g(e))return t.stylize("undefined","undefined");if(y(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}if(v(e))return t.stylize(""+e,"number");if(m(e))return t.stylize(""+e,"boolean");if(b(e))return t.stylize("null","null")}(t,r);if(o)return o;var a=Object.keys(r),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(r)),M(r)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return l(r);if(0===a.length){if(S(r)){var u=r.name?": "+r.name:"";return t.stylize("[Function"+u+"]","special")}if(w(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(k(r))return t.stylize(Date.prototype.toString.call(r),"date");if(M(r))return l(r)}var f,c="",_=!1,A=["{","}"];(p(r)&&(_=!0,A=["[","]"]),S(r))&&(c=" [Function"+(r.name?": "+r.name:"")+"]");return w(r)&&(c=" "+RegExp.prototype.toString.call(r)),k(r)&&(c=" "+Date.prototype.toUTCString.call(r)),M(r)&&(c=" "+l(r)),0!==a.length||_&&0!=r.length?n<0?w(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special"):(t.seen.push(r),f=_?function(t,e,r,n,i){for(var o=[],a=0,s=e.length;a=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1];return r[0]+e+" "+t.join(", ")+" "+r[1]}(f,c,A)):A[0]+c+A[1]}function l(t){return"["+Error.prototype.toString.call(t)+"]"}function d(t,e,r,n,i,o){var a,s,u;if((u=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=u.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):u.set&&(s=t.stylize("[Setter]","special")),P(n,i)||(a="["+i+"]"),s||(t.seen.indexOf(u.value)<0?(s=b(r)?h(t,u.value,null):h(t,u.value,r-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map((function(t){return" "+t})).join("\n").substr(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),g(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function p(t){return Array.isArray(t)}function m(t){return"boolean"==typeof t}function b(t){return null===t}function v(t){return"number"==typeof t}function y(t){return"string"==typeof t}function g(t){return void 0===t}function w(t){return _(t)&&"[object RegExp]"===A(t)}function _(t){return"object"===(0,n.default)(t)&&null!==t}function k(t){return _(t)&&"[object Date]"===A(t)}function M(t){return _(t)&&("[object Error]"===A(t)||t instanceof Error)}function S(t){return"function"==typeof t}function A(t){return Object.prototype.toString.call(t)}function x(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(r){if(g(a)&&(a=t.env.NODE_DEBUG||""),r=r.toUpperCase(),!s[r])if(new RegExp("\\b"+r+"\\b","i").test(a)){var n=t.pid;s[r]=function(){var t=e.format.apply(e,arguments);console.error("%s %d: %s",r,n,t)}}else s[r]=function(){};return s[r]},e.inspect=u,u.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.isArray=p,e.isBoolean=m,e.isNull=b,e.isNullOrUndefined=function(t){return null==t},e.isNumber=v,e.isString=y,e.isSymbol=function(t){return"symbol"===(0,n.default)(t)},e.isUndefined=g,e.isRegExp=w,e.isObject=_,e.isDate=k,e.isError=M,e.isFunction=S,e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"===(0,n.default)(t)||void 0===t},e.isBuffer=r(207);var E=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function O(){var t=new Date,e=[x(t.getHours()),x(t.getMinutes()),x(t.getSeconds())].join(":");return[t.getDate(),E[t.getMonth()],e].join(" ")}function P(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){console.log("%s - %s",O(),e.format.apply(e,arguments))},e.inherits=r(208),e._extend=function(t,e){if(!e||!_(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t};var B="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function T(t,e){if(!t){var r=new Error("Promise was rejected with a falsy value");r.reason=t,t=r}return e(t)}e.promisify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');if(B&&t[B]){var e;if("function"!=typeof(e=t[B]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,B,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,r,n=new Promise((function(t,n){e=t,r=n})),i=[],o=0;o7&&t[r].toUpperCase()!==t[r]||parseInt(e[r],16)<=7&&t[r].toLowerCase()!==t[r])return!1;return!0},p=function(t){var e="";t=(t=(t=(t=(t=a.encode(t)).replace(/^(?:\u0000)*/,"")).split("").reverse().join("")).replace(/^(?:\u0000)*/,"")).split("").reverse().join("");for(var r=0;r>>4).toString(16)),e.push((15&t[r]).toString(16));return"0x"+e.join("")},isHex:w,isHexStrict:g,stripHexPrefix:function(t){return 0!==t&&w(t)?t.replace(/^(-)?0x/i,"$1"):t},leftPad:function(t,e,r){var n=/^0x/i.test(t)||"number"==typeof t,i=e-(t=t.toString(16).replace(/^0x/i,"")).length+1>=0?e-t.length+1:0;return(n?"0x":"")+new Array(i).join(r||"0")+t},rightPad:function(t,e,r){var n=/^0x/i.test(t)||"number"==typeof t,i=e-(t=t.toString(16).replace(/^0x/i,"")).length+1>=0?e-t.length+1:0;return(n?"0x":"")+t+new Array(i).join(r||"0")},toTwosComplement:function(t){return"0x"+h(t).toTwos(256).toString(16,64)},sha3:k,sha3Raw:function(t){return null===(t=k(t))?_:t},toNumber:function(t){return"number"==typeof t?t:m(y(t))}}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n=r(0),i=n(r(5)),o=n(r(9)),a=r(16),s=r(8),u=function(t){var e="A".charCodeAt(0),r="Z".charCodeAt(0);return(t=(t=t.toUpperCase()).substr(4)+t.substr(0,4)).split("").map((function(t){var n=t.charCodeAt(0);return n>=e&&n<=r?n-e+10:t})).join("")},f=function(t){for(var e,r=t;r.length>2;)e=r.slice(0,9),r=parseInt(e,10)%97+r.slice(e.length);return parseInt(r,10)%97},c=function(){function t(e){(0,i.default)(this,t),this._iban=e}return(0,o.default)(t,[{key:"isValid",value:function(){return/^XE[0-9]{2}(ETH[0-9A-Z]{13}|[0-9A-Z]{30,31})$/.test(this._iban)&&1===f(u(this._iban))}},{key:"isDirect",value:function(){return 34===this._iban.length||35===this._iban.length}},{key:"isIndirect",value:function(){return 20===this._iban.length}},{key:"checksum",value:function(){return this._iban.substr(2,2)}},{key:"institution",value:function(){return this.isIndirect()?this._iban.substr(7,4):""}},{key:"client",value:function(){return this.isIndirect()?this._iban.substr(11):""}},{key:"toAddress",value:function(){if(this.isDirect()){var t=this._iban.substr(4),e=new s(t,36);return a.toChecksumAddress(e.toString(16,20))}return""}},{key:"toString",value:function(){return this._iban}}],[{key:"toAddress",value:function(e){if(!(e=new t(e)).isDirect())throw new Error("IBAN is indirect and can't be converted");return e.toAddress()}},{key:"toIban",value:function(e){return t.fromAddress(e).toString()}},{key:"fromAddress",value:function(e){if(!a.isAddress(e))throw new Error("Provided address is not a valid address: "+e);e=e.replace("0x","").replace("0X","");var r=function(t,e){for(var r=t;r.length<2*e;)r="0"+r;return r}(new s(e,16).toString(36),15);return t.fromBban(r.toUpperCase())}},{key:"fromBban",value:function(e){return new t("XE"+("0"+(98-f(u("XE00"+e)))).slice(-2)+e)}},{key:"createIndirect",value:function(e){return t.fromBban("ETH"+e.institution+e.identifier)}},{key:"isValid",value:function(e){return new t(e).isValid()}}]),t}();t.exports=c},function(t,e,r){"use strict";var n={messageId:0,toPayload:function(t,e){if(!t)throw new Error('JSONRPC method should be specified for params: "'+JSON.stringify(e)+'"!');return n.messageId++,{jsonrpc:"2.0",id:n.messageId,method:t,params:e||[]}},isValidResponse:function(t){return Array.isArray(t)?t.every(e):e(t);function e(t){return!(!t||t.error||"2.0"!==t.jsonrpc||"number"!=typeof t.id&&"string"!=typeof t.id||void 0===t.result)}},toBatchPayload:function(t){return t.map((function(t){return n.toPayload(t.method,t.params)}))}};t.exports=n},function(t,e,r){"use strict";(function(t,n){var i,o=r(0)(r(2));!function(a){var s="object"==(0,o.default)(e)&&e&&!e.nodeType&&e,u="object"==(0,o.default)(t)&&t&&!t.nodeType&&t,f="object"==(void 0===n?"undefined":(0,o.default)(n))&&n;f.global!==f&&f.window!==f&&f.self!==f||(a=f);var c,h,l=2147483647,d=/^xn--/,p=/[^\x20-\x7E]/,m=/[\x2E\u3002\uFF0E\uFF61]/g,b={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},v=Math.floor,y=String.fromCharCode;function g(t){throw new RangeError(b[t])}function w(t,e){for(var r=t.length,n=[];r--;)n[r]=e(t[r]);return n}function _(t,e){var r=t.split("@"),n="";return r.length>1&&(n=r[0]+"@",t=r[1]),n+w((t=t.replace(m,".")).split("."),e).join(".")}function k(t){for(var e,r,n=[],i=0,o=t.length;i=55296&&e<=56319&&i65535&&(e+=y((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+=y(t)})).join("")}function S(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function A(t,e,r){var n=0;for(t=r?v(t/700):t>>1,t+=v(t/e);t>455;n+=36)t=v(t/35);return v(n+36*t/(t+38))}function x(t){var e,r,n,i,o,a,s,u,f,c,h,d=[],p=t.length,m=0,b=128,y=72;for((r=t.lastIndexOf("-"))<0&&(r=0),n=0;n=128&&g("not-basic"),d.push(t.charCodeAt(n));for(i=r>0?r+1:0;i=p&&g("invalid-input"),((u=(h=t.charCodeAt(i++))-48<10?h-22:h-65<26?h-65:h-97<26?h-97:36)>=36||u>v((l-m)/a))&&g("overflow"),m+=u*a,!(u<(f=s<=y?1:s>=y+26?26:s-y));s+=36)a>v(l/(c=36-f))&&g("overflow"),a*=c;y=A(m-o,e=d.length+1,0==o),v(m/e)>l-b&&g("overflow"),b+=v(m/e),m%=e,d.splice(m++,0,b)}return M(d)}function E(t){var e,r,n,i,o,a,s,u,f,c,h,d,p,m,b,w=[];for(d=(t=k(t)).length,e=128,r=0,o=72,a=0;a=e&&hv((l-r)/(p=n+1))&&g("overflow"),r+=(s-e)*p,e=s,a=0;al&&g("overflow"),h==e){for(u=r,f=36;!(u<(c=f<=o?1:f>=o+26?26:f-o));f+=36)b=u-c,m=36-c,w.push(y(S(c+b%m,0))),u=v(b/m);w.push(y(S(u,0))),o=A(r,p,n==i),r=0,++n}++r,++e}return w.join("")}if(c={version:"1.4.1",ucs2:{decode:k,encode:M},decode:x,encode:E,toASCII:function(t){return _(t,(function(t){return p.test(t)?"xn--"+E(t):t}))},toUnicode:function(t){return _(t,(function(t){return d.test(t)?x(t.slice(4).toLowerCase()):t}))}},"object"==(0,o.default)(r(72))&&r(72))void 0===(i=function(){return c}.call(e,r,e,t))||(t.exports=i);else if(s&&u)if(t.exports==s)u.exports=c;else for(h in c)c.hasOwnProperty(h)&&(s[h]=c[h]);else a.punycode=c}(void 0)}).call(this,r(17)(t),r(7))},function(t,e,r){"use strict";(function(t){e.fetch=s(t.fetch)&&s(t.ReadableStream),e.writableStream=s(t.WritableStream),e.abortController=s(t.AbortController),e.blobConstructor=!1;try{new Blob([new ArrayBuffer(1)]),e.blobConstructor=!0}catch(t){}var r;function n(){if(void 0!==r)return r;if(t.XMLHttpRequest){r=new t.XMLHttpRequest;try{r.open("GET",t.XDomainRequest?"/":"https://example.com")}catch(t){r=null}}else r=null;return r}function i(t){var e=n();if(!e)return!1;try{return e.responseType=t,e.responseType===t}catch(t){}return!1}var o=void 0!==t.ArrayBuffer,a=o&&s(t.ArrayBuffer.prototype.slice);function s(t){return"function"==typeof t}e.arraybuffer=e.fetch||o&&i("arraybuffer"),e.msstream=!e.fetch&&a&&i("ms-stream"),e.mozchunkedarraybuffer=!e.fetch&&o&&i("moz-chunked-arraybuffer"),e.overrideMimeType=e.fetch||!!n()&&s(n().overrideMimeType),e.vbArray=s(t.VBArray),r=null}).call(this,r(7))},function(t,e,r){"use strict";(function(t,n,i){var o=r(115),a=r(3),s=r(46),u=e.readyStates={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4},f=e.IncomingMessage=function(e,r,a,u){var f=this;if(s.Readable.call(f),f._mode=a,f.headers={},f.rawHeaders=[],f.trailers={},f.rawTrailers=[],f.on("end",(function(){t.nextTick((function(){f.emit("close")}))})),"fetch"===a){if(f._fetchResponse=r,f.url=r.url,f.statusCode=r.status,f.statusMessage=r.statusText,r.headers.forEach((function(t,e){f.headers[e.toLowerCase()]=t,f.rawHeaders.push(e,t)})),o.writableStream){var c=new WritableStream({write:function(t){return new Promise((function(e,r){f._destroyed?r():f.push(new i(t))?e():f._resumeFetch=e}))},close:function(){n.clearTimeout(u),f._destroyed||f.push(null)},abort:function(t){f._destroyed||f.emit("error",t)}});try{return void r.body.pipeTo(c).catch((function(t){n.clearTimeout(u),f._destroyed||f.emit("error",t)}))}catch(t){}}var h=r.body.getReader();!function t(){h.read().then((function(e){if(!f._destroyed){if(e.done)return n.clearTimeout(u),void f.push(null);f.push(new i(e.value)),t()}})).catch((function(t){n.clearTimeout(u),f._destroyed||f.emit("error",t)}))}()}else{if(f._xhr=e,f._pos=0,f.url=e.responseURL,f.statusCode=e.status,f.statusMessage=e.statusText,e.getAllResponseHeaders().split(/\r?\n/).forEach((function(t){var e=t.match(/^([^:]+):\s*(.*)/);if(e){var r=e[1].toLowerCase();"set-cookie"===r?(void 0===f.headers[r]&&(f.headers[r]=[]),f.headers[r].push(e[2])):void 0!==f.headers[r]?f.headers[r]+=", "+e[2]:f.headers[r]=e[2],f.rawHeaders.push(e[1],e[2])}})),f._charset="x-user-defined",!o.overrideMimeType){var l=f.rawHeaders["mime-type"];if(l){var d=l.match(/;\s*charset=([^;])(;|$)/);d&&(f._charset=d[1].toLowerCase())}f._charset||(f._charset="utf-8")}}};a(f,s.Readable),f.prototype._read=function(){var t=this._resumeFetch;t&&(this._resumeFetch=null,t())},f.prototype._onXHRProgress=function(){var t=this,e=t._xhr,r=null;switch(t._mode){case"text:vbarray":if(e.readyState!==u.DONE)break;try{r=new n.VBArray(e.responseBody).toArray()}catch(t){}if(null!==r){t.push(new i(r));break}case"text":try{r=e.responseText}catch(e){t._mode="text:vbarray";break}if(r.length>t._pos){var o=r.substr(t._pos);if("x-user-defined"===t._charset){for(var a=new i(o.length),s=0;st._pos&&(t.push(new i(new Uint8Array(f.result.slice(t._pos)))),t._pos=f.result.byteLength)},f.onload=function(){t.push(null)},f.readAsArrayBuffer(r)}t._xhr.readyState===u.DONE&&"ms-stream"!==t._mode&&t.push(null)}}).call(this,r(6),r(7),r(1).Buffer)},function(t,e,r){"use strict";(function(e,n){var i=r(56);t.exports=g;var o,a=r(107);g.ReadableState=y;r(23).EventEmitter;var s=function(t,e){return t.listeners(e).length},u=r(118),f=r(4).Buffer,c=e.Uint8Array||function(){};var h=Object.create(r(47));h.inherits=r(3);var l=r(238),d=void 0;d=l&&l.debuglog?l.debuglog("stream"):function(){};var p,m=r(239),b=r(119);h.inherits(g,u);var v=["error","close","destroy","pause","resume"];function y(t,e){t=t||{};var n=e instanceof(o=o||r(28));this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var i=t.highWaterMark,a=t.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:n&&(a||0===a)?a:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(p||(p=r(29).StringDecoder),this.decoder=new p(t.encoding),this.encoding=t.encoding)}function g(t){if(o=o||r(28),!(this instanceof g))return new g(t);this._readableState=new y(t,this),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),u.call(this)}function w(t,e,r,n,i){var o,a=t._readableState;null===e?(a.reading=!1,function(t,e){if(e.ended)return;if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,M(t)}(t,a)):(i||(o=function(t,e){var r;n=e,f.isBuffer(n)||n instanceof c||"string"==typeof e||void 0===e||t.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(a,e)),o?t.emit("error",o):a.objectMode||e&&e.length>0?("string"==typeof e||a.objectMode||Object.getPrototypeOf(e)===f.prototype||(e=function(t){return f.from(t)}(e)),n?a.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):_(t,a,e,!0):a.ended?t.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!r?(e=a.decoder.write(e),a.objectMode||0!==e.length?_(t,a,e,!1):A(t,a)):_(t,a,e,!1))):n||(a.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=8388608?t=8388608:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function M(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(d("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?i.nextTick(S,t):S(t))}function S(t){d("emit readable"),t.emit("readable"),P(t)}function A(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(x,t,e))}function x(t,e){for(var r=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):r=function(t,e,r){var n;to.length?o.length:t;if(a===o.length?i+=o:i+=o.slice(0,t),0===(t-=a)){a===o.length?(++n,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=o.slice(a));break}++n}return e.length-=n,i}(t,e):function(t,e){var r=f.allocUnsafe(t),n=e.head,i=1;n.data.copy(r),t-=n.data.length;for(;n=n.next;){var o=n.data,a=t>o.length?o.length:t;if(o.copy(r,r.length-t,0,a),0===(t-=a)){a===o.length?(++i,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=o.slice(a));break}++i}return e.length-=i,r}(t,e);return n}(t,e.buffer,e.decoder),r);var r}function T(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,i.nextTick(R,e,t))}function R(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function I(t,e){for(var r=0,n=t.length;r=e.highWaterMark||e.ended))return d("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?T(this):M(this),null;if(0===(t=k(t,e))&&e.ended)return 0===e.length&&T(this),null;var n,i=e.needReadable;return d("need readable",i),(0===e.length||e.length-t0?B(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&T(this)),null!==n&&this.emit("data",n),n},g.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},g.prototype.pipe=function(t,e){var r=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=t;break;case 1:o.pipes=[o.pipes,t];break;default:o.pipes.push(t)}o.pipesCount+=1,d("pipe count=%d opts=%j",o.pipesCount,e);var u=(!e||!1!==e.end)&&t!==n.stdout&&t!==n.stderr?c:g;function f(e,n){d("onunpipe"),e===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,d("cleanup"),t.removeListener("close",v),t.removeListener("finish",y),t.removeListener("drain",h),t.removeListener("error",b),t.removeListener("unpipe",f),r.removeListener("end",c),r.removeListener("end",g),r.removeListener("data",m),l=!0,!o.awaitDrain||t._writableState&&!t._writableState.needDrain||h())}function c(){d("onend"),t.end()}o.endEmitted?i.nextTick(u):r.once("end",u),t.on("unpipe",f);var h=function(t){return function(){var e=t._readableState;d("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,P(t))}}(r);t.on("drain",h);var l=!1;var p=!1;function m(e){d("ondata"),p=!1,!1!==t.write(e)||p||((1===o.pipesCount&&o.pipes===t||o.pipesCount>1&&-1!==I(o.pipes,t))&&!l&&(d("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,p=!0),r.pause())}function b(e){d("onerror",e),g(),t.removeListener("error",b),0===s(t,"error")&&t.emit("error",e)}function v(){t.removeListener("finish",y),g()}function y(){d("onfinish"),t.removeListener("close",v),g()}function g(){d("unpipe"),r.unpipe(t)}return r.on("data",m),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?a(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",b),t.once("close",v),t.once("finish",y),t.emit("pipe",r),o.flowing||(d("pipe resume"),r.resume()),t},g.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},r(241),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||void 0,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||void 0}).call(this,r(7))},function(t,e,r){"use strict";t.exports=a;var n=r(28),i=Object.create(r(47));function o(t,e){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=e&&this.push(e),n(t);var i=this._readableState;i.reading=!1,(i.needReadable||i.lengtht.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&(10===arguments[0]?d||(d=!0,h.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):16===arguments[0]?h.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",u.Logger.errors.UNEXPECTED_ARGUMENT,{}):h.throwError("BigNumber.toString does not accept parameters",u.Logger.errors.UNEXPECTED_ARGUMENT,{})),v(this).toString(10)}},{key:"toHexString",value:function(){return this._hex}},{key:"toJSON",value:function(t){return{type:"BigNumber",hex:this.toHexString()}}}],[{key:"from",value:function(e){if(e instanceof t)return e;if("string"==typeof e)return e.match(/^-?0x[0-9a-f]+$/i)?new t(l,m(e)):e.match(/^-?[0-9]+$/)?new t(l,m(new c(e))):h.throwArgumentError("invalid BigNumber string","value",e);if("number"==typeof e)return e%1&&y("underflow","BigNumber.from",e),(e>=9007199254740991||e<=-9007199254740991)&&y("overflow","BigNumber.from",e),t.from(String(e));var r=e;if("bigint"==typeof r)return t.from(r.toString());if((0,s.isBytes)(r))return t.from((0,s.hexlify)(r));if(r)if(r.toHexString){var n=r.toHexString();if("string"==typeof n)return t.from(n)}else{var i=r._hex;if(null==i&&"BigNumber"===r.type&&(i=r.hex),"string"==typeof i&&((0,s.isHexString)(i)||"-"===i[0]&&(0,s.isHexString)(i.substring(1))))return t.from(i)}return h.throwArgumentError("invalid BigNumber value","value",e)}},{key:"isBigNumber",value:function(t){return!(!t||!t._isBigNumber)}}]),t}();function m(t){if("string"!=typeof t)return m(t.toString(16));if("-"===t[0])return"-"===(t=t.substring(1))[0]&&h.throwArgumentError("invalid hex","value",t),"0x00"===(t=m(t))?t:"-"+t;if("0x"!==t.substring(0,2)&&(t="0x"+t),"0x"===t)return"0x00";for(t.length%2&&(t="0x0"+t.substring(2));t.length>4&&"0x00"===t.substring(0,4);)t="0x"+t.substring(4);return t}function b(t){return p.from(m(t))}function v(t){var e=p.from(t).toHexString();return"-"===e[0]?new c("-"+e.substring(3),16):new c(e.substring(2),16)}function y(t,e,r){var n={fault:t,operation:e};return null!=r&&(n.value=r),h.throwError(t,u.Logger.errors.NUMERIC_FAULT,n)}e.BigNumber=p},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.version=void 0;e.version="bignumber/5.1.1"},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.encode=function(t){return(0,n.hexlify)(function t(e){if(Array.isArray(e)){var r=[];if(e.forEach((function(e){r=r.concat(t(e))})),r.length<=55)return r.unshift(192+r.length),r;var i=s(r.length);return i.unshift(247+i.length),i.concat(r)}(0,n.isBytesLike)(e)||a.throwArgumentError("RLP object must be BytesLike","object",e);var o=Array.prototype.slice.call((0,n.arrayify)(e));if(1===o.length&&o[0]<=127)return o;if(o.length<=55)return o.unshift(128+o.length),o;var u=s(o.length);return u.unshift(183+u.length),u.concat(o)}(t))},e.decode=function(t){var e=(0,n.arrayify)(t),r=c(e,0);r.consumed!==e.length&&a.throwArgumentError("invalid rlp data","data",t);return r.result};var n=r(11),i=r(12),o=r(263),a=new i.Logger(o.version);function s(t){for(var e=[];t;)e.unshift(255&t),t>>=8;return e}function u(t,e,r){for(var n=0,i=0;ie+1+n&&a.throwError("child data too short",i.Logger.errors.BUFFER_OVERRUN,{})}return{consumed:1+n,result:o}}function c(t,e){if(0===t.length&&a.throwError("data too short",i.Logger.errors.BUFFER_OVERRUN,{}),t[e]>=248){var r=t[e]-247;e+1+r>t.length&&a.throwError("data short segment too short",i.Logger.errors.BUFFER_OVERRUN,{});var o=u(t,e+1,r);return e+1+r+o>t.length&&a.throwError("data long segment too short",i.Logger.errors.BUFFER_OVERRUN,{}),f(t,e,e+1+r,r+o)}if(t[e]>=192){var s=t[e]-192;return e+1+s>t.length&&a.throwError("data array too short",i.Logger.errors.BUFFER_OVERRUN,{}),f(t,e,e+1,s)}if(t[e]>=184){var c=t[e]-183;e+1+c>t.length&&a.throwError("data array too short",i.Logger.errors.BUFFER_OVERRUN,{});var h=u(t,e+1,c);return e+1+c+h>t.length&&a.throwError("data array too short",i.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+c+h,result:(0,n.hexlify)(t.slice(e+1+c,e+1+c+h))}}if(t[e]>=128){var l=t[e]-128;return e+1+l>t.length&&a.throwError("data too short",i.Logger.errors.BUFFER_OVERRUN,{}),{consumed:1+l,result:(0,n.hexlify)(t.slice(e+1,e+1+l))}}return{consumed:1,result:(0,n.hexlify)(t[e])}}},function(t,e,r){"use strict";var n=r(21).rotr32;function i(t,e,r){return t&e^~t&r}function o(t,e,r){return t&e^t&r^e&r}function a(t,e,r){return t^e^r}e.ft_1=function(t,e,r,n){return 0===t?i(e,r,n):1===t||3===t?a(e,r,n):2===t?o(e,r,n):void 0},e.ch32=i,e.maj32=o,e.p32=a,e.s0_256=function(t){return n(t,2)^n(t,13)^n(t,22)},e.s1_256=function(t){return n(t,6)^n(t,11)^n(t,25)},e.g0_256=function(t){return n(t,7)^n(t,18)^t>>>3},e.g1_256=function(t){return n(t,17)^n(t,19)^t>>>10}},function(t,e,r){"use strict";var n=r(21),i=r(49),o=r(129),a=r(18),s=n.sum32,u=n.sum32_4,f=n.sum32_5,c=o.ch32,h=o.maj32,l=o.s0_256,d=o.s1_256,p=o.g0_256,m=o.g1_256,b=i.BlockHash,v=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;b.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=v,this.W=new Array(64)}n.inherits(y,b),t.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;n0&&t.topics.length!==n+1&&(e={anonymous:!0,inputs:[]})}var i=e.anonymous?t.topics:t.topics.slice(1);return r.returnValues=m.decodeLog(e.inputs,t.data,i),delete r.returnValues.__length__,r.event=e.name,r.signature=e.anonymous||!t.topics[0]?null:t.topics[0],r.raw={data:r.data,topics:r.topics},delete r.data,delete r.topics,r},b.prototype._encodeMethodABI=function(){var t=this._method.signature,e=this.arguments||[],r=!1,n=this._parent.options.jsonInterface.filter((function(e){return"constructor"===t&&e.type===t||(e.signature===t||e.signature===t.replace("0x","")||e.name===t)&&"function"===e.type})).map((function(t){var n=Array.isArray(t.inputs)?t.inputs.length:0;if(n!==e.length)throw new Error("The number of arguments is not matching the methods required number. You need to pass "+n+" arguments.");return"function"===t.type&&(r=t.signature),Array.isArray(t.inputs)?t.inputs:[]})).map((function(t){return m.encodeParameters(t,e).replace("0x","")}))[0]||"";if("constructor"===t){if(!this._deployData)throw new Error("The contract has no contract data option set. This is necessary to append the constructor parameters.");return this._deployData.startsWith("0x")||(this._deployData="0x"+this._deployData),this._deployData+n}var i=r?r+n:n;if(!i)throw new Error("Couldn't find a matching contract method named \""+this._method.name+'".');return i},b.prototype._decodeMethodReturn=function(t,e){if(!e)return null;e=e.length>=2?e.slice(2):e;var r=m.decodeParameters(t,e);return 1===r.__length__?r[0]:(delete r.__length__,r)},b.prototype.deploy=function(t,e){if((t=t||{}).arguments=t.arguments||[],!(t=this._getOrSetDefaultOptions(t)).data){if("function"==typeof e)return e(d.ContractMissingDeployDataError());throw d.ContractMissingDeployDataError()}var r=this.options.jsonInterface.find((function(t){return"constructor"===t.type}))||{};return r.signature="constructor",this._createTxObject.apply({method:r,parent:this,deployData:t.data,_ethAccounts:this.constructor._ethAccounts},t.arguments)},b.prototype._generateEventOptions=function(){var t=Array.prototype.slice.call(arguments),e=this._getCallback(t),r="object"===(!!t[t.length-1]&&(0,o.default)(t[t.length-1]))?t.pop():{},n="string"==typeof t[0]?t[0]:"allevents",i="allevents"===n.toLowerCase()?{name:"ALLEVENTS",jsonInterface:this.options.jsonInterface}:this.options.jsonInterface.find((function(t){return"event"===t.type&&(t.name===n||t.signature==="0x"+n.replace("0x",""))}));if(!i)throw d.ContractEventDoesNotExistError(n);if(!c.isAddress(this.options.address))throw d.ContractNoAddressDefinedError();return{params:this._encodeEventABI(i,r),event:i,callback:e}},b.prototype.clone=function(){return new this.constructor(this.options.jsonInterface,this.options.address,this.options)},b.prototype.once=function(t,e,r){var n=Array.prototype.slice.call(arguments);if(!(r=this._getCallback(n)))throw d.ContractOnceRequiresCallbackError();e&&delete e.fromBlock,this._on(t,e,(function(t,e,n){n.unsubscribe(),"function"==typeof r&&r(t,e,n)}))},b.prototype._on=function(){var t=this._generateEventOptions.apply(this,arguments);t.params&&t.params.toBlock&&(delete t.params.toBlock,console.warn("Invalid option: toBlock. Use getPastEvents for specific range.")),this._checkListener("newListener",t.event.name),this._checkListener("removeListener",t.event.name);var e=new h({subscription:{params:1,inputFormatter:[l.inputLogFormatter],outputFormatter:this._decodeEventABI.bind(t.event),subscriptionHandler:function(t){t.removed?this.emit("changed",t):this.emit("data",t),"function"==typeof this.callback&&this.callback(null,t,this)}},type:"eth",requestManager:this._requestManager});return e.subscribe("logs",t.params,t.callback||function(){}),e},b.prototype.getPastEvents=function(){var t=this._generateEventOptions.apply(this,arguments),e=new f({name:"getPastLogs",call:"eth_getLogs",params:1,inputFormatter:[l.inputLogFormatter],outputFormatter:this._decodeEventABI.bind(t.event)});e.setRequestManager(this._requestManager);var r=e.buildCall();return e=null,r(t.params,t.callback)},b.prototype._createTxObject=function(){var t=Array.prototype.slice.call(arguments),e={};if("function"===this.method.type&&(e.call=this.parent._executeMethod.bind(e,"call"),e.call.request=this.parent._executeMethod.bind(e,"call",!0)),e.send=this.parent._executeMethod.bind(e,"send"),e.send.request=this.parent._executeMethod.bind(e,"send",!0),e.encodeABI=this.parent._encodeMethodABI.bind(e),e.estimateGas=this.parent._executeMethod.bind(e,"estimate"),t&&this.method.inputs&&t.length!==this.method.inputs.length){if(this.nextMethod)return this.nextMethod.apply(null,t);throw d.InvalidNumberOfParams(t.length,this.method.inputs.length,this.method.name)}return e.arguments=t||[],e._method=this.method,e._parent=this.parent,e._ethAccounts=this.parent.constructor._ethAccounts||this._ethAccounts,this.deployData&&(e._deployData=this.deployData),e},b.prototype._processExecuteArguments=function(t,e){var r={};if(r.type=t.shift(),r.callback=this._parent._getCallback(t),"call"!==r.type||!0===t[t.length-1]||"string"!=typeof t[t.length-1]&&!isFinite(t[t.length-1])||(r.defaultBlock=t.pop()),r.options="object"===(!!t[t.length-1]&&(0,o.default)(t[t.length-1]))?t.pop():{},r.generateRequest=!0===t[t.length-1]&&t.pop(),r.options=this._parent._getOrSetDefaultOptions(r.options),r.options.data=this.encodeABI(),!this._deployData&&!c.isAddress(this._parent.options.address))throw d.ContractNoAddressDefinedError();return this._deployData||(r.options.to=this._parent.options.address),r.options.data?r:c._fireError(new Error("Couldn't find a matching contract method, or the number of parameters is wrong."),e.eventEmitter,e.reject,r.callback)},b.prototype._executeMethod=function(){var t=this,e=this._parent._processExecuteArguments.call(this,Array.prototype.slice.call(arguments),r),r=p("send"!==e.type),n=t.constructor._ethAccounts||t._ethAccounts;if(e.generateRequest){var i={params:[l.inputCallFormatter.call(this._parent,e.options)],callback:e.callback};return"call"===e.type?(i.params.push(l.inputDefaultBlockNumberFormatter.call(this._parent,e.defaultBlock)),i.method="eth_call",i.format=this._parent._decodeMethodReturn.bind(null,this._method.outputs)):i.method="eth_sendTransaction",i}switch(e.type){case"estimate":var o=new f({name:"estimateGas",call:"eth_estimateGas",params:1,inputFormatter:[l.inputCallFormatter],outputFormatter:c.hexToNumber,requestManager:t._parent._requestManager,accounts:n,defaultAccount:t._parent.defaultAccount,defaultBlock:t._parent.defaultBlock}).createFunction();return o(e.options,e.callback);case"call":var a=new f({name:"call",call:"eth_call",params:2,inputFormatter:[l.inputCallFormatter,l.inputDefaultBlockNumberFormatter],outputFormatter:function(e){return t._parent._decodeMethodReturn(t._method.outputs,e)},requestManager:t._parent._requestManager,accounts:n,defaultAccount:t._parent.defaultAccount,defaultBlock:t._parent.defaultBlock,handleRevert:t._parent.handleRevert,abiCoder:m}).createFunction();return a(e.options,e.defaultBlock,e.callback);case"send":if(!c.isAddress(e.options.from))return c._fireError(d.ContractNoFromAddressDefinedError(),r.eventEmitter,r.reject,e.callback);if("boolean"==typeof this._method.payable&&!this._method.payable&&e.options.value&&e.options.value>0)return c._fireError(new Error("Can not send value to non-payable contract method or constructor"),r.eventEmitter,r.reject,e.callback);var s={receiptFormatter:function(e){if(Array.isArray(e.logs)){var r=e.logs.map((function(e){return t._parent._decodeEventABI.call({name:"ALLEVENTS",jsonInterface:t._parent.options.jsonInterface},e)}));e.events={};var n=0;r.forEach((function(t){t.event?e.events[t.event]?Array.isArray(e.events[t.event])?e.events[t.event].push(t):e.events[t.event]=[e.events[t.event],t]:e.events[t.event]=t:(e.events[n]=t,n++)})),delete e.logs}return e},contractDeployFormatter:function(e){var r=t._parent.clone();return r.options.address=e.contractAddress,r}},u=new f({name:"sendTransaction",call:"eth_sendTransaction",params:1,inputFormatter:[l.inputTransactionFormatter],requestManager:t._parent._requestManager,accounts:t.constructor._ethAccounts||t._ethAccounts,defaultAccount:t._parent.defaultAccount,defaultBlock:t._parent.defaultBlock,transactionBlockTimeout:t._parent.transactionBlockTimeout,transactionConfirmationBlocks:t._parent.transactionConfirmationBlocks,transactionPollingTimeout:t._parent.transactionPollingTimeout,defaultCommon:t._parent.defaultCommon,defaultChain:t._parent.defaultChain,defaultHardfork:t._parent.defaultHardfork,handleRevert:t._parent.handleRevert,extraFormatters:s,abiCoder:m}).createFunction();return u(e.options,e.callback);default:throw new Error('Method "'+e.type+'" not implemented.')}},t.exports=b},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(1).Buffer,o=r(16),a=r(135).AbiCoder,s=r(135).ParamType,u=new a((function(t,e){return!t.match(/^u?int/)||Array.isArray(e)||e&&"object"===(0,n.default)(e)&&"BN"===e.constructor.name?e:e.toString()}));function f(){}var c=function(){};c.prototype.encodeFunctionSignature=function(t){return("function"==typeof t||"object"===(0,n.default)(t)&&t)&&(t=o._jsonInterfaceMethodToString(t)),o.sha3(t).slice(0,10)},c.prototype.encodeEventSignature=function(t){return("function"==typeof t||"object"===(0,n.default)(t)&&t)&&(t=o._jsonInterfaceMethodToString(t)),o.sha3(t)},c.prototype.encodeParameter=function(t,e){return this.encodeParameters([t],[e])},c.prototype.encodeParameters=function(t,e){var r=this;return t=r.mapTypes(t),e=e.map((function(e,i){var o=t[i];if("object"===(0,n.default)(o)&&o.type&&(o=o.type),e=r.formatParam(o,e),"string"==typeof o&&o.includes("tuple")){!function t(e,n){if("array"===e.name)return n.map((function(r){return t(u._getCoder(s.from(e.type.replace("[]",""))),r)}));e.coders.forEach((function(e,i){"tuple"===e.name?t(e,n[i]):n[i]=r.formatParam(e.name,n[i])}))}(u._getCoder(s.from(o)),e)}return e})),u.encode(t,e)},c.prototype.mapTypes=function(t){var e=this,r=[];return t.forEach((function(t){if("object"===(0,n.default)(t)&&"function"===t.type&&(t=Object.assign({},t,{type:"bytes24"})),e.isSimplifiedStructFormat(t)){var i=Object.keys(t)[0];r.push(Object.assign(e.mapStructNameAndType(i),{components:e.mapStructToCoderFormat(t[i])}))}else r.push(t)})),r},c.prototype.isSimplifiedStructFormat=function(t){return"object"===(0,n.default)(t)&&void 0===t.components&&void 0===t.name},c.prototype.mapStructNameAndType=function(t){var e="tuple";return t.indexOf("[]")>-1&&(e="tuple[]",t=t.slice(0,-2)),{type:e,name:t}},c.prototype.mapStructToCoderFormat=function(t){var e=this,r=[];return Object.keys(t).forEach((function(i){"object"!==(0,n.default)(t[i])?r.push({name:i,type:t[i]}):r.push(Object.assign(e.mapStructNameAndType(i),{components:e.mapStructToCoderFormat(t[i])}))})),r},c.prototype.formatParam=function(t,e){var r=this,n=new RegExp(/^bytes([0-9]*)$/),a=new RegExp(/^bytes([0-9]*)\[\]$/),s=new RegExp(/^(u?int)([0-9]*)$/),u=new RegExp(/^(u?int)([0-9]*)\[\]$/);if(o.isBN(e)||o.isBigNumber(e))return e.toString(10);if(t.match(a)||t.match(u))return e.map((function(e){return r.formatParam(t.replace("[]",""),e)}));var f=t.match(s);if(f){var c=parseInt(f[2]||"256");c/80&&(!e||"0x"===e||"0X"===e))throw new Error("Returned values aren't valid, did it run Out of Gas? You might also see this error if you are not using the correct ABI for the contract you are retrieving data from, requesting data from a block number that does not exist, or querying a node which is not fully synced.");var i=u.decode(this.mapTypes(t),"0x"+e.replace(/0x/i,""),r),o=new f;return o.__length__=0,t.forEach((function(t,e){var r=i[o.__length__];r="0x"===r?null:r,o[e]=r,("function"==typeof t||t&&"object"===(0,n.default)(t))&&t.name&&(o[t.name]=r),o.__length__++})),o},c.prototype.decodeLog=function(t,e,r){var n=this;r=Array.isArray(r)?r:[r],e=e||"";var i=[],o=[],a=0;t.forEach((function(t,e){t.indexed?(o[e]=["bool","int","uint","address","fixed","ufixed"].find((function(e){return-1!==t.type.indexOf(e)}))?n.decodeParameter(t.type,r[a]):r[a],a++):i[e]=t}));var s=e,u=s?this.decodeParametersWith(i,s,!0):[],c=new f;return c.__length__=0,t.forEach((function(t,e){c[e]="string"===t.type?"":null,void 0!==u[e]&&(c[e]=u[e]),void 0!==o[e]&&(c[e]=o[e]),t.name&&(c[t.name]=c[e]),c.__length__++})),c};var h=new c;t.exports=h},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ConstructorFragment",{enumerable:!0,get:function(){return n.ConstructorFragment}}),Object.defineProperty(e,"EventFragment",{enumerable:!0,get:function(){return n.EventFragment}}),Object.defineProperty(e,"FormatTypes",{enumerable:!0,get:function(){return n.FormatTypes}}),Object.defineProperty(e,"Fragment",{enumerable:!0,get:function(){return n.Fragment}}),Object.defineProperty(e,"FunctionFragment",{enumerable:!0,get:function(){return n.FunctionFragment}}),Object.defineProperty(e,"ParamType",{enumerable:!0,get:function(){return n.ParamType}}),Object.defineProperty(e,"AbiCoder",{enumerable:!0,get:function(){return i.AbiCoder}}),Object.defineProperty(e,"defaultAbiCoder",{enumerable:!0,get:function(){return i.defaultAbiCoder}}),Object.defineProperty(e,"checkResultErrors",{enumerable:!0,get:function(){return o.checkResultErrors}}),Object.defineProperty(e,"Indexed",{enumerable:!0,get:function(){return o.Indexed}}),Object.defineProperty(e,"Interface",{enumerable:!0,get:function(){return o.Interface}}),Object.defineProperty(e,"LogDescription",{enumerable:!0,get:function(){return o.LogDescription}}),Object.defineProperty(e,"TransactionDescription",{enumerable:!0,get:function(){return o.TransactionDescription}});var n=r(80),i=r(138),o=r(296)},function(t,e,r){"use strict";function n(e,r){return t.exports=n=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},t.exports.default=t.exports,t.exports.__esModule=!0,n(e,r)}t.exports=n,t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.defaultAbiCoder=e.AbiCoder=void 0;var i=n(r(5)),o=n(r(9)),a=r(11),s=r(33),u=r(12),f=r(50),c=r(20),h=r(284),l=r(139),d=r(286),p=r(140),m=r(288),b=r(289),v=r(290),y=r(291),g=r(295),w=r(80),_=new u.Logger(f.version),k=new RegExp(/^bytes([0-9]*)$/),M=new RegExp(/^(u?int)([0-9]*)$/),S=function(){function t(e){(0,i.default)(this,t),_.checkNew(this instanceof t?this.constructor:void 0,t),(0,s.defineReadOnly)(this,"coerceFunc",e||null)}return(0,o.default)(t,[{key:"_getCoder",value:function(t){var e=this;switch(t.baseType){case"address":return new h.AddressCoder(t.name);case"bool":return new d.BooleanCoder(t.name);case"string":return new y.StringCoder(t.name);case"bytes":return new p.BytesCoder(t.name);case"array":return new l.ArrayCoder(this._getCoder(t.arrayChildren),t.arrayLength,t.name);case"tuple":return new g.TupleCoder((t.components||[]).map((function(t){return e._getCoder(t)})),t.name);case"":return new b.NullCoder(t.name)}var r=t.type.match(M);if(r){var n=parseInt(r[2]||"256");return(0===n||n>256||n%8!=0)&&_.throwArgumentError("invalid "+r[1]+" bit length","param",t),new v.NumberCoder(n/8,"int"===r[1],t.name)}if(r=t.type.match(k)){var i=parseInt(r[1]);return(0===i||i>32)&&_.throwArgumentError("invalid bytes length","param",t),new m.FixedBytesCoder(i,t.name)}return _.throwArgumentError("invalid type","type",t.type)}},{key:"_getWordSize",value:function(){return 32}},{key:"_getReader",value:function(t,e){return new c.Reader(t,this._getWordSize(),this.coerceFunc,e)}},{key:"_getWriter",value:function(){return new c.Writer(this._getWordSize())}},{key:"encode",value:function(t,e){var r=this;t.length!==e.length&&_.throwError("types/values length mismatch",u.Logger.errors.INVALID_ARGUMENT,{count:{types:t.length,values:e.length},value:{types:t,values:e}});var n=t.map((function(t){return r._getCoder(w.ParamType.from(t))})),i=new g.TupleCoder(n,"_"),o=this._getWriter();return i.encode(o,e),o.data}},{key:"decode",value:function(t,e,r){var n=this,i=t.map((function(t){return n._getCoder(w.ParamType.from(t))}));return new g.TupleCoder(i,"_").decode(this._getReader((0,a.arrayify)(e),r))}}]),t}();e.AbiCoder=S;var A=new S;e.defaultAbiCoder=A},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.pack=b,e.unpack=v,e.ArrayCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13)),f=n(r(2)),c=r(12),h=r(50),l=r(20),d=r(285);function p(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var m=new c.Logger(h.version);function b(t,e,r){var n=null;if(Array.isArray(r))n=r;else if(r&&"object"===(0,f.default)(r)){var i={};n=e.map((function(t){var e=t.localName;return e||m.throwError("cannot encode object for signature with missing names",c.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:t,value:r}),i[e]&&m.throwError("cannot encode object for signature with duplicate names",c.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:t,value:r}),i[e]=!0,r[e]}))}else m.throwArgumentError("invalid tuple value","tuple",r);e.length!==n.length&&m.throwArgumentError("types/value length mismatch","tuple",r);var o=new l.Writer(t.wordSize),a=new l.Writer(t.wordSize),s=[];e.forEach((function(t,e){var r=n[e];if(t.dynamic){var i=a.length;t.encode(a,r);var u=o.writeUpdatableValue();s.push((function(t){u(t+i)}))}else t.encode(o,r)})),s.forEach((function(t){t(o.length)}));var u=t.appendWriter(o);return u+=t.appendWriter(a)}function v(t,e){var r=[],n=t.subReader(0);e.forEach((function(e){var i=null;if(e.dynamic){var o=t.readValue(),a=n.subReader(o.toNumber());try{i=e.decode(a)}catch(t){if(t.code===c.Logger.errors.BUFFER_OVERRUN)throw t;(i=t).baseType=e.name,i.name=e.localName,i.type=e.type}}else try{i=e.decode(t)}catch(t){if(t.code===c.Logger.errors.BUFFER_OVERRUN)throw t;(i=t).baseType=e.name,i.name=e.localName,i.type=e.type}null!=i&&r.push(i)}));var i=e.reduce((function(t,e){var r=e.localName;return r&&(t[r]||(t[r]=0),t[r]++),t}),{});e.forEach((function(t,e){var n=t.localName;if(n&&1===i[n]&&("length"===n&&(n="_length"),null==r[n])){var o=r[e];o instanceof Error?Object.defineProperty(r,n,{get:function(){throw o}}):r[n]=o}}));for(var o=function(t){var e=r[t];e instanceof Error&&Object.defineProperty(r,t,{get:function(){throw e}})},a=0;a=0?n:"")+"]",u=-1===n||t.dynamic;return(a=e.call(this,"array",s,o,u)).coder=t,a.length=n,a}return(0,o.default)(r,[{key:"encode",value:function(t,e){Array.isArray(e)||this._throwError("expected array value",e);var r=this.length;-1===r&&(r=e.length,t.writeValue(e.length)),m.checkArgumentCount(e.length,r,"coder array"+(this.localName?" "+this.localName:""));for(var n=[],i=0;i=0;i--){var s=n(a[i]);r=n(new t(r+s,"hex"))}}return"0x"+r},e.normalize=o}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(e){var n=r(51);function i(t){return parseInt(t.toString("hex"),16)}function o(t){var r=t.toString(16);return r.length%2==1&&(r="0"+r),e.from(r,"hex")}t.exports={numberToBuffer:o,bufferToNumber:i,varintBufferEncode:function(t){return e.from(n.encode(i(t)))},varintBufferDecode:function(t){return o(n.decode(t))},varintEncode:function(t){return e.from(n.encode(t))}}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n=r(0),i=n(r(5)),o=n(r(9)),a=r(1).Buffer,s=r(82),u=r(325),f=r(331),c=r(52),h=r(336),l=r(337)(function(){function t(e,r,n,o){if((0,i.default)(this,t),l.isCID(e)){var c=e;return this.version=c.version,this.codec=c.codec,this.multihash=a.from(c.multihash),void(this.multibaseName=c.multibaseName||(0===c.version?"base58btc":"base32"))}if("string"==typeof e){var h=u.isEncoded(e);if(h){var d=u.decode(e);this.version=parseInt(d.slice(0,1).toString("hex"),16),this.codec=f.getCodec(d.slice(1)),this.multihash=f.rmPrefix(d.slice(1)),this.multibaseName=h}else this.version=0,this.codec="dag-pb",this.multihash=s.fromB58String(e),this.multibaseName="base58btc";return t.validateCID(this),void Object.defineProperty(this,"string",{value:e})}if(a.isBuffer(e)){var p=e.slice(0,1),m=parseInt(p.toString("hex"),16);if(1===m){var b=e;this.version=m,this.codec=f.getCodec(b.slice(1)),this.multihash=f.rmPrefix(b.slice(1)),this.multibaseName="base32"}else this.version=0,this.codec="dag-pb",this.multihash=e,this.multibaseName="base58btc";t.validateCID(this)}else this.version=e,this.codec=r,this.multihash=n,this.multibaseName=o||(0===e?"base58btc":"base32"),t.validateCID(this)}return(0,o.default)(t,[{key:"buffer",get:function(){var t=this._buffer;if(!t){if(0===this.version)t=this.multihash;else{if(1!==this.version)throw new Error("unsupported version");t=a.concat([a.from("01","hex"),f.getCodeVarint(this.codec),this.multihash])}Object.defineProperty(this,"_buffer",{value:t})}return t}},{key:"prefix",get:function(){return a.concat([a.from("0".concat(this.version),"hex"),f.getCodeVarint(this.codec),s.prefix(this.multihash)])}},{key:"toV0",value:function(){if("dag-pb"!==this.codec)throw new Error("Cannot convert a non dag-pb CID to CIDv0");var t=s.decode(this.multihash),e=t.name,r=t.length;if("sha2-256"!==e)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");if(32!==r)throw new Error("Cannot convert non 32 byte multihash CID to CIDv0");return new l(0,this.codec,this.multihash)}},{key:"toV1",value:function(){return new l(1,this.codec,this.multihash)}},{key:"toBaseEncodedString",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.multibaseName;if(this.string&&t===this.multibaseName)return this.string;var e=null;if(0===this.version){if("base58btc"!==t)throw new Error("not supported with CIDv0, to support different bases, please migrate the instance do CIDv1, you can do that through cid.toV1()");e=s.toB58String(this.multihash)}else{if(1!==this.version)throw new Error("unsupported version");e=u.encode(t,this.buffer).toString()}return t===this.multibaseName&&Object.defineProperty(this,"string",{value:e}),e}},{key:Symbol.for("nodejs.util.inspect.custom"),value:function(){return"CID("+this.toString()+")"}},{key:"toString",value:function(t){return this.toBaseEncodedString(t)}},{key:"toJSON",value:function(){return{codec:this.codec,version:this.version,hash:this.multihash}}},{key:"equals",value:function(t){return this.codec===t.codec&&this.version===t.version&&this.multihash.equals(t.multihash)}}],[{key:"validateCID",value:function(t){var e=h.checkCIDComponents(t);if(e)throw new Error(e)}}]),t}(),{className:"CID",symbolName:"@ipld/js-cid/CID"});l.codecs=c,t.exports=l},function(t,e,r){"use strict";var n=r(4).Buffer;t.exports=function(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r>>0,c=new Uint8Array(a);t[r];){var h=e[t.charCodeAt(r)];if(255===h)return;for(var l=0,d=a-1;(0!==h||l>>0,c[d]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");o=l,r++}if(" "!==t[r]){for(var p=a-o;p!==a&&0===c[p];)p++;var m=n.allocUnsafe(i+(a-p));m.fill(0,0,i);for(var b=i;p!==a;)m[b++]=c[p++];return m}}}return{encode:function(e){if((Array.isArray(e)||e instanceof Uint8Array)&&(e=n.from(e)),!n.isBuffer(e))throw new TypeError("Expected Buffer");if(0===e.length)return"";for(var r=0,i=0,o=0,a=e.length;o!==a&&0===e[o];)o++,r++;for(var f=(a-o)*c+1>>>0,h=new Uint8Array(f);o!==a;){for(var l=e[o],d=0,p=f-1;(0!==l||d>>0,h[p]=l%s>>>0,l=l/s>>>0;if(0!==l)throw new Error("Non-zero carry");i=d,o++}for(var m=f-i;m!==f&&0===h[m];)m++;for(var b=u.repeat(r);m>6|192);else{if(i>55295&&i<56320){if(++n==t.length)return null;var o=t.charCodeAt(n);if(o<56320||o>57343)return null;r+=e((i=65536+((1023&i)<<10)+(1023&o))>>18|240),r+=e(i>>12&63|128)}else r+=e(i>>12|224);r+=e(i>>6&63|128)}r+=e(63&i|128)}}return r},toString:function(t){for(var e="",r=0,o=i(t);r127){if(a>191&&a<224){if(r>=o)return null;a=(31&a)<<6|63&n(t,r)}else if(a>223&&a<240){if(r+1>=o)return null;a=(15&a)<<12|(63&n(t,r))<<6|63&n(t,++r)}else{if(!(a>239&&a<248))return null;if(r+2>=o)return null;a=(7&a)<<18|(63&n(t,r))<<12|(63&n(t,++r))<<6|63&n(t,++r)}++r}if(a<=65535)e+=String.fromCharCode(a);else{if(!(a<=1114111))return null;a-=65536,e+=String.fromCharCode(a>>10|55296),e+=String.fromCharCode(1023&a|56320)}}return e},fromNumber:function(t){var e=t.toString(16);return e.length%2==0?"0x"+e:"0x0"+e},toNumber:function(t){return parseInt(t.slice(2),16)},fromNat:function(t){return"0x0"===t?"0x":t.length%2==0?t:"0x0"+t.slice(2)},toNat:function(t){return"0"===t[2]?"0x"+t.slice(3):t},fromArray:a,toArray:o,fromUint8Array:function(t){return a([].slice.call(t,0))},toUint8Array:function(t){return new Uint8Array(o(t))}}},function(t,e,r){"use strict";var n=r(348).Buffer,i=r(349).Transform;function o(t){i.call(this),this._block=n.allocUnsafe(t),this._blockSize=t,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(3)(o,i),o.prototype._transform=function(t,e,r){var n=null;try{this.update(t,e)}catch(t){n=t}r(n)},o.prototype._flush=function(t){var e=null;try{this.push(this.digest())}catch(t){e=t}t(e)},o.prototype.update=function(t,e){if(function(t,e){if(!n.isBuffer(t)&&"string"!=typeof t)throw new TypeError(e+" must be a string or a buffer")}(t,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(t)||(t=n.from(t,e));for(var r=this._block,i=0;this._blockOffset+t.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(t){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var e=this._digest();void 0!==t&&(e=e.toString(t)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return e},o.prototype._digest=function(){throw new Error("_digest is not implemented")},t.exports=o},function(t,e,r){"use strict";(function(e,n){var i;t.exports=A,A.ReadableState=S;r(23).EventEmitter;var o=function(t,e){return t.listeners(e).length},a=r(153),s=r(1).Buffer,u=e.Uint8Array||function(){};var f,c=r(350);f=c&&c.debuglog?c.debuglog("stream"):function(){};var h,l,d,p=r(351),m=r(154),b=r(155).getHighWaterMark,v=r(37).codes,y=v.ERR_INVALID_ARG_TYPE,g=v.ERR_STREAM_PUSH_AFTER_EOF,w=v.ERR_METHOD_NOT_IMPLEMENTED,_=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(3)(A,a);var k=m.errorOrDestroy,M=["error","close","destroy","pause","resume"];function S(t,e,n){i=i||r(38),t=t||{},"boolean"!=typeof n&&(n=e instanceof i),this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=b(this,t,"readableHighWaterMark",n),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==t.emitClose,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(h||(h=r(29).StringDecoder),this.decoder=new h(t.encoding),this.encoding=t.encoding)}function A(t){if(i=i||r(38),!(this instanceof A))return new A(t);var e=this instanceof i;this._readableState=new S(t,this,e),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),a.call(this)}function x(t,e,r,n,i){f("readableAddChunk",e);var o,a=t._readableState;if(null===e)a.reading=!1,function(t,e){if(f("onEofChunk"),e.ended)return;if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?P(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,B(t)))}(t,a);else if(i||(o=function(t,e){var r;n=e,s.isBuffer(n)||n instanceof u||"string"==typeof e||void 0===e||t.objectMode||(r=new y("chunk",["string","Buffer","Uint8Array"],e));var n;return r}(a,e)),o)k(t,o);else if(a.objectMode||e&&e.length>0)if("string"==typeof e||a.objectMode||Object.getPrototypeOf(e)===s.prototype||(e=function(t){return s.from(t)}(e)),n)a.endEmitted?k(t,new _):E(t,a,e,!0);else if(a.ended)k(t,new g);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(e=a.decoder.write(e),a.objectMode||0!==e.length?E(t,a,e,!1):T(t,a)):E(t,a,e,!1)}else n||(a.reading=!1,T(t,a));return!a.ended&&(a.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=1073741824?t=1073741824:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;f("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(f("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(B,t))}function B(t){var e=t._readableState;f("emitReadable_",e.destroyed,e.length,e.ended),e.destroyed||!e.length&&!e.ended||(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,j(t)}function T(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(R,t,e))}function R(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function C(t){f("readable nexttick read 0"),t.read(0)}function U(t,e){f("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),j(t),e.flowing&&!e.reading&&t.read(0)}function j(t){var e=t._readableState;for(f("flow",e.flowing);e.flowing&&null!==t.read(););}function N(t,e){return 0===e.length?null:(e.objectMode?r=e.buffer.shift():!t||t>=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r);var r}function L(t){var e=t._readableState;f("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(F,e,t))}function F(t,e){if(f("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}function D(t,e){for(var r=0,n=t.length;r=e.highWaterMark:e.length>0)||e.ended))return f("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?L(this):P(this),null;if(0===(t=O(t,e))&&e.ended)return 0===e.length&&L(this),null;var n,i=e.needReadable;return f("need readable",i),(0===e.length||e.length-t0?N(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&L(this)),null!==n&&this.emit("data",n),n},A.prototype._read=function(t){k(this,new w("_read()"))},A.prototype.pipe=function(t,e){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=t;break;case 1:i.pipes=[i.pipes,t];break;default:i.pipes.push(t)}i.pipesCount+=1,f("pipe count=%d opts=%j",i.pipesCount,e);var a=(!e||!1!==e.end)&&t!==n.stdout&&t!==n.stderr?u:b;function s(e,n){f("onunpipe"),e===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,f("cleanup"),t.removeListener("close",p),t.removeListener("finish",m),t.removeListener("drain",c),t.removeListener("error",d),t.removeListener("unpipe",s),r.removeListener("end",u),r.removeListener("end",b),r.removeListener("data",l),h=!0,!i.awaitDrain||t._writableState&&!t._writableState.needDrain||c())}function u(){f("onend"),t.end()}i.endEmitted?n.nextTick(a):r.once("end",a),t.on("unpipe",s);var c=function(t){return function(){var e=t._readableState;f("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o(t,"data")&&(e.flowing=!0,j(t))}}(r);t.on("drain",c);var h=!1;function l(e){f("ondata");var n=t.write(e);f("dest.write",n),!1===n&&((1===i.pipesCount&&i.pipes===t||i.pipesCount>1&&-1!==D(i.pipes,t))&&!h&&(f("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function d(e){f("onerror",e),b(),t.removeListener("error",d),0===o(t,"error")&&k(t,e)}function p(){t.removeListener("finish",m),b()}function m(){f("onfinish"),t.removeListener("close",p),b()}function b(){f("unpipe"),r.unpipe(t)}return r.on("data",l),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",d),t.once("close",p),t.once("finish",m),t.emit("pipe",r),i.flowing||(f("pipe resume"),r.resume()),t},A.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o0,!1!==i.flowing&&this.resume()):"readable"===t&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,f("on readable",i.length,i.reading),i.length?P(this):i.reading||n.nextTick(C,this))),r},A.prototype.addListener=A.prototype.on,A.prototype.removeListener=function(t,e){var r=a.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(I,this),r},A.prototype.removeAllListeners=function(t){var e=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==t&&void 0!==t||n.nextTick(I,this),e},A.prototype.resume=function(){var t=this._readableState;return t.flowing||(f("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(U,t,e))}(this,t)),t.paused=!1,this},A.prototype.pause=function(){return f("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(f("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},A.prototype.wrap=function(t){var e=this,r=this._readableState,n=!1;for(var i in t.on("end",(function(){if(f("wrapped end"),r.decoder&&!r.ended){var t=r.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(i){(f("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(e.push(i)||(n=!0,t.pause()))})),t)void 0===this[i]&&"function"==typeof t[i]&&(this[i]=function(e){return function(){return t[e].apply(t,arguments)}}(i));for(var o=0;o-1))throw new _(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(A.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(A.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),A.prototype._write=function(t,e,r){r(new m("_write()"))},A.prototype._writev=null,A.prototype.end=function(t,e,r){var i=this._writableState;return"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),i.corked&&(i.corked=1,this.uncork()),i.ending||function(t,e,r){e.ending=!0,T(t,e),r&&(e.finished?n.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,i,r),this},Object.defineProperty(A.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(A.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),A.prototype.destroy=h.destroy,A.prototype._undestroy=h.undestroy,A.prototype._destroy=function(t,e){e(t)}}).call(this,r(7),r(6))},function(t,e,r){"use strict";t.exports=c;var n=r(37).codes,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,a=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,u=r(38);function f(t,e){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=e&&this.push(e),n(t);var i=this._readableState;i.reading=!1,(i.needReadable||i.length>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10)}function l(t){return(t>>>6|t<<26)^(t>>>11|t<<21)^(t>>>25|t<<7)}function d(t){return(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3}n(u,i),u.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},u.prototype._update=function(t){for(var e,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,p=0|this._f,m=0|this._g,b=0|this._h,v=0;v<16;++v)r[v]=t.readInt32BE(4*v);for(;v<64;++v)r[v]=0|(((e=r[v-2])>>>17|e<<15)^(e>>>19|e<<13)^e>>>10)+r[v-7]+d(r[v-15])+r[v-16];for(var y=0;y<64;++y){var g=b+l(u)+f(u,p,m)+a[y]+r[y]|0,w=h(n)+c(n,i,o)|0;b=m,m=p,p=u,u=s+g|0,s=o,o=i,i=n,n=g+w|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=b+this._h|0},u.prototype._hash=function(){var t=o.allocUnsafe(32);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t.writeInt32BE(this._h,28),t},t.exports=u},function(t,e,r){"use strict";var n=r(3),i=r(39),o=r(4).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function u(){this.init(),this._w=s,i.call(this,128,112)}function f(t,e,r){return r^t&(e^r)}function c(t,e,r){return t&e|r&(t|e)}function h(t,e){return(t>>>28|e<<4)^(e>>>2|t<<30)^(e>>>7|t<<25)}function l(t,e){return(t>>>14|e<<18)^(t>>>18|e<<14)^(e>>>9|t<<23)}function d(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^t>>>7}function p(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^(t>>>7|e<<25)}function m(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^t>>>6}function b(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^(t>>>6|e<<26)}function v(t,e){return t>>>0>>0?1:0}n(u,i),u.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},u.prototype._update=function(t){for(var e=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,u=0|this._fh,y=0|this._gh,g=0|this._hh,w=0|this._al,_=0|this._bl,k=0|this._cl,M=0|this._dl,S=0|this._el,A=0|this._fl,x=0|this._gl,E=0|this._hl,O=0;O<32;O+=2)e[O]=t.readInt32BE(4*O),e[O+1]=t.readInt32BE(4*O+4);for(;O<160;O+=2){var P=e[O-30],B=e[O-30+1],T=d(P,B),R=p(B,P),I=m(P=e[O-4],B=e[O-4+1]),C=b(B,P),U=e[O-14],j=e[O-14+1],N=e[O-32],L=e[O-32+1],F=R+j|0,D=T+U+v(F,R)|0;D=(D=D+I+v(F=F+C|0,C)|0)+N+v(F=F+L|0,L)|0,e[O]=D,e[O+1]=F}for(var q=0;q<160;q+=2){D=e[q],F=e[q+1];var H=c(r,n,i),z=c(w,_,k),K=h(r,w),G=h(w,r),V=l(s,S),W=l(S,s),Z=a[q],J=a[q+1],X=f(s,u,y),Y=f(S,A,x),$=E+W|0,Q=g+V+v($,E)|0;Q=(Q=(Q=Q+X+v($=$+Y|0,Y)|0)+Z+v($=$+J|0,J)|0)+D+v($=$+F|0,F)|0;var tt=G+z|0,et=K+H+v(tt,G)|0;g=y,E=x,y=u,x=A,u=s,A=S,s=o+Q+v(S=M+$|0,M)|0,o=i,M=k,i=n,k=_,n=r,_=w,r=Q+et+v(w=$+tt|0,$)|0}this._al=this._al+w|0,this._bl=this._bl+_|0,this._cl=this._cl+k|0,this._dl=this._dl+M|0,this._el=this._el+S|0,this._fl=this._fl+A|0,this._gl=this._gl+x|0,this._hl=this._hl+E|0,this._ah=this._ah+r+v(this._al,w)|0,this._bh=this._bh+n+v(this._bl,_)|0,this._ch=this._ch+i+v(this._cl,k)|0,this._dh=this._dh+o+v(this._dl,M)|0,this._eh=this._eh+s+v(this._el,S)|0,this._fh=this._fh+u+v(this._fl,A)|0,this._gh=this._gh+y+v(this._gl,x)|0,this._hh=this._hh+g+v(this._hl,E)|0},u.prototype._hash=function(){var t=o.allocUnsafe(64);function e(e,r,n){t.writeInt32BE(e,n),t.writeInt32BE(r,n+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),t},t.exports=u},function(t,e,r){"use strict";var n=r(3),i=r(365),o=r(25),a=r(4).Buffer,s=r(161),u=r(85),f=r(86),c=a.alloc(128);function h(t,e){o.call(this,"digest"),"string"==typeof e&&(e=a.from(e));var r="sha512"===t||"sha384"===t?128:64;(this._alg=t,this._key=e,e.length>r)?e=("rmd160"===t?new u:f(t)).update(e).digest():e.lengthn||e!=e)throw new TypeError("Bad key length")}},function(t,e,r){"use strict";(function(e,r){var n;if(e.process&&e.process.browser)n="utf-8";else if(e.process&&e.process.version){n=parseInt(r.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else n="utf-8";t.exports=n}).call(this,r(7),r(6))},function(t,e,r){"use strict";var n=r(161),i=r(85),o=r(86),a=r(4).Buffer,s=r(164),u=r(165),f=r(167),c=a.alloc(128),h={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function l(t,e,r){var s=function(t){function e(e){return o(t).update(e).digest()}return"rmd160"===t||"ripemd160"===t?function(t){return(new i).update(t).digest()}:"md5"===t?n:e}(t),u="sha512"===t||"sha384"===t?128:64;e.length>u?e=s(e):e.length>>0},e.writeUInt32BE=function(t,e,r){t[0+r]=e>>>24,t[1+r]=e>>>16&255,t[2+r]=e>>>8&255,t[3+r]=255&e},e.ip=function(t,e,r,n){for(var i=0,o=0,a=6;a>=0;a-=2){for(var s=0;s<=24;s+=8)i<<=1,i|=e>>>s+a&1;for(s=0;s<=24;s+=8)i<<=1,i|=t>>>s+a&1}for(a=6;a>=0;a-=2){for(s=1;s<=25;s+=8)o<<=1,o|=e>>>s+a&1;for(s=1;s<=25;s+=8)o<<=1,o|=t>>>s+a&1}r[n+0]=i>>>0,r[n+1]=o>>>0},e.rip=function(t,e,r,n){for(var i=0,o=0,a=0;a<4;a++)for(var s=24;s>=0;s-=8)i<<=1,i|=e>>>s+a&1,i<<=1,i|=t>>>s+a&1;for(a=4;a<8;a++)for(s=24;s>=0;s-=8)o<<=1,o|=e>>>s+a&1,o<<=1,o|=t>>>s+a&1;r[n+0]=i>>>0,r[n+1]=o>>>0},e.pc1=function(t,e,r,n){for(var i=0,o=0,a=7;a>=5;a--){for(var s=0;s<=24;s+=8)i<<=1,i|=e>>s+a&1;for(s=0;s<=24;s+=8)i<<=1,i|=t>>s+a&1}for(s=0;s<=24;s+=8)i<<=1,i|=e>>s+a&1;for(a=1;a<=3;a++){for(s=0;s<=24;s+=8)o<<=1,o|=e>>s+a&1;for(s=0;s<=24;s+=8)o<<=1,o|=t>>s+a&1}for(s=0;s<=24;s+=8)o<<=1,o|=t>>s+a&1;r[n+0]=i>>>0,r[n+1]=o>>>0},e.r28shl=function(t,e){return t<>>28-e};var n=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];e.pc2=function(t,e,r,i){for(var o=0,a=0,s=n.length>>>1,u=0;u>>n[u]&1;for(u=s;u>>n[u]&1;r[i+0]=o>>>0,r[i+1]=a>>>0},e.expand=function(t,e,r){var n=0,i=0;n=(1&t)<<5|t>>>27;for(var o=23;o>=15;o-=4)n<<=6,n|=t>>>o&63;for(o=11;o>=3;o-=4)i|=t>>>o&63,i<<=6;i|=(31&t)<<1|t>>>31,e[r+0]=n>>>0,e[r+1]=i>>>0};var i=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];e.substitute=function(t,e){for(var r=0,n=0;n<4;n++){r<<=4,r|=i[64*n+(t>>>18-6*n&63)]}for(n=0;n<4;n++){r<<=4,r|=i[256+64*n+(e>>>18-6*n&63)]}return r>>>0};var o=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];e.permute=function(t){for(var e=0,r=0;r>>o[r]&1;return e>>>0},e.padSplit=function(t,e,r){for(var n=t.toString(2);n.length>>1];r=o.r28shl(r,s),i=o.r28shl(i,s),o.pc2(r,i,t.keys,a)}},u.prototype._update=function(t,e,r,n){var i=this._desState,a=o.readUInt32BE(t,e),s=o.readUInt32BE(t,e+4);o.ip(a,s,i.tmp,0),a=i.tmp[0],s=i.tmp[1],"encrypt"===this.type?this._encrypt(i,a,s,i.tmp,0):this._decrypt(i,a,s,i.tmp,0),a=i.tmp[0],s=i.tmp[1],o.writeUInt32BE(r,a,n),o.writeUInt32BE(r,s,n+4)},u.prototype._pad=function(t,e){for(var r=t.length-e,n=e;n>>0,a=l}o.rip(s,a,n,i)},u.prototype._decrypt=function(t,e,r,n,i){for(var a=r,s=e,u=t.keys.length-2;u>=0;u-=2){var f=t.keys[u],c=t.keys[u+1];o.expand(a,t.tmp,0),f^=t.tmp[0],c^=t.tmp[1];var h=o.substitute(f,c),l=a;a=(s^o.permute(h))>>>0,s=l}o.rip(a,s,n,i)}},function(t,e,r){"use strict";var n=r(53),i=r(4).Buffer,o=r(171);function a(t){var e=t._cipher.encryptBlockRaw(t._prev);return o(t._prev),e}e.encrypt=function(t,e){var r=Math.ceil(e.length/16),o=t._cache.length;t._cache=i.concat([t._cache,i.allocUnsafe(16*r)]);for(var s=0;st;)r.ishrn(1);if(r.isEven()&&r.iadd(s),r.testn(1)||r.iadd(u),e.cmp(u)){if(!e.cmp(f))for(;r.mod(c).cmp(h);)r.iadd(d)}else for(;r.mod(o).cmp(l);)r.iadd(d);if(b(p=r.shrn(1))&&b(r)&&v(p)&&v(r)&&a.test(p)&&a.test(r))return r}}},function(t,e,r){"use strict";var n=r(8),i=r(91);function o(t){this.rand=t||new i.Rand}t.exports=o,o.create=function(t){return new o(t)},o.prototype._randbelow=function(t){var e=t.bitLength(),r=Math.ceil(e/8);do{var i=new n(this.rand.generate(r))}while(i.cmp(t)>=0);return i},o.prototype._randrange=function(t,e){var r=e.sub(t);return t.add(this._randbelow(r))},o.prototype.test=function(t,e,r){var i=t.bitLength(),o=n.mont(t),a=new n(1).toRed(o);e||(e=Math.max(1,i/48|0));for(var s=t.subn(1),u=0;!s.testn(u);u++);for(var f=t.shrn(u),c=s.toRed(o);e>0;e--){var h=this._randrange(new n(2),s);r&&r(h);var l=h.toRed(o).redPow(f);if(0!==l.cmp(a)&&0!==l.cmp(c)){for(var d=1;d0;e--){var c=this._randrange(new n(2),a),h=t.gcd(c);if(0!==h.cmpn(1))return h;var l=c.toRed(i).redPow(u);if(0!==l.cmp(o)&&0!==l.cmp(f)){for(var d=1;d0)if("string"==typeof e||a.objectMode||Object.getPrototypeOf(e)===s.prototype||(e=function(t){return s.from(t)}(e)),n)a.endEmitted?k(t,new _):E(t,a,e,!0);else if(a.ended)k(t,new g);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(e=a.decoder.write(e),a.objectMode||0!==e.length?E(t,a,e,!1):T(t,a)):E(t,a,e,!1)}else n||(a.reading=!1,T(t,a));return!a.ended&&(a.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=1073741824?t=1073741824:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;f("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(f("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(B,t))}function B(t){var e=t._readableState;f("emitReadable_",e.destroyed,e.length,e.ended),e.destroyed||!e.length&&!e.ended||(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,j(t)}function T(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(R,t,e))}function R(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function C(t){f("readable nexttick read 0"),t.read(0)}function U(t,e){f("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),j(t),e.flowing&&!e.reading&&t.read(0)}function j(t){var e=t._readableState;for(f("flow",e.flowing);e.flowing&&null!==t.read(););}function N(t,e){return 0===e.length?null:(e.objectMode?r=e.buffer.shift():!t||t>=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r);var r}function L(t){var e=t._readableState;f("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(F,e,t))}function F(t,e){if(f("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}function D(t,e){for(var r=0,n=t.length;r=e.highWaterMark:e.length>0)||e.ended))return f("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?L(this):P(this),null;if(0===(t=O(t,e))&&e.ended)return 0===e.length&&L(this),null;var n,i=e.needReadable;return f("need readable",i),(0===e.length||e.length-t0?N(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&L(this)),null!==n&&this.emit("data",n),n},A.prototype._read=function(t){k(this,new w("_read()"))},A.prototype.pipe=function(t,e){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=t;break;case 1:i.pipes=[i.pipes,t];break;default:i.pipes.push(t)}i.pipesCount+=1,f("pipe count=%d opts=%j",i.pipesCount,e);var a=(!e||!1!==e.end)&&t!==n.stdout&&t!==n.stderr?u:b;function s(e,n){f("onunpipe"),e===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,f("cleanup"),t.removeListener("close",p),t.removeListener("finish",m),t.removeListener("drain",c),t.removeListener("error",d),t.removeListener("unpipe",s),r.removeListener("end",u),r.removeListener("end",b),r.removeListener("data",l),h=!0,!i.awaitDrain||t._writableState&&!t._writableState.needDrain||c())}function u(){f("onend"),t.end()}i.endEmitted?n.nextTick(a):r.once("end",a),t.on("unpipe",s);var c=function(t){return function(){var e=t._readableState;f("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o(t,"data")&&(e.flowing=!0,j(t))}}(r);t.on("drain",c);var h=!1;function l(e){f("ondata");var n=t.write(e);f("dest.write",n),!1===n&&((1===i.pipesCount&&i.pipes===t||i.pipesCount>1&&-1!==D(i.pipes,t))&&!h&&(f("false write response, pause",i.awaitDrain),i.awaitDrain++),r.pause())}function d(e){f("onerror",e),b(),t.removeListener("error",d),0===o(t,"error")&&k(t,e)}function p(){t.removeListener("finish",m),b()}function m(){f("onfinish"),t.removeListener("close",p),b()}function b(){f("unpipe"),r.unpipe(t)}return r.on("data",l),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",d),t.once("close",p),t.once("finish",m),t.emit("pipe",r),i.flowing||(f("pipe resume"),r.resume()),t},A.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o0,!1!==i.flowing&&this.resume()):"readable"===t&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,f("on readable",i.length,i.reading),i.length?P(this):i.reading||n.nextTick(C,this))),r},A.prototype.addListener=A.prototype.on,A.prototype.removeListener=function(t,e){var r=a.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(I,this),r},A.prototype.removeAllListeners=function(t){var e=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==t&&void 0!==t||n.nextTick(I,this),e},A.prototype.resume=function(){var t=this._readableState;return t.flowing||(f("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(U,t,e))}(this,t)),t.paused=!1,this},A.prototype.pause=function(){return f("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(f("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},A.prototype.wrap=function(t){var e=this,r=this._readableState,n=!1;for(var i in t.on("end",(function(){if(f("wrapped end"),r.decoder&&!r.ended){var t=r.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(i){(f("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(e.push(i)||(n=!0,t.pause()))})),t)void 0===this[i]&&"function"==typeof t[i]&&(this[i]=function(e){return function(){return t[e].apply(t,arguments)}}(i));for(var o=0;o-1))throw new _(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(A.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(A.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),A.prototype._write=function(t,e,r){r(new m("_write()"))},A.prototype._writev=null,A.prototype.end=function(t,e,r){var i=this._writableState;return"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),i.corked&&(i.corked=1,this.uncork()),i.ending||function(t,e,r){e.ending=!0,T(t,e),r&&(e.finished?n.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,i,r),this},Object.defineProperty(A.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(A.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),A.prototype.destroy=h.destroy,A.prototype._undestroy=h.undestroy,A.prototype._destroy=function(t,e){e(t)}}).call(this,r(7),r(6))},function(t,e,r){"use strict";t.exports=c;var n=r(40).codes,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,a=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,u=r(41);function f(t,e){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=e&&this.push(e),n(t);var i=this._readableState;i.reading=!1,(i.needReadable||i.length>8,a=255&i;o?r.push(o,a):r.push(a)}return r},n.zero2=i,n.toHex=o,n.encode=function(t,e){return"hex"===e?o(t):t}},function(t,e,r){"use strict";var n=e;n.base=r(67),n.short=r(400),n.mont=r(401),n.edwards=r(402)},function(t,e,r){"use strict";(function(t){var e=r(0)(r(2));!function(t,n){function i(t,e){if(!t)throw new Error(e||"Assertion failed")}function o(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function a(t,e,r){if(a.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(r=e,e=10),this._init(t||0,e||10,r||"be"))}var s;"object"===(0,e.default)(t)?t.exports=a:(void 0).BN=a,a.BN=a,a.wordSize=26;try{s="undefined"!=typeof window&&void 0!==window.Buffer?window.Buffer:r(411).Buffer}catch(t){}function u(t,e){var r=t.charCodeAt(e);return r>=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void i(!1,"Invalid character in "+t)}function f(t,e,r){var n=u(t,r);return r-1>=e&&(n|=u(t,r-1)<<4),n}function c(t,e,r,n){for(var o=0,a=0,s=Math.min(t.length,r),u=e;u=49?f-49+10:f>=17?f-17+10:f,i(f>=0&&a0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,r,n){if("number"==typeof t)return this._initNumber(t,r,n);if("object"===(0,e.default)(t))return this._initArray(t,r,n);"hex"===r&&(r=16),i(r===(0|r)&&r>=2&&r<=36);var o=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(o++,this.negative=1),o=0;n-=3)a=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},a.prototype._parseHex=function(t,e,r){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=2)i=f(t,e,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(t.length-e)%2==0?e+1:e;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,a=o%n,s=Math.min(o,o-a)+r,u=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!=typeof Symbol&&"function"==typeof Symbol.for)try{a.prototype[Symbol.for("nodejs.util.inspect.custom")]=l}catch(t){a.prototype.inspect=l}else a.prototype.inspect=l;function l(){return(this.red?""}var d=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],p=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],m=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var n=0,o=0,a=0;a>>24-n&16777215)||a!==this.length-1?d[6-u.length]+u+r:u+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=p[t],c=m[t];r="";var h=this.clone();for(h.negative=0;!h.isZero();){var l=h.modrn(c).toString(t);r=(h=h.idivn(c)).isZero()?l+r:d[f-l.length]+l+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16,2)},s&&(a.prototype.toBuffer=function(t,e){return this.toArrayLike(s,t,e)}),a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)};function b(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var f=1;f>>26,h=67108863&u,l=Math.min(f,e.length-1),d=Math.max(0,f-t.length+1);d<=l;d++){var p=f-d|0;c+=(a=(i=0|t.words[p])*(o=0|e.words[d])+h)/67108864|0,h=67108863&a}r.words[f]=0|h,u=0|c}return 0!==u?r.words[f]=0|u:r.length--,r._strip()}a.prototype.toArrayLike=function(t,e,r){this._strip();var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0");var a=function(t,e){return t.allocUnsafe?t.allocUnsafe(e):new t(e)}(t,o);return this["_toArrayLike"+("le"===e?"LE":"BE")](a,n),a},a.prototype._toArrayLikeLE=function(t,e){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(t[r--]=a>>8&255),r>=0&&(t[r--]=a>>16&255),6===o?(r>=0&&(t[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(t[r--]=n;r>=0;)t[r--]=0},Math.clz32?a.prototype._countBits=function(t){return 32-Math.clz32(t)}:a.prototype._countBits=function(t){var e=t,r=0;return e>=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){i("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-r),this._strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){i("number"==typeof t&&t>=0);var r=t/26|0,n=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,m=d>>>13,b=0|a[2],v=8191&b,y=b>>>13,g=0|a[3],w=8191&g,_=g>>>13,k=0|a[4],M=8191&k,S=k>>>13,A=0|a[5],x=8191&A,E=A>>>13,O=0|a[6],P=8191&O,B=O>>>13,T=0|a[7],R=8191&T,I=T>>>13,C=0|a[8],U=8191&C,j=C>>>13,N=0|a[9],L=8191&N,F=N>>>13,D=0|s[0],q=8191&D,H=D>>>13,z=0|s[1],K=8191&z,G=z>>>13,V=0|s[2],W=8191&V,Z=V>>>13,J=0|s[3],X=8191&J,Y=J>>>13,$=0|s[4],Q=8191&$,tt=$>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ft=st>>>13,ct=0|s[8],ht=8191&ct,lt=ct>>>13,dt=0|s[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var bt=(f+(n=Math.imul(h,q))|0)+((8191&(i=(i=Math.imul(h,H))+Math.imul(l,q)|0))<<13)|0;f=((o=Math.imul(l,H))+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(p,q),i=(i=Math.imul(p,H))+Math.imul(m,q)|0,o=Math.imul(m,H);var vt=(f+(n=n+Math.imul(h,K)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(l,K)|0))<<13)|0;f=((o=o+Math.imul(l,G)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,q),i=(i=Math.imul(v,H))+Math.imul(y,q)|0,o=Math.imul(y,H),n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,G)|0;var yt=(f+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,W)|0))<<13)|0;f=((o=o+Math.imul(l,Z)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,q),i=(i=Math.imul(w,H))+Math.imul(_,q)|0,o=Math.imul(_,H),n=n+Math.imul(v,K)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,Z)|0;var gt=(f+(n=n+Math.imul(h,X)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(l,X)|0))<<13)|0;f=((o=o+Math.imul(l,Y)|0)+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(M,q),i=(i=Math.imul(M,H))+Math.imul(S,q)|0,o=Math.imul(S,H),n=n+Math.imul(w,K)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(_,K)|0,o=o+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,Z)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var wt=(f+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(l,Q)|0))<<13)|0;f=((o=o+Math.imul(l,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(x,q),i=(i=Math.imul(x,H))+Math.imul(E,q)|0,o=Math.imul(E,H),n=n+Math.imul(M,K)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,K)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,Z)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,Z)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var _t=(f+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(l,rt)|0))<<13)|0;f=((o=o+Math.imul(l,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(P,q),i=(i=Math.imul(P,H))+Math.imul(B,q)|0,o=Math.imul(B,H),n=n+Math.imul(x,K)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(E,K)|0,o=o+Math.imul(E,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Z)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,Z)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var kt=(f+(n=n+Math.imul(h,ot)|0)|0)+((8191&(i=(i=i+Math.imul(h,at)|0)+Math.imul(l,ot)|0))<<13)|0;f=((o=o+Math.imul(l,at)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(R,q),i=(i=Math.imul(R,H))+Math.imul(I,q)|0,o=Math.imul(I,H),n=n+Math.imul(P,K)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(B,K)|0,o=o+Math.imul(B,G)|0,n=n+Math.imul(x,W)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,Z)|0,n=n+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,Y)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var Mt=(f+(n=n+Math.imul(h,ut)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(l,ut)|0))<<13)|0;f=((o=o+Math.imul(l,ft)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(U,q),i=(i=Math.imul(U,H))+Math.imul(j,q)|0,o=Math.imul(j,H),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(B,W)|0,o=o+Math.imul(B,Z)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ft)|0;var St=(f+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,lt)|0)+Math.imul(l,ht)|0))<<13)|0;f=((o=o+Math.imul(l,lt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(L,q),i=(i=Math.imul(L,H))+Math.imul(F,q)|0,o=Math.imul(F,H),n=n+Math.imul(U,K)|0,i=(i=i+Math.imul(U,G)|0)+Math.imul(j,K)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,Z)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(B,X)|0,o=o+Math.imul(B,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,o=o+Math.imul(S,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,at)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ft)|0,n=n+Math.imul(p,ht)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ht)|0,o=o+Math.imul(m,lt)|0;var At=(f+(n=n+Math.imul(h,pt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(l,pt)|0))<<13)|0;f=((o=o+Math.imul(l,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(L,K),i=(i=Math.imul(L,G))+Math.imul(F,K)|0,o=Math.imul(F,G),n=n+Math.imul(U,W)|0,i=(i=i+Math.imul(U,Z)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,Z)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,tt)|0,n=n+Math.imul(x,rt)|0,i=(i=i+Math.imul(x,nt)|0)+Math.imul(E,rt)|0,o=o+Math.imul(E,nt)|0,n=n+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(S,ot)|0,o=o+Math.imul(S,at)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,ft)|0,n=n+Math.imul(v,ht)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ht)|0,o=o+Math.imul(y,lt)|0;var xt=(f+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;f=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(L,W),i=(i=Math.imul(L,Z))+Math.imul(F,W)|0,o=Math.imul(F,Z),n=n+Math.imul(U,X)|0,i=(i=i+Math.imul(U,Y)|0)+Math.imul(j,X)|0,o=o+Math.imul(j,Y)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(B,rt)|0,o=o+Math.imul(B,nt)|0,n=n+Math.imul(x,ot)|0,i=(i=i+Math.imul(x,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,n=n+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ut)|0,o=o+Math.imul(S,ft)|0,n=n+Math.imul(w,ht)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ht)|0,o=o+Math.imul(_,lt)|0;var Et=(f+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;f=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(L,X),i=(i=Math.imul(L,Y))+Math.imul(F,X)|0,o=Math.imul(F,Y),n=n+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,tt)|0,n=n+Math.imul(R,rt)|0,i=(i=i+Math.imul(R,nt)|0)+Math.imul(I,rt)|0,o=o+Math.imul(I,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(B,ot)|0,o=o+Math.imul(B,at)|0,n=n+Math.imul(x,ut)|0,i=(i=i+Math.imul(x,ft)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ft)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,lt)|0)+Math.imul(S,ht)|0,o=o+Math.imul(S,lt)|0;var Ot=(f+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;f=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,tt))+Math.imul(F,Q)|0,o=Math.imul(F,tt),n=n+Math.imul(U,rt)|0,i=(i=i+Math.imul(U,nt)|0)+Math.imul(j,rt)|0,o=o+Math.imul(j,nt)|0,n=n+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(B,ut)|0,o=o+Math.imul(B,ft)|0,n=n+Math.imul(x,ht)|0,i=(i=i+Math.imul(x,lt)|0)+Math.imul(E,ht)|0,o=o+Math.imul(E,lt)|0;var Pt=(f+(n=n+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,pt)|0))<<13)|0;f=((o=o+Math.imul(S,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(L,rt),i=(i=Math.imul(L,nt))+Math.imul(F,rt)|0,o=Math.imul(F,nt),n=n+Math.imul(U,ot)|0,i=(i=i+Math.imul(U,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,n=n+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ft)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ft)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(B,ht)|0,o=o+Math.imul(B,lt)|0;var Bt=(f+(n=n+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,mt)|0)+Math.imul(E,pt)|0))<<13)|0;f=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),n=n+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ft)|0)+Math.imul(j,ut)|0,o=o+Math.imul(j,ft)|0,n=n+Math.imul(R,ht)|0,i=(i=i+Math.imul(R,lt)|0)+Math.imul(I,ht)|0,o=o+Math.imul(I,lt)|0;var Tt=(f+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(B,pt)|0))<<13)|0;f=((o=o+Math.imul(B,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(L,ut),i=(i=Math.imul(L,ft))+Math.imul(F,ut)|0,o=Math.imul(F,ft),n=n+Math.imul(U,ht)|0,i=(i=i+Math.imul(U,lt)|0)+Math.imul(j,ht)|0,o=o+Math.imul(j,lt)|0;var Rt=(f+(n=n+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(I,pt)|0))<<13)|0;f=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(L,ht),i=(i=Math.imul(L,lt))+Math.imul(F,ht)|0,o=Math.imul(F,lt);var It=(f+(n=n+Math.imul(U,pt)|0)|0)+((8191&(i=(i=i+Math.imul(U,mt)|0)+Math.imul(j,pt)|0))<<13)|0;f=((o=o+Math.imul(j,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Ct=(f+(n=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,mt))+Math.imul(F,pt)|0))<<13)|0;return f=((o=Math.imul(F,mt))+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,u[0]=bt,u[1]=vt,u[2]=yt,u[3]=gt,u[4]=wt,u[5]=_t,u[6]=kt,u[7]=Mt,u[8]=St,u[9]=At,u[10]=xt,u[11]=Et,u[12]=Ot,u[13]=Pt,u[14]=Bt,u[15]=Tt,u[16]=Rt,u[17]=It,u[18]=Ct,0!==f&&(u[19]=f,r.length++),r};function y(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function g(t,e,r){return y(t,e,r)}function w(t,e){this.x=t,this.y=e}Math.imul||(v=b),a.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?v(this,t,e):r<63?b(this,t,e):r<1024?y(this,t,e):g(this,t,e)},w.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},w.prototype.permute=function(t,e,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[n]=67108863&a}return 0!==r&&(this.words[n]=r,this.length++),e?this.ineg():this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i&1}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(e=0;e>>26-r}a&&(this.words[e]=a,this.length++)}if(0!==n){for(e=this.length-1;e>=0;e--)this.words[e+n]=this.words[e];for(e=0;e=0),n=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,f=0;f=0&&(0!==c||f>=n);f--){var h=0|this.words[f];this.words[f]=c<<26-o|h>>>o,c=h&s}return u&&0!==c&&(u.words[u.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},a.prototype.ishrn=function(t,e,r){return i(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){i("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,n=1<=0);var e=t%26,r=(t-e)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var n=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(i("number"==typeof t),i(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[n+r]=67108863&o}for(;n>26,this.words[n+r]=67108863&o;if(0===s)return this._strip();for(i(-1===s),s=0,n=0;n>26,this.words[n]=67108863&o;return this.negative=1,this._strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==e){(s=new a(null)).length=u+1,s.words=new Array(s.length);for(var f=0;f=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s._strip(),n._strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return i(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(n=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:n,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modrn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modrn(t.words[0]))}:this._wordDiv(t,e);var n,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modrn=function(t){var e=t<0;e&&(t=-t),i(t<=67108863);for(var r=(1<<26)%t,n=0,o=this.length-1;o>=0;o--)n=(r*n+(0|this.words[o]))%t;return e?-n:n},a.prototype.modn=function(t){return this.modrn(t)},a.prototype.idivn=function(t){var e=t<0;e&&(t=-t),i(t<=67108863);for(var r=0,n=this.length-1;n>=0;n--){var o=(0|this.words[n])+67108864*r;this.words[n]=o/t|0,r=o%t}return this._strip(),e?this.ineg():this},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n=new a(1),o=new a(0),s=new a(0),u=new a(1),f=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++f;for(var c=r.clone(),h=e.clone();!e.isZero();){for(var l=0,d=1;0==(e.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(e.iushrn(l);l-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(c),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,m=1;0==(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(c),u.isub(h)),s.iushrn(1),u.iushrn(1);e.cmp(r)>=0?(e.isub(r),n.isub(s),o.isub(u)):(r.isub(e),s.isub(n),u.isub(o))}return{a:s,b:u,gcd:r.iushln(f)}},a.prototype._invmp=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n,o=new a(1),s=new a(0),u=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var f=0,c=1;0==(e.words[0]&c)&&f<26;++f,c<<=1);if(f>0)for(e.iushrn(f);f-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(n=0===e.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(t),n},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){i("number"==typeof t);var e=t%26,r=(t-e)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)e=1;else{r&&(t=-t),i(t<=67108863,"Number is too big");var n=0|this.words[0];e=n===t?0:nt.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new E(t)},a.prototype.toRed=function(t){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return i(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return i(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var _={k256:null,p224:null,p192:null,p25519:null};function k(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function M(){k.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function S(){k.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function A(){k.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function x(){k.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function E(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else i(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function O(t){E.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}k.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},k.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},k.prototype.split=function(t,e){t.iushrn(this.n,0,e)},k.prototype.imulK=function(t){return t.imul(this.k)},o(M,k),M.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},M.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(_[t])return _[t];var e;if("k256"===t)e=new M;else if("p224"===t)e=new S;else if("p192"===t)e=new A;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new x}return _[t]=e,e},E.prototype._verify1=function(t){i(0===t.negative,"red works only with positives"),i(t.red,"red works only with red numbers")},E.prototype._verify2=function(t,e){i(0==(t.negative|e.negative),"red works only with positives"),i(t.red&&t.red===e.red,"red works only with red numbers")},E.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):(h(t,t.umod(this.m)._forceRed(this)),t)},E.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},E.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},E.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},E.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},E.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},E.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},E.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},E.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},E.prototype.isqr=function(t){return this.imul(t,t.clone())},E.prototype.sqr=function(t){return this.mul(t,t)},E.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(i(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),u=s.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,f).cmp(u);)c.redIAdd(u);for(var h=this.pow(c,n),l=this.pow(t,n.addn(1).iushrn(1)),d=this.pow(t,n),p=o;0!==d.cmp(s);){for(var m=d,b=0;0!==m.cmp(s);b++)m=m.redSqr();i(b=0;n--){for(var f=e.words[n],c=u-1;c>=0;c--){var h=f>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}u=26}return i},E.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},E.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new O(t)},o(O,E),O.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},O.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},O.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t)}).call(this,r(17)(t))},function(t,e,r){"use strict";var n=e;n.bignum=r(8),n.define=r(413).define,n.base=r(416),n.constants=r(417),n.decoders=r(189),n.encoders=r(187)},function(t,e,r){"use strict";var n=e;n.der=r(188),n.pem=r(414)},function(t,e,r){"use strict";var n=r(3),i=r(96).Buffer,o=r(97),a=r(99);function s(t){this.enc="der",this.name=t.name,this.entity=t,this.tree=new u,this.tree._init(t.body)}function u(t){o.call(this,"der",t)}function f(t){return t<10?"0"+t:t}t.exports=s,s.prototype.encode=function(t,e){return this.tree._encode(t,e).join()},n(u,o),u.prototype._encodeComposite=function(t,e,r,n){var o=function(t,e,r,n){var i;"seqof"===t?t="seq":"setof"===t&&(t="set");if(a.tagByName.hasOwnProperty(t))i=a.tagByName[t];else{if("number"!=typeof t||(0|t)!==t)return n.error("Unknown tag: "+t);i=t}if(i>=31)return n.error("Multi-octet tag encoding unsupported");e||(i|=32);return i|=a.tagClassByName[r||"universal"]<<6}(t,e,r,this.reporter);if(n.length<128){var s=i.alloc(2);return s[0]=o,s[1]=n.length,this._createEncoderBuffer([s,n])}for(var u=1,f=n.length;f>=256;f>>=8)u++;var c=i.alloc(2+u);c[0]=o,c[1]=128|u;for(var h=1+u,l=n.length;l>0;h--,l>>=8)c[h]=255&l;return this._createEncoderBuffer([c,n])},u.prototype._encodeStr=function(t,e){if("bitstr"===e)return this._createEncoderBuffer([0|t.unused,t.data]);if("bmpstr"===e){for(var r=i.alloc(2*t.length),n=0;n=40)return this.reporter.error("Second objid identifier OOB");t.splice(0,2,40*t[0]+t[1])}for(var a=0,s=0;s=128;u>>=7)a++}for(var f=i.alloc(a),c=f.length-1,h=t.length-1;h>=0;h--){var l=t[h];for(f[c--]=127&l;(l>>=7)>0;)f[c--]=128|127&l}return this._createEncoderBuffer(f)},u.prototype._encodeTime=function(t,e){var r,n=new Date(t);return"gentime"===e?r=[f(n.getUTCFullYear()),f(n.getUTCMonth()+1),f(n.getUTCDate()),f(n.getUTCHours()),f(n.getUTCMinutes()),f(n.getUTCSeconds()),"Z"].join(""):"utctime"===e?r=[f(n.getUTCFullYear()%100),f(n.getUTCMonth()+1),f(n.getUTCDate()),f(n.getUTCHours()),f(n.getUTCMinutes()),f(n.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+e+" time is not supported yet"),this._encodeStr(r,"octstr")},u.prototype._encodeNull=function(){return this._createEncoderBuffer("")},u.prototype._encodeInt=function(t,e){if("string"==typeof t){if(!e)return this.reporter.error("String int or enum given, but no values map");if(!e.hasOwnProperty(t))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(t));t=e[t]}if("number"!=typeof t&&!i.isBuffer(t)){var r=t.toArray();!t.sign&&128&r[0]&&r.unshift(0),t=i.from(r)}if(i.isBuffer(t)){var n=t.length;0===t.length&&n++;var o=i.alloc(n);return t.copy(o),0===t.length&&(o[0]=0),this._createEncoderBuffer(o)}if(t<128)return this._createEncoderBuffer(t);if(t<256)return this._createEncoderBuffer([0,t]);for(var a=1,s=t;s>=256;s>>=8)a++;for(var u=new Array(a),f=u.length-1;f>=0;f--)u[f]=255&t,t>>=8;return 128&u[0]&&u.unshift(0),this._createEncoderBuffer(i.from(u))},u.prototype._encodeBool=function(t){return this._createEncoderBuffer(t?255:0)},u.prototype._use=function(t,e){return"function"==typeof t&&(t=t(e)),t._getEncoder("der").tree},u.prototype._skipDefault=function(t,e,r){var n,i=this._baseState;if(null===i.default)return!1;var o=t.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,e,r).join()),o.length!==i.defaultBuffer.length)return!1;for(n=0;n>6],i=0==(32&r);if(31==(31&r)){var o=r;for(r=0;128==(128&o);){if(o=t.readUInt8(e),t.isError(o))return o;r<<=7,r|=127&o}}else r&=31;return{cls:n,primitive:i,tag:r,tagStr:s.tag[r]}}function h(t,e,r){var n=t.readUInt8(r);if(t.isError(n))return n;if(!e&&128===n)return null;if(0==(128&n))return n;var i=127&n;if(i>4)return t.error("length octect is too long");n=0;for(var o=0;o>>((3&e)<<3)&255;return o}}},function(t,e,r){"use strict";for(var n=[],i=0;i<256;++i)n[i]=(i+256).toString(16).substr(1);t.exports=function(t,e){var r=e||0,i=n;return[i[t[r++]],i[t[r++]],i[t[r++]],i[t[r++]],"-",i[t[r++]],i[t[r++]],"-",i[t[r++]],i[t[r++]],"-",i[t[r++]],i[t[r++]],"-",i[t[r++]],i[t[r++]],i[t[r++]],i[t[r++]],i[t[r++]],i[t[r++]]].join("")}},function(t,e,r){"use strict";var n=Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]},i=function(t,e){for(var r in t)"default"===r||e.hasOwnProperty(r)||n(e,t,r)};Object.defineProperty(e,"__esModule",{value:!0});var o=r(433);Object.defineProperty(e,"Transaction",{enumerable:!0,get:function(){return o.default}});var a=r(483);Object.defineProperty(e,"AccessListEIP2930Transaction",{enumerable:!0,get:function(){return a.default}});var s=r(484);Object.defineProperty(e,"TransactionFactory",{enumerable:!0,get:function(){return s.default}});var u=r(485);Object.defineProperty(e,"FeeMarketEIP1559Transaction",{enumerable:!0,get:function(){return u.default}}),i(r(43),e)},function(t,e,r){"use strict";var n=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.KECCAK256_RLP=e.KECCAK256_RLP_S=e.KECCAK256_RLP_ARRAY=e.KECCAK256_RLP_ARRAY_S=e.KECCAK256_NULL=e.KECCAK256_NULL_S=e.TWO_POW256=e.MAX_INTEGER=void 0;var i=r(1).Buffer,o=n(r(34));e.MAX_INTEGER=new o.default("ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",16),e.TWO_POW256=new o.default("10000000000000000000000000000000000000000000000000000000000000000",16),e.KECCAK256_NULL_S="c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",e.KECCAK256_NULL=i.from(e.KECCAK256_NULL_S,"hex"),e.KECCAK256_RLP_ARRAY_S="1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",e.KECCAK256_RLP_ARRAY=i.from(e.KECCAK256_RLP_ARRAY_S,"hex"),e.KECCAK256_RLP_S="56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",e.KECCAK256_RLP=i.from(e.KECCAK256_RLP_S,"hex")},function(t,e,r){"use strict";(function(t){var n=Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]},i=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e},o=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.hasOwnProperty.call(t,r)&&n(e,t,r);return i(e,t),e},a=function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},s=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.isZeroAddress=e.zeroAddress=e.importPublic=e.privateToAddress=e.privateToPublic=e.publicToAddress=e.pubToAddress=e.isValidPublic=e.isValidPrivate=e.generateAddress2=e.generateAddress=e.isValidChecksumAddress=e.toChecksumAddress=e.isValidAddress=e.Account=void 0;var u=s(r(100)),f=s(r(34)),c=o(r(69)),h=r(200),l=r(42),d=r(198),p=r(35),m=r(102),b=r(70),v=r(103),y=function(){function t(t,e,r,n){void 0===t&&(t=new f.default(0)),void 0===e&&(e=new f.default(0)),void 0===r&&(r=d.KECCAK256_RLP),void 0===n&&(n=d.KECCAK256_NULL),this.nonce=t,this.balance=e,this.stateRoot=r,this.codeHash=n,this._validate()}return t.fromAccountData=function(e){var r=e.nonce,n=e.balance,i=e.stateRoot,o=e.codeHash;return new t(r?new f.default(p.toBuffer(r)):void 0,n?new f.default(p.toBuffer(n)):void 0,i?p.toBuffer(i):void 0,o?p.toBuffer(o):void 0)},t.fromRlpSerializedAccount=function(t){var e=c.decode(t);if(!Array.isArray(e))throw new Error("Invalid serialized account input. Must be array");return this.fromValuesArray(e)},t.fromValuesArray=function(e){var r=a(e,4),n=r[0],i=r[1],o=r[2],s=r[3];return new t(new f.default(n),new f.default(i),o,s)},t.prototype._validate=function(){if(this.nonce.lt(new f.default(0)))throw new Error("nonce must be greater than zero");if(this.balance.lt(new f.default(0)))throw new Error("balance must be greater than zero");if(32!==this.stateRoot.length)throw new Error("stateRoot must have a length of 32");if(32!==this.codeHash.length)throw new Error("codeHash must have a length of 32")},t.prototype.raw=function(){return[v.bnToUnpaddedBuffer(this.nonce),v.bnToUnpaddedBuffer(this.balance),this.stateRoot,this.codeHash]},t.prototype.serialize=function(){return c.encode(this.raw())},t.prototype.isContract=function(){return!this.codeHash.equals(d.KECCAK256_NULL)},t.prototype.isEmpty=function(){return this.balance.isZero()&&this.nonce.isZero()&&this.codeHash.equals(d.KECCAK256_NULL)},t}();e.Account=y,e.isValidAddress=function(t){try{b.assertIsString(t)}catch(t){return!1}return/^0x[0-9a-fA-F]{40}$/.test(t)},e.toChecksumAddress=function(t,e){b.assertIsHexString(t);var r=l.stripHexPrefix(t).toLowerCase(),n="";e&&(n=v.toType(e,v.TypeOutput.BN).toString()+"0x");for(var i=m.keccakFromString(n+r).toString("hex"),o="0x",a=0;a=8?o+=r[a].toUpperCase():o+=r[a];return o},e.isValidChecksumAddress=function(t,r){return e.isValidAddress(t)&&e.toChecksumAddress(t,r)===t},e.generateAddress=function(e,r){b.assertIsBuffer(e),b.assertIsBuffer(r);var n=new f.default(r);return n.isZero()?m.rlphash([e,null]).slice(-20):m.rlphash([e,t.from(n.toArray())]).slice(-20)},e.generateAddress2=function(e,r,n){return b.assertIsBuffer(e),b.assertIsBuffer(r),b.assertIsBuffer(n),u.default(20===e.length),u.default(32===r.length),m.keccak256(t.concat([t.from("ff","hex"),e,r,m.keccak256(n)])).slice(-20)},e.isValidPrivate=function(t){return h.privateKeyVerify(t)},e.isValidPublic=function(e,r){return void 0===r&&(r=!1),b.assertIsBuffer(e),64===e.length?h.publicKeyVerify(t.concat([t.from([4]),e])):!!r&&h.publicKeyVerify(e)},e.pubToAddress=function(e,r){return void 0===r&&(r=!1),b.assertIsBuffer(e),r&&64!==e.length&&(e=t.from(h.publicKeyConvert(e,!1).slice(1))),u.default(64===e.length),m.keccak(e).slice(-20)},e.publicToAddress=e.pubToAddress,e.privateToPublic=function(e){return b.assertIsBuffer(e),t.from(h.publicKeyCreate(e,!1)).slice(1)},e.privateToAddress=function(t){return e.publicToAddress(e.privateToPublic(t))},e.importPublic=function(e){return b.assertIsBuffer(e),64!==e.length&&(e=t.from(h.publicKeyConvert(e,!1).slice(1))),e},e.zeroAddress=function(){var t=p.zeros(20);return p.bufferToHex(t)},e.isZeroAddress=function(t){try{b.assertIsString(t)}catch(t){return!1}return e.zeroAddress()===t}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n=function(t,e,r,n){return new(r||(r=Promise))((function(i,o){function a(t){try{u(n.next(t))}catch(t){o(t)}}function s(t){try{u(n.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,s)}u((n=n.apply(t,e||[])).next())}))},i=function(t,e){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,n=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]>6|192);else{if(i>55295&&i<56320){if(++n==t.length)return null;var o=t.charCodeAt(n);if(o<56320||o>57343)return null;r+=e((i=65536+((1023&i)<<10)+(1023&o))>>18|240),r+=e(i>>12&63|128)}else r+=e(i>>12|224);r+=e(i>>6&63|128)}r+=e(63&i|128)}}return r},toString:function(t){for(var e="",r=0,o=i(t);r127){if(a>191&&a<224){if(r>=o)return null;a=(31&a)<<6|63&n(t,r)}else if(a>223&&a<240){if(r+1>=o)return null;a=(15&a)<<12|(63&n(t,r))<<6|63&n(t,++r)}else{if(!(a>239&&a<248))return null;if(r+2>=o)return null;a=(7&a)<<18|(63&n(t,r))<<12|(63&n(t,++r))<<6|63&n(t,++r)}++r}if(a<=65535)e+=String.fromCharCode(a);else{if(!(a<=1114111))return null;a-=65536,e+=String.fromCharCode(a>>10|55296),e+=String.fromCharCode(1023&a|56320)}}return e},fromNumber:function(t){var e=t.toString(16);return e.length%2==0?"0x"+e:"0x0"+e},toNumber:function(t){return parseInt(t.slice(2),16)},fromNat:function(t){return"0x0"===t?"0x":t.length%2==0?t:"0x0"+t.slice(2)},toNat:function(t){return"0"===t[2]?"0x"+t.slice(3):t},fromArray:a,toArray:o,fromUint8Array:function(t){return a([].slice.call(t,0))},toUint8Array:function(t){return new Uint8Array(o(t))}}},function(t,e,r){"use strict";var n=r(205).version,i=r(27),o=r(280),a=r(61),s=r(149),u=r(487),f=r(488),c=r(16),h=function(){var t=this;i.packageInit(this,arguments),this.version=n,this.utils=c,this.eth=new o(this),this.shh=new u(this),this.bzz=new f(this);var e=this.setProvider;this.setProvider=function(r,n){return e.apply(t,arguments),t.eth.setRequestManager(t._requestManager),t.shh.setRequestManager(t._requestManager),t.bzz.setProvider(r),!0}};h.version=n,h.utils=c,h.modules={Eth:o,Net:a,Personal:s,Shh:u,Bzz:f},i.addProviders(h),t.exports=h},function(t){t.exports=JSON.parse('{"name":"web3","version":"1.5.2","description":"Ethereum JavaScript API","repository":"https://github.com/ethereum/web3.js","license":"LGPL-3.0","engines":{"node":">=8.0.0"},"main":"lib/index.js","bugs":{"url":"https://github.com/ethereum/web3.js/issues"},"keywords":["Ethereum","JavaScript","API"],"author":"ethereum.org","types":"types/index.d.ts","scripts":{"compile":"tsc -b tsconfig.json","dtslint":"dtslint --localTs ../../node_modules/typescript/lib types","postinstall":"echo \\"WARNING: the web3-shh and web3-bzz api will be deprecated in the next version\\""},"authors":[{"name":"Fabian Vogelsteller","email":"fabian@ethereum.org","homepage":"http://frozeman.de"},{"name":"Marek Kotewicz","email":"marek@parity.io","url":"https://github.com/debris"},{"name":"Marian Oancea","url":"https://github.com/cubedro"},{"name":"Gav Wood","email":"g@parity.io","homepage":"http://gavwood.com"},{"name":"Jeffery Wilcke","email":"jeffrey.wilcke@ethereum.org","url":"https://github.com/obscuren"}],"dependencies":{"web3-bzz":"1.5.2","web3-core":"1.5.2","web3-eth":"1.5.2","web3-eth-personal":"1.5.2","web3-net":"1.5.2","web3-shh":"1.5.2","web3-utils":"1.5.2"},"devDependencies":{"@types/node":"^12.12.6","dtslint":"^3.4.1","typescript":"^3.9.5","web3-core-helpers":"1.5.2"}}')},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(106).callbackify,o=r(10).errors,a=r(113),s=r(222),u=r(223),f=function t(e,r){this.provider=null,this.providers=t.providers,this.setProvider(e,r),this.subscriptions=new Map};f.givenProvider=u,f.providers={WebsocketProvider:r(224),HttpProvider:r(234),IpcProvider:r(250)},f.prototype.setProvider=function(t,e){var r=this;if(t&&"string"==typeof t&&this.providers)if(/^http(s)?:\/\//i.test(t))t=new this.providers.HttpProvider(t);else if(/^ws(s)?:\/\//i.test(t))t=new this.providers.WebsocketProvider(t);else if(t&&"object"===(0,n.default)(e)&&"function"==typeof e.connect)t=new this.providers.IpcProvider(t,e);else if(t)throw new Error("Can't autodetect provider for \""+t+'"');if(this.provider&&this.provider.connected&&this.clearSubscriptions(),this.provider=t||null,this.provider&&this.provider.on){"function"==typeof t.request?this.provider.on("message",(function(t){if(t&&"eth_subscription"===t.type&&t.data){var e=t.data;e.subscription&&r.subscriptions.has(e.subscription)&&r.subscriptions.get(e.subscription).callback(null,e.result)}})):this.provider.on("data",(function(t,e){(t=t||e).method&&t.params&&t.params.subscription&&r.subscriptions.has(t.params.subscription)&&r.subscriptions.get(t.params.subscription).callback(null,t.params.result)})),this.provider.on("connect",(function(){r.subscriptions.forEach((function(t){t.subscription.resubscribe()}))})),this.provider.on("error",(function(t){r.subscriptions.forEach((function(e){e.callback(t)}))}));var i=function(t){r._isCleanCloseEvent(t)&&!r._isIpcCloseError(t)||(r.subscriptions.forEach((function(e){e.callback(o.ConnectionCloseError(t)),r.subscriptions.delete(e.subscription.id)})),r.provider&&r.provider.emit&&r.provider.emit("error",o.ConnectionCloseError(t))),r.provider&&r.provider.emit&&r.provider.emit("end",t)};this.provider.on("close",i),this.provider.on("disconnect",i)}},f.prototype.send=function(t,e){if(e=e||function(){},!this.provider)return e(o.InvalidProvider());var r=t.method,n=t.params,s=a.toPayload(r,n),u=this._jsonrpcResultCallback(e,s);if(this.provider.request)i(this.provider.request.bind(this.provider))({method:r,params:n},e);else if(this.provider.sendAsync)this.provider.sendAsync(s,u);else{if(!this.provider.send)throw new Error("Provider does not have a request or send method to use.");this.provider.send(s,u)}},f.prototype.sendBatch=function(t,e){if(!this.provider)return e(o.InvalidProvider());var r=a.toBatchPayload(t);this.provider[this.provider.sendAsync?"sendAsync":"send"](r,(function(t,r){return t?e(t):Array.isArray(r)?void e(null,r):e(o.InvalidResponse(r))}))},f.prototype.addSubscription=function(t,e){if(!this.provider.on)throw new Error("The provider doesn't support subscriptions: "+this.provider.constructor.name);this.subscriptions.set(t.id,{callback:e,subscription:t})},f.prototype.removeSubscription=function(t,e){if(this.subscriptions.has(t)){var r=this.subscriptions.get(t).subscription.options.type;return this.subscriptions.delete(t),void this.send({method:r+"_unsubscribe",params:[t]},e)}"function"==typeof e&&e(null)},f.prototype.clearSubscriptions=function(t){try{var e=this;return this.subscriptions.size>0&&this.subscriptions.forEach((function(r,n){t&&"syncing"===r.name||e.removeSubscription(n)})),this.provider.reset&&this.provider.reset(),!0}catch(t){throw new Error("Error while clearing subscriptions: ".concat(t))}},f.prototype._isCleanCloseEvent=function(t){return"object"===(0,n.default)(t)&&([1e3].includes(t.code)||!0===t.wasClean)},f.prototype._isIpcCloseError=function(t){return"boolean"==typeof t&&t},f.prototype._jsonrpcResultCallback=function(t,e){return function(r,n){return n&&n.id&&e.id!==n.id?t(new Error("Wrong response id ".concat(n.id," (expected: ").concat(e.id,") in ").concat(JSON.stringify(e)))):r?t(r):n&&n.error?t(o.ErrorResponse(n)):a.isValidResponse(n)?void t(null,n.result):t(o.InvalidResponse(n))}},t.exports={Manager:f,BatchManager:s}},function(t,e,r){"use strict";var n=r(0)(r(2));t.exports=function(t){return t&&"object"===(0,n.default)(t)&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},function(t,e,r){"use strict";"function"==typeof Object.create?t.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},function(t,e,r){"use strict";var n=r(0)(r(2));t.exports={ErrorResponse:function(t){var e=t&&t.error&&t.error.message?t.error.message:JSON.stringify(t),r=t.error&&t.error.data?t.error.data:null,n=new Error("Returned error: "+e);return n.data=r,n},InvalidNumberOfParams:function(t,e,r){return new Error('Invalid number of parameters for "'+r+'". Got '+t+" expected "+e+"!")},InvalidConnection:function(t,e){return this.ConnectionError("CONNECTION ERROR: Couldn't connect to node "+t+".",e)},InvalidProvider:function(){return new Error("Provider not set or invalid")},InvalidResponse:function(t){var e=t&&t.error&&t.error.message?t.error.message:"Invalid JSON RPC response: "+JSON.stringify(t);return new Error(e)},ConnectionTimeout:function(t){return new Error("CONNECTION TIMEOUT: timeout of "+t+" ms achived")},ConnectionNotOpenError:function(t){return this.ConnectionError("connection not open on send()",t)},ConnectionCloseError:function(t){return"object"===(0,n.default)(t)&&t.code&&t.reason?this.ConnectionError("CONNECTION ERROR: The connection got closed with the close code `"+t.code+"` and the following reason string `"+t.reason+"`",t):new Error("CONNECTION ERROR: The connection closed unexpectedly")},MaxAttemptsReachedOnReconnectingError:function(){return new Error("Maximum number of reconnect attempts reached!")},PendingRequestsOnReconnectingError:function(){return new Error("CONNECTION ERROR: Provider started to reconnect before the response got received!")},ConnectionError:function(t,e){var r=new Error(t);return e&&(r.code=e.code,r.reason=e.reason),r},RevertInstructionError:function(t,e){var r=new Error("Your request got reverted with the following reason string: "+t);return r.reason=t,r.signature=e,r},TransactionRevertInstructionError:function(t,e,r){var n=new Error("Transaction has been reverted by the EVM:\n"+JSON.stringify(r,null,2));return n.reason=t,n.signature=e,n.receipt=r,n},TransactionError:function(t,e){var r=new Error(t);return r.receipt=e,r},NoContractAddressFoundError:function(t){return this.TransactionError("The transaction receipt didn't contain a contract address.",t)},ContractCodeNotStoredError:function(t){return this.TransactionError("The contract code couldn't be stored, please check your gas limit.",t)},TransactionRevertedWithoutReasonError:function(t){return this.TransactionError("Transaction has been reverted by the EVM:\n"+JSON.stringify(t,null,2),t)},TransactionOutOfGasError:function(t){return this.TransactionError("Transaction ran out of gas. Please provide more gas:\n"+JSON.stringify(t,null,2),t)},ResolverMethodMissingError:function(t,e){return new Error("The resolver at "+t+'does not implement requested method: "'+e+'".')},ContractMissingABIError:function(){return new Error("You must provide the json interface of the contract when instantiating a contract object.")},ContractOnceRequiresCallbackError:function(){return new Error("Once requires a callback as the second parameter.")},ContractEventDoesNotExistError:function(t){return new Error('Event "'+t+"\" doesn't exist in this contract.")},ContractReservedEventError:function(t){return new Error('The event "'+t+"\" is a reserved event name, you can't use it.")},ContractMissingDeployDataError:function(){return new Error('No "data" specified in neither the given options, nor the default options.')},ContractNoAddressDefinedError:function(){return new Error("This contract object doesn't have address set yet, please set an address first.")},ContractNoFromAddressDefinedError:function(){return new Error('No "from" address specified in neither the given options, nor the default options.')}}},function(t,e,r){"use strict";var n=r(0),i=n(r(44)),o=n(r(2));function a(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function s(t){for(var e=1;e2)throw new Error("[ethjs-unit] while converting number "+t+" to wei, too many decimal points");var l=h[0],d=h[1];if(l||(l="0"),d||(d="0"),d.length>o)throw new Error("[ethjs-unit] while converting number "+t+" to wei, too many decimal places");for(;d.length=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return n}function f(t,e,r,n){for(var i=0,o=Math.min(t.length,r),a=e;a=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&"object"===(0,e.default)(t)&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,r,n){if("number"==typeof t)return this._initNumber(t,r,n);if("object"===(0,e.default)(t))return this._initArray(t,r,n);"hex"===r&&(r=16),i(r===(0|r)&&r>=2&&r<=36);var o=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&o++,16===r?this._parseHex(t,o):this._parseBase(t,r,o),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),r,n)},a.prototype._initNumber=function(t,e,r){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(i(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),e,r)},a.prototype._initArray=function(t,e,r){if(i("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var n=0;n=0;n-=3)a=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},a.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=6)i=u(t,r,r+6),this.words[n]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,n++);r+6!==e&&(i=u(t,e,r+6),this.words[n]|=i<>>26-o&4194303),this.strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,a=o%n,s=Math.min(o,o-a)+r,u=0,c=r;c1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],h=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var f=1;f>>26,h=67108863&u,l=Math.min(f,e.length-1),d=Math.max(0,f-t.length+1);d<=l;d++){var p=f-d|0;c+=(a=(i=0|t.words[p])*(o=0|e.words[d])+h)/67108864|0,h=67108863&a}r.words[f]=0|h,u=0|c}return 0!==u?r.words[f]=0|u:r.length--,r.strip()}a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var n=0,o=0,a=0;a>>24-n&16777215)||a!==this.length-1?c[6-u.length]+u+r:u+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=h[t],d=l[t];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(d).toString(t);r=(p=p.idivn(d)).isZero()?m+r:c[f-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return i(void 0!==s),this.toArrayLike(s,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,r){var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0"),this.strip();var a,s,u="le"===e,f=new t(o),c=this.clone();if(u){for(s=0;!c.isZero();s++)a=c.andln(255),c.iushrn(8),f[s]=a;for(;s=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){i("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-r),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){i("number"==typeof t&&t>=0);var r=t/26|0,n=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,m=d>>>13,b=0|a[2],v=8191&b,y=b>>>13,g=0|a[3],w=8191&g,_=g>>>13,k=0|a[4],M=8191&k,S=k>>>13,A=0|a[5],x=8191&A,E=A>>>13,O=0|a[6],P=8191&O,B=O>>>13,T=0|a[7],R=8191&T,I=T>>>13,C=0|a[8],U=8191&C,j=C>>>13,N=0|a[9],L=8191&N,F=N>>>13,D=0|s[0],q=8191&D,H=D>>>13,z=0|s[1],K=8191&z,G=z>>>13,V=0|s[2],W=8191&V,Z=V>>>13,J=0|s[3],X=8191&J,Y=J>>>13,$=0|s[4],Q=8191&$,tt=$>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ft=st>>>13,ct=0|s[8],ht=8191&ct,lt=ct>>>13,dt=0|s[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var bt=(f+(n=Math.imul(h,q))|0)+((8191&(i=(i=Math.imul(h,H))+Math.imul(l,q)|0))<<13)|0;f=((o=Math.imul(l,H))+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(p,q),i=(i=Math.imul(p,H))+Math.imul(m,q)|0,o=Math.imul(m,H);var vt=(f+(n=n+Math.imul(h,K)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(l,K)|0))<<13)|0;f=((o=o+Math.imul(l,G)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,q),i=(i=Math.imul(v,H))+Math.imul(y,q)|0,o=Math.imul(y,H),n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,G)|0;var yt=(f+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,W)|0))<<13)|0;f=((o=o+Math.imul(l,Z)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,q),i=(i=Math.imul(w,H))+Math.imul(_,q)|0,o=Math.imul(_,H),n=n+Math.imul(v,K)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,Z)|0;var gt=(f+(n=n+Math.imul(h,X)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(l,X)|0))<<13)|0;f=((o=o+Math.imul(l,Y)|0)+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(M,q),i=(i=Math.imul(M,H))+Math.imul(S,q)|0,o=Math.imul(S,H),n=n+Math.imul(w,K)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(_,K)|0,o=o+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,Z)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var wt=(f+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(l,Q)|0))<<13)|0;f=((o=o+Math.imul(l,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(x,q),i=(i=Math.imul(x,H))+Math.imul(E,q)|0,o=Math.imul(E,H),n=n+Math.imul(M,K)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,K)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,Z)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,Z)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var _t=(f+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(l,rt)|0))<<13)|0;f=((o=o+Math.imul(l,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(P,q),i=(i=Math.imul(P,H))+Math.imul(B,q)|0,o=Math.imul(B,H),n=n+Math.imul(x,K)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(E,K)|0,o=o+Math.imul(E,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Z)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,Z)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var kt=(f+(n=n+Math.imul(h,ot)|0)|0)+((8191&(i=(i=i+Math.imul(h,at)|0)+Math.imul(l,ot)|0))<<13)|0;f=((o=o+Math.imul(l,at)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(R,q),i=(i=Math.imul(R,H))+Math.imul(I,q)|0,o=Math.imul(I,H),n=n+Math.imul(P,K)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(B,K)|0,o=o+Math.imul(B,G)|0,n=n+Math.imul(x,W)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,Z)|0,n=n+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,Y)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var Mt=(f+(n=n+Math.imul(h,ut)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(l,ut)|0))<<13)|0;f=((o=o+Math.imul(l,ft)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(U,q),i=(i=Math.imul(U,H))+Math.imul(j,q)|0,o=Math.imul(j,H),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(B,W)|0,o=o+Math.imul(B,Z)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ft)|0;var St=(f+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,lt)|0)+Math.imul(l,ht)|0))<<13)|0;f=((o=o+Math.imul(l,lt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(L,q),i=(i=Math.imul(L,H))+Math.imul(F,q)|0,o=Math.imul(F,H),n=n+Math.imul(U,K)|0,i=(i=i+Math.imul(U,G)|0)+Math.imul(j,K)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,Z)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(B,X)|0,o=o+Math.imul(B,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,o=o+Math.imul(S,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,at)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ft)|0,n=n+Math.imul(p,ht)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ht)|0,o=o+Math.imul(m,lt)|0;var At=(f+(n=n+Math.imul(h,pt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(l,pt)|0))<<13)|0;f=((o=o+Math.imul(l,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(L,K),i=(i=Math.imul(L,G))+Math.imul(F,K)|0,o=Math.imul(F,G),n=n+Math.imul(U,W)|0,i=(i=i+Math.imul(U,Z)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,Z)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,tt)|0,n=n+Math.imul(x,rt)|0,i=(i=i+Math.imul(x,nt)|0)+Math.imul(E,rt)|0,o=o+Math.imul(E,nt)|0,n=n+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(S,ot)|0,o=o+Math.imul(S,at)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,ft)|0,n=n+Math.imul(v,ht)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ht)|0,o=o+Math.imul(y,lt)|0;var xt=(f+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;f=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(L,W),i=(i=Math.imul(L,Z))+Math.imul(F,W)|0,o=Math.imul(F,Z),n=n+Math.imul(U,X)|0,i=(i=i+Math.imul(U,Y)|0)+Math.imul(j,X)|0,o=o+Math.imul(j,Y)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(B,rt)|0,o=o+Math.imul(B,nt)|0,n=n+Math.imul(x,ot)|0,i=(i=i+Math.imul(x,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,n=n+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ut)|0,o=o+Math.imul(S,ft)|0,n=n+Math.imul(w,ht)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ht)|0,o=o+Math.imul(_,lt)|0;var Et=(f+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;f=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(L,X),i=(i=Math.imul(L,Y))+Math.imul(F,X)|0,o=Math.imul(F,Y),n=n+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,tt)|0,n=n+Math.imul(R,rt)|0,i=(i=i+Math.imul(R,nt)|0)+Math.imul(I,rt)|0,o=o+Math.imul(I,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(B,ot)|0,o=o+Math.imul(B,at)|0,n=n+Math.imul(x,ut)|0,i=(i=i+Math.imul(x,ft)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ft)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,lt)|0)+Math.imul(S,ht)|0,o=o+Math.imul(S,lt)|0;var Ot=(f+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;f=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,tt))+Math.imul(F,Q)|0,o=Math.imul(F,tt),n=n+Math.imul(U,rt)|0,i=(i=i+Math.imul(U,nt)|0)+Math.imul(j,rt)|0,o=o+Math.imul(j,nt)|0,n=n+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(B,ut)|0,o=o+Math.imul(B,ft)|0,n=n+Math.imul(x,ht)|0,i=(i=i+Math.imul(x,lt)|0)+Math.imul(E,ht)|0,o=o+Math.imul(E,lt)|0;var Pt=(f+(n=n+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,pt)|0))<<13)|0;f=((o=o+Math.imul(S,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(L,rt),i=(i=Math.imul(L,nt))+Math.imul(F,rt)|0,o=Math.imul(F,nt),n=n+Math.imul(U,ot)|0,i=(i=i+Math.imul(U,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,n=n+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ft)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ft)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(B,ht)|0,o=o+Math.imul(B,lt)|0;var Bt=(f+(n=n+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,mt)|0)+Math.imul(E,pt)|0))<<13)|0;f=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),n=n+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ft)|0)+Math.imul(j,ut)|0,o=o+Math.imul(j,ft)|0,n=n+Math.imul(R,ht)|0,i=(i=i+Math.imul(R,lt)|0)+Math.imul(I,ht)|0,o=o+Math.imul(I,lt)|0;var Tt=(f+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(B,pt)|0))<<13)|0;f=((o=o+Math.imul(B,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(L,ut),i=(i=Math.imul(L,ft))+Math.imul(F,ut)|0,o=Math.imul(F,ft),n=n+Math.imul(U,ht)|0,i=(i=i+Math.imul(U,lt)|0)+Math.imul(j,ht)|0,o=o+Math.imul(j,lt)|0;var Rt=(f+(n=n+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(I,pt)|0))<<13)|0;f=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(L,ht),i=(i=Math.imul(L,lt))+Math.imul(F,ht)|0,o=Math.imul(F,lt);var It=(f+(n=n+Math.imul(U,pt)|0)|0)+((8191&(i=(i=i+Math.imul(U,mt)|0)+Math.imul(j,pt)|0))<<13)|0;f=((o=o+Math.imul(j,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Ct=(f+(n=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,mt))+Math.imul(F,pt)|0))<<13)|0;return f=((o=Math.imul(F,mt))+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,u[0]=bt,u[1]=vt,u[2]=yt,u[3]=gt,u[4]=wt,u[5]=_t,u[6]=kt,u[7]=Mt,u[8]=St,u[9]=At,u[10]=xt,u[11]=Et,u[12]=Ot,u[13]=Pt,u[14]=Bt,u[15]=Tt,u[16]=Rt,u[17]=It,u[18]=Ct,0!==f&&(u[19]=f,r.length++),r};function m(t,e,r){return(new b).mulp(t,e,r)}function b(t,e){this.x=t,this.y=e}Math.imul||(p=d),a.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):r<63?d(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,t,e):m(this,t,e)},b.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},b.prototype.permute=function(t,e,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=n/67108864|0,e+=o>>>26,this.words[r]=67108863&o}return 0!==e&&(this.words[r]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(e=0;e>>26-r}a&&(this.words[e]=a,this.length++)}if(0!==n){for(e=this.length-1;e>=0;e--)this.words[e+n]=this.words[e];for(e=0;e=0),n=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,f=0;f=0&&(0!==c||f>=n);f--){var h=0|this.words[f];this.words[f]=c<<26-o|h>>>o,c=h&s}return u&&0!==c&&(u.words[u.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,r){return i(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){i("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,n=1<=0);var e=t%26,r=(t-e)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var n=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(i("number"==typeof t),i(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[n+r]=67108863&o}for(;n>26,this.words[n+r]=67108863&o;if(0===s)return this.strip();for(i(-1===s),s=0,n=0;n>26,this.words[n]=67108863&o;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==e){(s=new a(null)).length=u+1,s.words=new Array(s.length);for(var f=0;f=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s.strip(),n.strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return i(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(n=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:n,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var n,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){i(t<=67108863);for(var e=(1<<26)%t,r=0,n=this.length-1;n>=0;n--)r=(e*r+(0|this.words[n]))%t;return r},a.prototype.idivn=function(t){i(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var n=(0|this.words[r])+67108864*e;this.words[r]=n/t|0,e=n%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n=new a(1),o=new a(0),s=new a(0),u=new a(1),f=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++f;for(var c=r.clone(),h=e.clone();!e.isZero();){for(var l=0,d=1;0==(e.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(e.iushrn(l);l-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(c),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,m=1;0==(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(c),u.isub(h)),s.iushrn(1),u.iushrn(1);e.cmp(r)>=0?(e.isub(r),n.isub(s),o.isub(u)):(r.isub(e),s.isub(n),u.isub(o))}return{a:s,b:u,gcd:r.iushln(f)}},a.prototype._invmp=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n,o=new a(1),s=new a(0),u=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var f=0,c=1;0==(e.words[0]&c)&&f<26;++f,c<<=1);if(f>0)for(e.iushrn(f);f-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(n=0===e.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(t),n},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){i("number"==typeof t);var e=t%26,r=(t-e)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),i(t<=67108863,"Number is too big");var n=0|this.words[0];e=n===t?0:nt.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new M(t)},a.prototype.toRed=function(t){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return i(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return i(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var v={k256:null,p224:null,p192:null,p25519:null};function y(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function g(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function k(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function M(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else i(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function S(t){M.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},y.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):r.strip(),r},y.prototype.split=function(t,e){t.iushrn(this.n,0,e)},y.prototype.imulK=function(t){return t.imul(this.k)},o(g,y),g.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},g.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(v[t])return v[t];var e;if("k256"===t)e=new g;else if("p224"===t)e=new w;else if("p192"===t)e=new _;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new k}return v[t]=e,e},M.prototype._verify1=function(t){i(0===t.negative,"red works only with positives"),i(t.red,"red works only with red numbers")},M.prototype._verify2=function(t,e){i(0==(t.negative|e.negative),"red works only with positives"),i(t.red&&t.red===e.red,"red works only with red numbers")},M.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},M.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},M.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},M.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},M.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},M.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},M.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},M.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},M.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},M.prototype.isqr=function(t){return this.imul(t,t.clone())},M.prototype.sqr=function(t){return this.mul(t,t)},M.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(i(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),u=s.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,f).cmp(u);)c.redIAdd(u);for(var h=this.pow(c,n),l=this.pow(t,n.addn(1).iushrn(1)),d=this.pow(t,n),p=o;0!==d.cmp(s);){for(var m=d,b=0;0!==m.cmp(s);b++)m=m.redSqr();i(b=0;n--){for(var f=e.words[n],c=u-1;c>=0;c--){var h=f>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}u=26}return i},M.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},M.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new S(t)},o(S,M),S.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},S.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},S.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t)}).call(this,r(17)(t))},function(t,e,r){"use strict";e.byteLength=function(t){var e=f(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,n=f(t),a=n[0],s=n[1],u=new o(function(t,e,r){return 3*(e+r)/4-r}(0,a,s)),c=0,h=s>0?a-4:a;for(r=0;r>16&255,u[c++]=e>>8&255,u[c++]=255&e;2===s&&(e=i[t.charCodeAt(r)]<<2|i[t.charCodeAt(r+1)]>>4,u[c++]=255&e);1===s&&(e=i[t.charCodeAt(r)]<<10|i[t.charCodeAt(r+1)]<<4|i[t.charCodeAt(r+2)]>>2,u[c++]=e>>8&255,u[c++]=255&e);return u},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],a=0,s=r-i;as?s:a+16383));1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return o.join("")};for(var n=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,r){for(var i,o,a=[],s=e;s>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(t,e,r){"use strict"; - /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */e.read=function(t,e,r,n,i){var o,a,s=8*i-n-1,u=(1<>1,c=-7,h=r?i-1:0,l=r?-1:1,d=t[e+h];for(h+=l,o=d&(1<<-c)-1,d>>=-c,c+=s;c>0;o=256*o+t[e+h],h+=l,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=n;c>0;a=256*a+t[e+h],h+=l,c-=8);if(0===o)o=1-f;else{if(o===u)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,n),o-=f}return(d?-1:1)*a*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var a,s,u,f=8*o-i-1,c=(1<>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:o-1,p=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),(e+=a+h>=1?l/u:l*Math.pow(2,1-h))*u>=2&&(a++,u/=2),a+h>=c?(s=0,a=c):a+h>=1?(s=(e*u-1)*Math.pow(2,i),a+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),a=0));i>=8;t[r+d]=255&s,d+=p,s/=256,i-=8);for(a=a<0;t[r+d]=255&a,d+=p,a/=256,f-=8);t[r+d-p]|=128*m}},function(t,e,r){"use strict";(function(t){var e=r(0)(r(2));!function(t,n){function i(t,e){if(!t)throw new Error(e||"Assertion failed")}function o(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function a(t,e,r){if(a.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(r=e,e=10),this._init(t||0,e||10,r||"be"))}var s;"object"===(0,e.default)(t)?t.exports=a:(void 0).BN=a,a.BN=a,a.wordSize=26;try{s=r(1).Buffer}catch(t){}function u(t,e,r){for(var n=0,i=Math.min(t.length,r),o=e;o=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return n}function f(t,e,r,n){for(var i=0,o=Math.min(t.length,r),a=e;a=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&"object"===(0,e.default)(t)&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,r,n){if("number"==typeof t)return this._initNumber(t,r,n);if("object"===(0,e.default)(t))return this._initArray(t,r,n);"hex"===r&&(r=16),i(r===(0|r)&&r>=2&&r<=36);var o=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&o++,16===r?this._parseHex(t,o):this._parseBase(t,r,o),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),r,n)},a.prototype._initNumber=function(t,e,r){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(i(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),e,r)},a.prototype._initArray=function(t,e,r){if(i("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var n=0;n=0;n-=3)a=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},a.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=6)i=u(t,r,r+6),this.words[n]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,n++);r+6!==e&&(i=u(t,e,r+6),this.words[n]|=i<>>26-o&4194303),this.strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,a=o%n,s=Math.min(o,o-a)+r,u=0,c=r;c1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],h=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var f=1;f>>26,h=67108863&u,l=Math.min(f,e.length-1),d=Math.max(0,f-t.length+1);d<=l;d++){var p=f-d|0;c+=(a=(i=0|t.words[p])*(o=0|e.words[d])+h)/67108864|0,h=67108863&a}r.words[f]=0|h,u=0|c}return 0!==u?r.words[f]=0|u:r.length--,r.strip()}a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var n=0,o=0,a=0;a>>24-n&16777215)||a!==this.length-1?c[6-u.length]+u+r:u+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=h[t],d=l[t];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(d).toString(t);r=(p=p.idivn(d)).isZero()?m+r:c[f-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return i(void 0!==s),this.toArrayLike(s,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,r){var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0"),this.strip();var a,s,u="le"===e,f=new t(o),c=this.clone();if(u){for(s=0;!c.isZero();s++)a=c.andln(255),c.iushrn(8),f[s]=a;for(;s=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){i("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-r),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){i("number"==typeof t&&t>=0);var r=t/26|0,n=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,m=d>>>13,b=0|a[2],v=8191&b,y=b>>>13,g=0|a[3],w=8191&g,_=g>>>13,k=0|a[4],M=8191&k,S=k>>>13,A=0|a[5],x=8191&A,E=A>>>13,O=0|a[6],P=8191&O,B=O>>>13,T=0|a[7],R=8191&T,I=T>>>13,C=0|a[8],U=8191&C,j=C>>>13,N=0|a[9],L=8191&N,F=N>>>13,D=0|s[0],q=8191&D,H=D>>>13,z=0|s[1],K=8191&z,G=z>>>13,V=0|s[2],W=8191&V,Z=V>>>13,J=0|s[3],X=8191&J,Y=J>>>13,$=0|s[4],Q=8191&$,tt=$>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ft=st>>>13,ct=0|s[8],ht=8191&ct,lt=ct>>>13,dt=0|s[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var bt=(f+(n=Math.imul(h,q))|0)+((8191&(i=(i=Math.imul(h,H))+Math.imul(l,q)|0))<<13)|0;f=((o=Math.imul(l,H))+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(p,q),i=(i=Math.imul(p,H))+Math.imul(m,q)|0,o=Math.imul(m,H);var vt=(f+(n=n+Math.imul(h,K)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(l,K)|0))<<13)|0;f=((o=o+Math.imul(l,G)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,q),i=(i=Math.imul(v,H))+Math.imul(y,q)|0,o=Math.imul(y,H),n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,G)|0;var yt=(f+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,W)|0))<<13)|0;f=((o=o+Math.imul(l,Z)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,q),i=(i=Math.imul(w,H))+Math.imul(_,q)|0,o=Math.imul(_,H),n=n+Math.imul(v,K)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,Z)|0;var gt=(f+(n=n+Math.imul(h,X)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(l,X)|0))<<13)|0;f=((o=o+Math.imul(l,Y)|0)+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(M,q),i=(i=Math.imul(M,H))+Math.imul(S,q)|0,o=Math.imul(S,H),n=n+Math.imul(w,K)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(_,K)|0,o=o+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,Z)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var wt=(f+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(l,Q)|0))<<13)|0;f=((o=o+Math.imul(l,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(x,q),i=(i=Math.imul(x,H))+Math.imul(E,q)|0,o=Math.imul(E,H),n=n+Math.imul(M,K)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,K)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,Z)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,Z)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var _t=(f+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(l,rt)|0))<<13)|0;f=((o=o+Math.imul(l,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(P,q),i=(i=Math.imul(P,H))+Math.imul(B,q)|0,o=Math.imul(B,H),n=n+Math.imul(x,K)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(E,K)|0,o=o+Math.imul(E,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Z)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,Z)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var kt=(f+(n=n+Math.imul(h,ot)|0)|0)+((8191&(i=(i=i+Math.imul(h,at)|0)+Math.imul(l,ot)|0))<<13)|0;f=((o=o+Math.imul(l,at)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(R,q),i=(i=Math.imul(R,H))+Math.imul(I,q)|0,o=Math.imul(I,H),n=n+Math.imul(P,K)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(B,K)|0,o=o+Math.imul(B,G)|0,n=n+Math.imul(x,W)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,Z)|0,n=n+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,Y)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var Mt=(f+(n=n+Math.imul(h,ut)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(l,ut)|0))<<13)|0;f=((o=o+Math.imul(l,ft)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(U,q),i=(i=Math.imul(U,H))+Math.imul(j,q)|0,o=Math.imul(j,H),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(B,W)|0,o=o+Math.imul(B,Z)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ft)|0;var St=(f+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,lt)|0)+Math.imul(l,ht)|0))<<13)|0;f=((o=o+Math.imul(l,lt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(L,q),i=(i=Math.imul(L,H))+Math.imul(F,q)|0,o=Math.imul(F,H),n=n+Math.imul(U,K)|0,i=(i=i+Math.imul(U,G)|0)+Math.imul(j,K)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,Z)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(B,X)|0,o=o+Math.imul(B,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,o=o+Math.imul(S,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,at)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ft)|0,n=n+Math.imul(p,ht)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ht)|0,o=o+Math.imul(m,lt)|0;var At=(f+(n=n+Math.imul(h,pt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(l,pt)|0))<<13)|0;f=((o=o+Math.imul(l,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(L,K),i=(i=Math.imul(L,G))+Math.imul(F,K)|0,o=Math.imul(F,G),n=n+Math.imul(U,W)|0,i=(i=i+Math.imul(U,Z)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,Z)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,tt)|0,n=n+Math.imul(x,rt)|0,i=(i=i+Math.imul(x,nt)|0)+Math.imul(E,rt)|0,o=o+Math.imul(E,nt)|0,n=n+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(S,ot)|0,o=o+Math.imul(S,at)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,ft)|0,n=n+Math.imul(v,ht)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ht)|0,o=o+Math.imul(y,lt)|0;var xt=(f+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;f=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(L,W),i=(i=Math.imul(L,Z))+Math.imul(F,W)|0,o=Math.imul(F,Z),n=n+Math.imul(U,X)|0,i=(i=i+Math.imul(U,Y)|0)+Math.imul(j,X)|0,o=o+Math.imul(j,Y)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(B,rt)|0,o=o+Math.imul(B,nt)|0,n=n+Math.imul(x,ot)|0,i=(i=i+Math.imul(x,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,n=n+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ut)|0,o=o+Math.imul(S,ft)|0,n=n+Math.imul(w,ht)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ht)|0,o=o+Math.imul(_,lt)|0;var Et=(f+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;f=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(L,X),i=(i=Math.imul(L,Y))+Math.imul(F,X)|0,o=Math.imul(F,Y),n=n+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,tt)|0,n=n+Math.imul(R,rt)|0,i=(i=i+Math.imul(R,nt)|0)+Math.imul(I,rt)|0,o=o+Math.imul(I,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(B,ot)|0,o=o+Math.imul(B,at)|0,n=n+Math.imul(x,ut)|0,i=(i=i+Math.imul(x,ft)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ft)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,lt)|0)+Math.imul(S,ht)|0,o=o+Math.imul(S,lt)|0;var Ot=(f+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;f=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,tt))+Math.imul(F,Q)|0,o=Math.imul(F,tt),n=n+Math.imul(U,rt)|0,i=(i=i+Math.imul(U,nt)|0)+Math.imul(j,rt)|0,o=o+Math.imul(j,nt)|0,n=n+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(B,ut)|0,o=o+Math.imul(B,ft)|0,n=n+Math.imul(x,ht)|0,i=(i=i+Math.imul(x,lt)|0)+Math.imul(E,ht)|0,o=o+Math.imul(E,lt)|0;var Pt=(f+(n=n+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,pt)|0))<<13)|0;f=((o=o+Math.imul(S,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(L,rt),i=(i=Math.imul(L,nt))+Math.imul(F,rt)|0,o=Math.imul(F,nt),n=n+Math.imul(U,ot)|0,i=(i=i+Math.imul(U,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,n=n+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ft)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ft)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(B,ht)|0,o=o+Math.imul(B,lt)|0;var Bt=(f+(n=n+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,mt)|0)+Math.imul(E,pt)|0))<<13)|0;f=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),n=n+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ft)|0)+Math.imul(j,ut)|0,o=o+Math.imul(j,ft)|0,n=n+Math.imul(R,ht)|0,i=(i=i+Math.imul(R,lt)|0)+Math.imul(I,ht)|0,o=o+Math.imul(I,lt)|0;var Tt=(f+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(B,pt)|0))<<13)|0;f=((o=o+Math.imul(B,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(L,ut),i=(i=Math.imul(L,ft))+Math.imul(F,ut)|0,o=Math.imul(F,ft),n=n+Math.imul(U,ht)|0,i=(i=i+Math.imul(U,lt)|0)+Math.imul(j,ht)|0,o=o+Math.imul(j,lt)|0;var Rt=(f+(n=n+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(I,pt)|0))<<13)|0;f=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(L,ht),i=(i=Math.imul(L,lt))+Math.imul(F,ht)|0,o=Math.imul(F,lt);var It=(f+(n=n+Math.imul(U,pt)|0)|0)+((8191&(i=(i=i+Math.imul(U,mt)|0)+Math.imul(j,pt)|0))<<13)|0;f=((o=o+Math.imul(j,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Ct=(f+(n=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,mt))+Math.imul(F,pt)|0))<<13)|0;return f=((o=Math.imul(F,mt))+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,u[0]=bt,u[1]=vt,u[2]=yt,u[3]=gt,u[4]=wt,u[5]=_t,u[6]=kt,u[7]=Mt,u[8]=St,u[9]=At,u[10]=xt,u[11]=Et,u[12]=Ot,u[13]=Pt,u[14]=Bt,u[15]=Tt,u[16]=Rt,u[17]=It,u[18]=Ct,0!==f&&(u[19]=f,r.length++),r};function m(t,e,r){return(new b).mulp(t,e,r)}function b(t,e){this.x=t,this.y=e}Math.imul||(p=d),a.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):r<63?d(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,t,e):m(this,t,e)},b.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},b.prototype.permute=function(t,e,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=n/67108864|0,e+=o>>>26,this.words[r]=67108863&o}return 0!==e&&(this.words[r]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(e=0;e>>26-r}a&&(this.words[e]=a,this.length++)}if(0!==n){for(e=this.length-1;e>=0;e--)this.words[e+n]=this.words[e];for(e=0;e=0),n=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,f=0;f=0&&(0!==c||f>=n);f--){var h=0|this.words[f];this.words[f]=c<<26-o|h>>>o,c=h&s}return u&&0!==c&&(u.words[u.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,r){return i(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){i("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,n=1<=0);var e=t%26,r=(t-e)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var n=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(i("number"==typeof t),i(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[n+r]=67108863&o}for(;n>26,this.words[n+r]=67108863&o;if(0===s)return this.strip();for(i(-1===s),s=0,n=0;n>26,this.words[n]=67108863&o;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==e){(s=new a(null)).length=u+1,s.words=new Array(s.length);for(var f=0;f=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s.strip(),n.strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return i(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(n=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:n,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var n,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){i(t<=67108863);for(var e=(1<<26)%t,r=0,n=this.length-1;n>=0;n--)r=(e*r+(0|this.words[n]))%t;return r},a.prototype.idivn=function(t){i(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var n=(0|this.words[r])+67108864*e;this.words[r]=n/t|0,e=n%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n=new a(1),o=new a(0),s=new a(0),u=new a(1),f=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++f;for(var c=r.clone(),h=e.clone();!e.isZero();){for(var l=0,d=1;0==(e.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(e.iushrn(l);l-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(c),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,m=1;0==(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(c),u.isub(h)),s.iushrn(1),u.iushrn(1);e.cmp(r)>=0?(e.isub(r),n.isub(s),o.isub(u)):(r.isub(e),s.isub(n),u.isub(o))}return{a:s,b:u,gcd:r.iushln(f)}},a.prototype._invmp=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n,o=new a(1),s=new a(0),u=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var f=0,c=1;0==(e.words[0]&c)&&f<26;++f,c<<=1);if(f>0)for(e.iushrn(f);f-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(n=0===e.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(t),n},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){i("number"==typeof t);var e=t%26,r=(t-e)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),i(t<=67108863,"Number is too big");var n=0|this.words[0];e=n===t?0:nt.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new M(t)},a.prototype.toRed=function(t){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return i(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return i(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var v={k256:null,p224:null,p192:null,p25519:null};function y(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function g(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function k(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function M(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else i(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function S(t){M.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},y.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):r.strip(),r},y.prototype.split=function(t,e){t.iushrn(this.n,0,e)},y.prototype.imulK=function(t){return t.imul(this.k)},o(g,y),g.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},g.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(v[t])return v[t];var e;if("k256"===t)e=new g;else if("p224"===t)e=new w;else if("p192"===t)e=new _;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new k}return v[t]=e,e},M.prototype._verify1=function(t){i(0===t.negative,"red works only with positives"),i(t.red,"red works only with red numbers")},M.prototype._verify2=function(t,e){i(0==(t.negative|e.negative),"red works only with positives"),i(t.red&&t.red===e.red,"red works only with red numbers")},M.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},M.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},M.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},M.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},M.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},M.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},M.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},M.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},M.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},M.prototype.isqr=function(t){return this.imul(t,t.clone())},M.prototype.sqr=function(t){return this.mul(t,t)},M.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(i(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),u=s.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,f).cmp(u);)c.redIAdd(u);for(var h=this.pow(c,n),l=this.pow(t,n.addn(1).iushrn(1)),d=this.pow(t,n),p=o;0!==d.cmp(s);){for(var m=d,b=0;0!==m.cmp(s);b++)m=m.redSqr();i(b=0;n--){for(var f=e.words[n],c=u-1;c>=0;c--){var h=f>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}u=26}return i},M.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},M.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new S(t)},o(S,M),S.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},S.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},S.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t)}).call(this,r(17)(t))},function(t,e){},function(t,e,r){"use strict"; - /*! https://mths.be/utf8js v3.0.0 by @mathias */!function(t){var e,r,n,i=String.fromCharCode;function o(t){for(var e,r,n=[],i=0,o=t.length;i=55296&&e<=56319&&i=55296&&t<=57343)throw Error("Lone surrogate U+"+t.toString(16).toUpperCase()+" is not a scalar value")}function s(t,e){return i(t>>e&63|128)}function u(t){if(0==(4294967168&t))return i(t);var e="";return 0==(4294965248&t)?e=i(t>>6&31|192):0==(4294901760&t)?(a(t),e=i(t>>12&15|224),e+=s(t,6)):0==(4292870144&t)&&(e=i(t>>18&7|240),e+=s(t,12),e+=s(t,6)),e+=i(63&t|128)}function f(){if(n>=r)throw Error("Invalid byte index");var t=255&e[n];if(n++,128==(192&t))return 63&t;throw Error("Invalid continuation byte")}function c(){var t,i;if(n>r)throw Error("Invalid byte index");if(n==r)return!1;if(t=255&e[n],n++,0==(128&t))return t;if(192==(224&t)){if((i=(31&t)<<6|f())>=128)return i;throw Error("Invalid continuation byte")}if(224==(240&t)){if((i=(15&t)<<12|f()<<6|f())>=2048)return a(i),i;throw Error("Invalid continuation byte")}if(240==(248&t)&&(i=(7&t)<<18|f()<<12|f()<<6|f())>=65536&&i<=1114111)return i;throw Error("Invalid UTF-8 detected")}t.version="3.0.0",t.encode=function(t){for(var e=o(t),r=e.length,n=-1,i="";++n65535&&(o+=i((e-=65536)>>>10&1023|55296),e=56320|1023&e),o+=i(e);return o}(s)}}(e)},function(t,e,r){"use strict";var n=r(0)(r(2));Object.defineProperty(e,"__esModule",{value:!0});var i=r(219);function o(t){return"string"==typeof t&&(!!/^(0x)?[0-9a-f]{512}$/i.test(t)&&!(!/^(0x)?[0-9a-f]{512}$/.test(t)&&!/^(0x)?[0-9A-F]{512}$/.test(t)))}function a(t,e){"object"===(0,n.default)(e)&&e.constructor===Uint8Array&&(e=i.bytesToHex(e));for(var r=i.keccak256(e).replace("0x",""),o=0;o<12;o+=4){var a=(parseInt(r.substr(o,2),16)<<8)+parseInt(r.substr(o+2,2),16)&2047,u=1<=48&&t<=57)return t-48;if(t>=65&&t<=70)return t-55;if(t>=97&&t<=102)return t-87;throw new Error("invalid bloom")}function u(t){return"string"==typeof t&&(!!/^(0x)?[0-9a-f]{64}$/i.test(t)&&!(!/^(0x)?[0-9a-f]{64}$/.test(t)&&!/^(0x)?[0-9A-F]{64}$/.test(t)))}function f(t){return"string"==typeof t&&(!!t.match(/^(0x)?[0-9a-fA-F]{40}$/)||!!t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/))}e.isBloom=o,e.isInBloom=a,e.isUserEthereumAddressInBloom=function(t,e){if(!o(t))throw new Error("Invalid bloom given");if(!f(e))throw new Error('Invalid ethereum address given: "'.concat(e,'"'));return a(t,i.padLeft(e,64))},e.isContractAddressInBloom=function(t,e){if(!o(t))throw new Error("Invalid bloom given");if(!f(e))throw new Error('Invalid contract address given: "'.concat(e,'"'));return a(t,e)},e.isTopicInBloom=function(t,e){if(!o(t))throw new Error("Invalid bloom given");if(!u(e))throw new Error("Invalid topic");return a(t,e)},e.isTopic=u,e.isAddress=f},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(220);function i(t){if(null==t)throw new Error("cannot convert null value to array");if("string"==typeof t){var e=t.match(/^(0x)?[0-9a-fA-F]*$/);if(!e)throw new Error("invalid hexidecimal string");if("0x"!==e[1])throw new Error("hex string must have 0x prefix");(t=t.substring(2)).length%2&&(t="0"+t);for(var r=[],n=0;n=256||parseInt(String(r))!=r)return!1}return!0}(t))return o(new Uint8Array(t));throw new Error("invalid arrayify value")}function o(t){var e=arguments;return void 0!==t.slice||(t.slice=function(){var r=Array.prototype.slice.call(e);return o(new Uint8Array(Array.prototype.slice.apply(t,r)))}),t}e.keccak256=function(t){return"0x"+n.keccak_256(i(t))},e.padLeft=function(t,e){var r=/^0x/i.test(t)||"number"==typeof t,n=e-(t=t.toString().replace(/^0x/i,"")).length+1>=0?e-t.length+1:0;return(r?"0x":"")+new Array(n).join("0")+t},e.bytesToHex=function(t){for(var e=[],r=0;r>>4).toString(16)),e.push((15&t[r]).toString(16));return"0x".concat(e.join("").replace(/^0+/,""))},e.toByteArray=i},function(t,e,r){"use strict";(function(t,n,i){var o,a=r(0)(r(2)); - /** - * [js-sha3]{@link https://github.com/emn178/js-sha3} - * - * @version 0.8.0 - * @author Chen, Yi-Cyuan [emn178@gmail.com] - * @copyright Chen, Yi-Cyuan 2015-2018 - * @license MIT - */ - !function(){var s="input is invalid type",u="object"===("undefined"==typeof window?"undefined":(0,a.default)(window)),f=u?window:{};f.JS_SHA3_NO_WINDOW&&(u=!1);var c=!u&&"object"===("undefined"==typeof self?"undefined":(0,a.default)(self));!f.JS_SHA3_NO_NODE_JS&&"object"===(void 0===t?"undefined":(0,a.default)(t))&&t.versions&&t.versions.node?f=n:c&&(f=self);var h=!f.JS_SHA3_NO_COMMON_JS&&"object"===(0,a.default)(i)&&i.exports,l=r(72),d=!f.JS_SHA3_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,p="0123456789abcdef".split(""),m=[4,1024,262144,67108864],b=[0,8,16,24],v=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],y=[224,256,384,512],g=[128,256],w=["hex","buffer","arrayBuffer","array","digest"],_={128:168,256:136};!f.JS_SHA3_NO_NODE_JS&&Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),!d||!f.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(t){return"object"===(0,a.default)(t)&&t.buffer&&t.buffer.constructor===ArrayBuffer});for(var k=function(t,e,r){return function(n){return new N(t,e,t).update(n)[r]()}},M=function(t,e,r){return function(n,i){return new N(t,e,i).update(n)[r]()}},S=function(t,e,r){return function(e,n,i,o){return P["cshake"+t].update(e,n,i,o)[r]()}},A=function(t,e,r){return function(e,n,i,o){return P["kmac"+t].update(e,n,i,o)[r]()}},x=function(t,e,r,n){for(var i=0;i>5,this.byteCount=this.blockCount<<2,this.outputBlocks=r>>5,this.extraBytes=(31&r)>>3;for(var n=0;n<50;++n)this.s[n]=0}function L(t,e,r){N.call(this,t,e,r)}N.prototype.update=function(t){if(this.finalized)throw new Error("finalize already called");var e,r=(0,a.default)(t);if("string"!==r){if("object"!==r)throw new Error(s);if(null===t)throw new Error(s);if(d&&t.constructor===ArrayBuffer)t=new Uint8Array(t);else if(!(Array.isArray(t)||d&&ArrayBuffer.isView(t)))throw new Error(s);e=!0}for(var n,i,o=this.blocks,u=this.byteCount,f=t.length,c=this.blockCount,h=0,l=this.s;h>2]|=t[h]<>2]|=i<>2]|=(192|i>>6)<>2]|=(128|63&i)<=57344?(o[n>>2]|=(224|i>>12)<>2]|=(128|i>>6&63)<>2]|=(128|63&i)<>2]|=(240|i>>18)<>2]|=(128|i>>12&63)<>2]|=(128|i>>6&63)<>2]|=(128|63&i)<=u){for(this.start=n-u,this.block=o[c],n=0;n>=8);r>0;)i.unshift(r),r=255&(t>>=8),++n;return e?i.push(n):i.unshift(n),this.update(i),i.length},N.prototype.encodeString=function(t){var e,r=(0,a.default)(t);if("string"!==r){if("object"!==r)throw new Error(s);if(null===t)throw new Error(s);if(d&&t.constructor===ArrayBuffer)t=new Uint8Array(t);else if(!(Array.isArray(t)||d&&ArrayBuffer.isView(t)))throw new Error(s);e=!0}var n=0,i=t.length;if(e)n=i;else for(var o=0;o=57344?n+=3:(u=65536+((1023&u)<<10|1023&t.charCodeAt(++o)),n+=4)}return n+=this.encode(8*n),this.update(t),n},N.prototype.bytepad=function(t,e){for(var r=this.encode(e),n=0;n>2]|=this.padding[3&e],this.lastByteIndex===this.byteCount)for(t[0]=t[r],e=1;e>4&15]+p[15&t]+p[t>>12&15]+p[t>>8&15]+p[t>>20&15]+p[t>>16&15]+p[t>>28&15]+p[t>>24&15];a%e==0&&(F(r),o=0)}return i&&(t=r[o],s+=p[t>>4&15]+p[15&t],i>1&&(s+=p[t>>12&15]+p[t>>8&15]),i>2&&(s+=p[t>>20&15]+p[t>>16&15])),s},N.prototype.arrayBuffer=function(){this.finalize();var t,e=this.blockCount,r=this.s,n=this.outputBlocks,i=this.extraBytes,o=0,a=0,s=this.outputBits>>3;t=i?new ArrayBuffer(n+1<<2):new ArrayBuffer(s);for(var u=new Uint32Array(t);a>8&255,u[t+2]=e>>16&255,u[t+3]=e>>24&255;s%r==0&&F(n)}return o&&(t=s<<2,e=n[a],u[t]=255&e,o>1&&(u[t+1]=e>>8&255),o>2&&(u[t+2]=e>>16&255)),u},L.prototype=new N,L.prototype.finalize=function(){return this.encode(this.outputBits,!0),N.prototype.finalize.call(this)};var F=function(t){var e,r,n,i,o,a,s,u,f,c,h,l,d,p,m,b,y,g,w,_,k,M,S,A,x,E,O,P,B,T,R,I,C,U,j,N,L,F,D,q,H,z,K,G,V,W,Z,J,X,Y,$,Q,tt,et,rt,nt,it,ot,at,st,ut,ft,ct;for(n=0;n<48;n+=2)i=t[0]^t[10]^t[20]^t[30]^t[40],o=t[1]^t[11]^t[21]^t[31]^t[41],a=t[2]^t[12]^t[22]^t[32]^t[42],s=t[3]^t[13]^t[23]^t[33]^t[43],u=t[4]^t[14]^t[24]^t[34]^t[44],f=t[5]^t[15]^t[25]^t[35]^t[45],c=t[6]^t[16]^t[26]^t[36]^t[46],h=t[7]^t[17]^t[27]^t[37]^t[47],e=(l=t[8]^t[18]^t[28]^t[38]^t[48])^(a<<1|s>>>31),r=(d=t[9]^t[19]^t[29]^t[39]^t[49])^(s<<1|a>>>31),t[0]^=e,t[1]^=r,t[10]^=e,t[11]^=r,t[20]^=e,t[21]^=r,t[30]^=e,t[31]^=r,t[40]^=e,t[41]^=r,e=i^(u<<1|f>>>31),r=o^(f<<1|u>>>31),t[2]^=e,t[3]^=r,t[12]^=e,t[13]^=r,t[22]^=e,t[23]^=r,t[32]^=e,t[33]^=r,t[42]^=e,t[43]^=r,e=a^(c<<1|h>>>31),r=s^(h<<1|c>>>31),t[4]^=e,t[5]^=r,t[14]^=e,t[15]^=r,t[24]^=e,t[25]^=r,t[34]^=e,t[35]^=r,t[44]^=e,t[45]^=r,e=u^(l<<1|d>>>31),r=f^(d<<1|l>>>31),t[6]^=e,t[7]^=r,t[16]^=e,t[17]^=r,t[26]^=e,t[27]^=r,t[36]^=e,t[37]^=r,t[46]^=e,t[47]^=r,e=c^(i<<1|o>>>31),r=h^(o<<1|i>>>31),t[8]^=e,t[9]^=r,t[18]^=e,t[19]^=r,t[28]^=e,t[29]^=r,t[38]^=e,t[39]^=r,t[48]^=e,t[49]^=r,p=t[0],m=t[1],W=t[11]<<4|t[10]>>>28,Z=t[10]<<4|t[11]>>>28,P=t[20]<<3|t[21]>>>29,B=t[21]<<3|t[20]>>>29,st=t[31]<<9|t[30]>>>23,ut=t[30]<<9|t[31]>>>23,z=t[40]<<18|t[41]>>>14,K=t[41]<<18|t[40]>>>14,U=t[2]<<1|t[3]>>>31,j=t[3]<<1|t[2]>>>31,b=t[13]<<12|t[12]>>>20,y=t[12]<<12|t[13]>>>20,J=t[22]<<10|t[23]>>>22,X=t[23]<<10|t[22]>>>22,T=t[33]<<13|t[32]>>>19,R=t[32]<<13|t[33]>>>19,ft=t[42]<<2|t[43]>>>30,ct=t[43]<<2|t[42]>>>30,et=t[5]<<30|t[4]>>>2,rt=t[4]<<30|t[5]>>>2,N=t[14]<<6|t[15]>>>26,L=t[15]<<6|t[14]>>>26,g=t[25]<<11|t[24]>>>21,w=t[24]<<11|t[25]>>>21,Y=t[34]<<15|t[35]>>>17,$=t[35]<<15|t[34]>>>17,I=t[45]<<29|t[44]>>>3,C=t[44]<<29|t[45]>>>3,A=t[6]<<28|t[7]>>>4,x=t[7]<<28|t[6]>>>4,nt=t[17]<<23|t[16]>>>9,it=t[16]<<23|t[17]>>>9,F=t[26]<<25|t[27]>>>7,D=t[27]<<25|t[26]>>>7,_=t[36]<<21|t[37]>>>11,k=t[37]<<21|t[36]>>>11,Q=t[47]<<24|t[46]>>>8,tt=t[46]<<24|t[47]>>>8,G=t[8]<<27|t[9]>>>5,V=t[9]<<27|t[8]>>>5,E=t[18]<<20|t[19]>>>12,O=t[19]<<20|t[18]>>>12,ot=t[29]<<7|t[28]>>>25,at=t[28]<<7|t[29]>>>25,q=t[38]<<8|t[39]>>>24,H=t[39]<<8|t[38]>>>24,M=t[48]<<14|t[49]>>>18,S=t[49]<<14|t[48]>>>18,t[0]=p^~b&g,t[1]=m^~y&w,t[10]=A^~E&P,t[11]=x^~O&B,t[20]=U^~N&F,t[21]=j^~L&D,t[30]=G^~W&J,t[31]=V^~Z&X,t[40]=et^~nt&ot,t[41]=rt^~it&at,t[2]=b^~g&_,t[3]=y^~w&k,t[12]=E^~P&T,t[13]=O^~B&R,t[22]=N^~F&q,t[23]=L^~D&H,t[32]=W^~J&Y,t[33]=Z^~X&$,t[42]=nt^~ot&st,t[43]=it^~at&ut,t[4]=g^~_&M,t[5]=w^~k&S,t[14]=P^~T&I,t[15]=B^~R&C,t[24]=F^~q&z,t[25]=D^~H&K,t[34]=J^~Y&Q,t[35]=X^~$&tt,t[44]=ot^~st&ft,t[45]=at^~ut&ct,t[6]=_^~M&p,t[7]=k^~S&m,t[16]=T^~I&A,t[17]=R^~C&x,t[26]=q^~z&U,t[27]=H^~K&j,t[36]=Y^~Q&G,t[37]=$^~tt&V,t[46]=st^~ft&et,t[47]=ut^~ct&rt,t[8]=M^~p&b,t[9]=S^~m&y,t[18]=I^~A&E,t[19]=C^~x&O,t[28]=z^~U&N,t[29]=K^~j&L,t[38]=Q^~G&W,t[39]=tt^~V&Z,t[48]=ft^~et&nt,t[49]=ct^~rt&it,t[0]^=v[n],t[1]^=v[n+1]};if(h)i.exports=P;else{for(T=0;T32||n256)throw new Error("Invalid uint"+n+" size");if((s=a(e)).bitLength()>n)throw new Error("Supplied uint exceeds width: "+n+" vs "+s.bitLength());if(s.lt(new i(0)))throw new Error("Supplied uint "+s.toString()+" is negative");return n?o.leftPad(s.toString("hex"),n/8*2):s}if(t.startsWith("int")){if(n%8||n<8||n>256)throw new Error("Invalid int"+n+" size");if((s=a(e)).bitLength()>n)throw new Error("Supplied int exceeds width: "+n+" vs "+s.bitLength());return s.lt(new i(0))?s.toTwos(n).toString("hex"):n?o.leftPad(s.toString("hex"),n/8*2):s}throw new Error("Unsupported or invalid type: "+t)},u=function(t){if(Array.isArray(t))throw new Error("Autodetection of array types is not supported.");var e,r,a="";if(t&&"object"===(0,n.default)(t)&&(t.hasOwnProperty("v")||t.hasOwnProperty("t")||t.hasOwnProperty("value")||t.hasOwnProperty("type"))?(e=t.hasOwnProperty("t")?t.t:t.type,a=t.hasOwnProperty("v")?t.v:t.value):(e=o.toHex(t,!0),a=o.toHex(t),e.startsWith("int")||e.startsWith("uint")||(e="bytes")),!e.startsWith("int")&&!e.startsWith("uint")||"string"!=typeof a||/^(-)?0x/i.test(a)||(a=new i(a)),Array.isArray(a)){if((r=function(t){var e=/^\D+\d*\[(\d+)\]$/.exec(t);return e?parseInt(e[1],10):null}(e))&&a.length!==r)throw new Error(e+" is not matching the given array "+JSON.stringify(a));r=a.length}return Array.isArray(a)?a.map((function(t){return s(e,t,r).toString("hex").replace("0x","")})).join(""):s(e,a,r).toString("hex").replace("0x","")};t.exports={soliditySha3:function(){var t=Array.prototype.slice.call(arguments),e=t.map(u);return o.sha3("0x"+e.join(""))},soliditySha3Raw:function(){return o.sha3Raw("0x"+Array.prototype.slice.call(arguments).map(u).join(""))},encodePacked:function(){var t=Array.prototype.slice.call(arguments),e=t.map(u);return"0x"+e.join("").toLowerCase()}}},function(t,e,r){"use strict";var n=r(113),i=r(10).errors,o=function(t){this.requestManager=t,this.requests=[]};o.prototype.add=function(t){this.requests.push(t)},o.prototype.execute=function(){var t=this.requests;this.requestManager.sendBatch(t,(function(e,r){r=r||[],t.map((function(t,e){return r[e]||{}})).forEach((function(e,r){if(t[r].callback){if(e&&e.error)return t[r].callback(i.ErrorResponse(e));if(!n.isValidResponse(e))return t[r].callback(i.InvalidResponse(e));try{t[r].callback(null,t[r].format?t[r].format(e.result):e.result)}catch(e){t[r].callback(e)}}}))}))},t.exports=o},function(t,e,r){"use strict";var n,i=null;try{n=Function("return this")()}catch(t){n=window}void 0!==n.ethereum?i=n.ethereum:void 0!==n.web3&&n.web3.currentProvider&&(n.web3.currentProvider.sendAsync&&(n.web3.currentProvider.send=n.web3.currentProvider.sendAsync,delete n.web3.currentProvider.sendAsync),!n.web3.currentProvider.on&&n.web3.currentProvider.connection&&"ipcProviderWrapper"===n.web3.currentProvider.connection.constructor.name&&(n.web3.currentProvider.on=function(t,e){if("function"!=typeof e)throw new Error("The second parameter callback must be a function.");switch(t){case"data":this.connection.on("data",(function(t){var r="";t=t.toString();try{r=JSON.parse(t)}catch(r){return e(new Error("Couldn't parse response data"+t))}r.id||-1===r.method.indexOf("_subscription")||e(null,r)}));break;default:this.connection.on(t,e)}}),i=n.web3.currentProvider),t.exports=i},function(t,e,r){"use strict";var n=r(73),i=r(225),o=r(10).errors,a=r(230).w3cwebsocket,s=function(t,e){n.call(this),e=e||{},this.url=t,this._customTimeout=e.timeout||15e3,this.headers=e.headers||{},this.protocol=e.protocol||void 0,this.reconnectOptions=Object.assign({auto:!1,delay:5e3,maxAttempts:!1,onTimeout:!1},e.reconnect),this.clientConfig=e.clientConfig||void 0,this.requestOptions=e.requestOptions||void 0,this.DATA="data",this.CLOSE="close",this.ERROR="error",this.CONNECT="connect",this.RECONNECT="reconnect",this.connection=null,this.requestQueue=new Map,this.responseQueue=new Map,this.reconnectAttempts=0,this.reconnecting=!1;var r=i.parseURL(t);r.username&&r.password&&(this.headers.authorization="Basic "+i.btoa(r.username+":"+r.password)),r.auth&&(this.headers.authorization="Basic "+i.btoa(r.auth)),Object.defineProperty(this,"connected",{get:function(){return this.connection&&this.connection.readyState===this.connection.OPEN},enumerable:!0}),this.connect()};(s.prototype=Object.create(n.prototype)).constructor=s,s.prototype.connect=function(){this.connection=new a(this.url,this.protocol,void 0,this.headers,this.requestOptions,this.clientConfig),this._addSocketListeners()},s.prototype._onMessage=function(t){var e=this;this._parseResponse("string"==typeof t.data?t.data:"").forEach((function(t){if(t.method&&-1!==t.method.indexOf("_subscription"))e.emit(e.DATA,t);else{var r=t.id;Array.isArray(t)&&(r=t[0].id),e.responseQueue.has(r)&&(void 0!==e.responseQueue.get(r).callback&&e.responseQueue.get(r).callback(!1,t),e.responseQueue.delete(r))}}))},s.prototype._onConnect=function(){if(this.emit(this.CONNECT),this.reconnectAttempts=0,this.reconnecting=!1,this.requestQueue.size>0){var t=this;this.requestQueue.forEach((function(e,r){t.send(e.payload,e.callback),t.requestQueue.delete(r)}))}},s.prototype._onClose=function(t){var e=this;!this.reconnectOptions.auto||[1e3,1001].includes(t.code)&&!1!==t.wasClean?(this.emit(this.CLOSE,t),this.requestQueue.size>0&&this.requestQueue.forEach((function(r,n){r.callback(o.ConnectionNotOpenError(t)),e.requestQueue.delete(n)})),this.responseQueue.size>0&&this.responseQueue.forEach((function(r,n){r.callback(o.InvalidConnection("on WS",t)),e.responseQueue.delete(n)})),this._removeSocketListeners(),this.removeAllListeners()):this.reconnect()},s.prototype._addSocketListeners=function(){this.connection.addEventListener("message",this._onMessage.bind(this)),this.connection.addEventListener("open",this._onConnect.bind(this)),this.connection.addEventListener("close",this._onClose.bind(this))},s.prototype._removeSocketListeners=function(){this.connection.removeEventListener("message",this._onMessage),this.connection.removeEventListener("open",this._onConnect),this.connection.removeEventListener("close",this._onClose)},s.prototype._parseResponse=function(t){var e=this,r=[];return t.replace(/\}[\n\r]?\{/g,"}|--|{").replace(/\}\][\n\r]?\[\{/g,"}]|--|[{").replace(/\}[\n\r]?\[\{/g,"}|--|[{").replace(/\}\][\n\r]?\{/g,"}]|--|{").split("|--|").forEach((function(t){e.lastChunk&&(t=e.lastChunk+t);var n=null;try{n=JSON.parse(t)}catch(r){return e.lastChunk=t,clearTimeout(e.lastChunkTimeout),void(e.lastChunkTimeout=setTimeout((function(){e.reconnectOptions.auto&&e.reconnectOptions.onTimeout?e.reconnect():(e.emit(e.ERROR,o.ConnectionTimeout(e._customTimeout)),e.requestQueue.size>0&&e.requestQueue.forEach((function(t,r){t.callback(o.ConnectionTimeout(e._customTimeout)),e.requestQueue.delete(r)})))}),e._customTimeout))}clearTimeout(e.lastChunkTimeout),e.lastChunk=null,n&&r.push(n)})),r},s.prototype.send=function(t,e){var r=t.id,n={payload:t,callback:e};if(Array.isArray(t)&&(r=t[0].id),this.connection.readyState===this.connection.CONNECTING||this.reconnecting)this.requestQueue.set(r,n);else{if(this.connection.readyState!==this.connection.OPEN)return this.requestQueue.delete(r),this.emit(this.ERROR,o.ConnectionNotOpenError()),void n.callback(o.ConnectionNotOpenError());this.responseQueue.set(r,n),this.requestQueue.delete(r);try{this.connection.send(JSON.stringify(n.payload))}catch(t){n.callback(t),this.responseQueue.delete(r)}}},s.prototype.reset=function(){this.responseQueue.clear(),this.requestQueue.clear(),this.removeAllListeners(),this._removeSocketListeners(),this._addSocketListeners()},s.prototype.disconnect=function(t,e){this._removeSocketListeners(),this.connection.close(t||1e3,e)},s.prototype.supportsSubscriptions=function(){return!0},s.prototype.reconnect=function(){var t=this;this.reconnecting=!0,this.responseQueue.size>0&&this.responseQueue.forEach((function(e,r){e.callback(o.PendingRequestsOnReconnectingError()),t.responseQueue.delete(r)})),!this.reconnectOptions.maxAttempts||this.reconnectAttempts0&&this.requestQueue.forEach((function(e,r){e.callback(o.MaxAttemptsReachedOnReconnectingError()),t.requestQueue.delete(r)})))},t.exports=s},function(t,e,r){"use strict";(function(e,n){var i="[object process]"===Object.prototype.toString.call(void 0!==e?e:0),o="undefined"!=typeof navigator&&"ReactNative"===navigator.product,a=null,s=null;if(i||o){a=function(t){return n.from(t).toString("base64")};var u=r(45);if(u.URL){var f=u.URL;s=function(t){return new f(t)}}else s=r(45).parse}else a=btoa.bind(window),s=function(t){return new URL(t)};t.exports={parseURL:s,btoa:a}}).call(this,r(6),r(1).Buffer)},function(t,e,r){"use strict";var n=r(0)(r(2));t.exports={isString:function(t){return"string"==typeof t},isObject:function(t){return"object"===(0,n.default)(t)&&null!==t},isNull:function(t){return null===t},isNullOrUndefined:function(t){return null==t}}},function(t,e,r){"use strict";e.decode=e.parse=r(228),e.encode=e.stringify=r(229)},function(t,e,r){"use strict";function n(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.exports=function(t,e,r,o){e=e||"&",r=r||"=";var a={};if("string"!=typeof t||0===t.length)return a;var s=/\+/g;t=t.split(e);var u=1e3;o&&"number"==typeof o.maxKeys&&(u=o.maxKeys);var f=t.length;u>0&&f>u&&(f=u);for(var c=0;c=0?(h=m.substr(0,b),l=m.substr(b+1)):(h=m,l=""),d=decodeURIComponent(h),p=decodeURIComponent(l),n(a,d)?i(a[d])?a[d].push(p):a[d]=[a[d],p]:a[d]=p}return a};var i=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)}},function(t,e,r){"use strict";var n=r(0)(r(2)),i=function(t){switch((0,n.default)(t)){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};t.exports=function(t,e,r,u){return e=e||"&",r=r||"=",null===t&&(t=void 0),"object"===(0,n.default)(t)?a(s(t),(function(n){var s=encodeURIComponent(i(n))+r;return o(t[n])?a(t[n],(function(t){return s+encodeURIComponent(i(t))})).join(e):s+encodeURIComponent(i(t[n]))})).join(e):u?encodeURIComponent(i(u))+r+encodeURIComponent(i(t)):""};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function a(t,e){if(t.map)return t.map(e);for(var r=[],n=0;n (https://github.com/theturtle32)","contributors":["Iñaki Baz Castillo (http://dev.sipdoc.net)"],"version":"1.0.34","repository":{"type":"git","url":"https://github.com/theturtle32/WebSocket-Node.git"},"homepage":"https://github.com/theturtle32/WebSocket-Node","engines":{"node":">=4.0.0"},"dependencies":{"bufferutil":"^4.0.1","debug":"^2.2.0","es5-ext":"^0.10.50","typedarray-to-buffer":"^3.1.5","utf-8-validate":"^5.0.2","yaeti":"^0.0.6"},"devDependencies":{"buffer-equal":"^1.0.0","gulp":"^4.0.2","gulp-jshint":"^2.0.4","jshint-stylish":"^2.2.1","jshint":"^2.0.0","tape":"^4.9.1"},"config":{"verbose":false},"scripts":{"test":"tape test/unit/*.js","gulp":"gulp"},"main":"index","directories":{"lib":"./lib"},"browser":"lib/browser.js","license":"Apache-2.0"}')},function(t,e,r){"use strict";var n=r(10).errors,i=r(235).XMLHttpRequest,o=r(74),a=r(123),s=function(t,e){e=e||{},this.withCredentials=e.withCredentials||!1,this.timeout=e.timeout||0,this.headers=e.headers,this.agent=e.agent,this.connected=!1;var r=!1!==e.keepAlive;this.host=t||"http://localhost:8545",this.agent||("https"===this.host.substring(0,5)?this.httpsAgent=new a.Agent({keepAlive:r}):this.httpAgent=new o.Agent({keepAlive:r}))};s.prototype._prepareRequest=function(){var t;if("undefined"!=typeof XMLHttpRequest)t=new XMLHttpRequest;else{t=new i;var e={httpsAgent:this.httpsAgent,httpAgent:this.httpAgent,baseUrl:this.baseUrl};this.agent&&(e.httpsAgent=this.agent.https,e.httpAgent=this.agent.http,e.baseUrl=this.agent.baseUrl),t.nodejsSet(e)}return t.open("POST",this.host,!0),t.setRequestHeader("Content-Type","application/json"),t.timeout=this.timeout,t.withCredentials=this.withCredentials,this.headers&&this.headers.forEach((function(e){t.setRequestHeader(e.name,e.value)})),t},s.prototype.send=function(t,e){var r=this,i=this._prepareRequest();i.onreadystatechange=function(){if(4===i.readyState&&1!==i.timeout){var t=i.responseText,o=null;try{t=JSON.parse(t)}catch(t){o=n.InvalidResponse(i.responseText)}r.connected=!0,e(o,t)}},i.ontimeout=function(){r.connected=!1,e(n.ConnectionTimeout(this.timeout))};try{i.send(JSON.stringify(t))}catch(t){this.connected=!1,e(n.InvalidConnection(this.host))}},s.prototype.disconnect=function(){},s.prototype.supportsSubscriptions=function(){return!1},t.exports=s},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){for(var r in t)e.hasOwnProperty(r)||(e[r]=t[r])}(r(236));var n=r(77);e.XMLHttpRequestEventTarget=n.XMLHttpRequestEventTarget},function(t,e,r){"use strict";(function(t,n){var i,o=(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},function(t,e){function r(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),a=Object.assign||function(t){for(var e,r=1,n=arguments.length;r=0)return this._url=this._parseUrl(e.headers.location),this._method="GET",this._loweredHeaders["content-type"]&&(delete this._headers[this._loweredHeaders["content-type"]],delete this._loweredHeaders["content-type"]),null!=this._headers["Content-Type"]&&delete this._headers["Content-Type"],delete this._headers["Content-Length"],this.upload._reset(),this._finalizeHeaders(),void this._sendHxxpRequest();this._response=e,this._response.on("data",(function(t){return n._onHttpResponseData(e,t)})),this._response.on("end",(function(){return n._onHttpResponseEnd(e)})),this._response.on("close",(function(){return n._onHttpResponseClose(e)})),this.responseUrl=this._url.href.split("#")[0],this.status=e.statusCode,this.statusText=s.STATUS_CODES[this.status],this._parseResponseHeaders(e);var i=this._responseHeaders["content-length"]||"";this._totalBytes=+i,this._lengthComputable=!!i,this._setReadyState(r.HEADERS_RECEIVED)}},r.prototype._onHttpResponseData=function(t,e){this._response===t&&(this._responseParts.push(new n(e)),this._loadedBytes+=e.length,this.readyState!==r.LOADING&&this._setReadyState(r.LOADING),this._dispatchProgress("progress"))},r.prototype._onHttpResponseEnd=function(t){this._response===t&&(this._parseResponse(),this._request=null,this._response=null,this._setReadyState(r.DONE),this._dispatchProgress("load"),this._dispatchProgress("loadend"))},r.prototype._onHttpResponseClose=function(t){if(this._response===t){var e=this._request;this._setError(),e.abort(),this._setReadyState(r.DONE),this._dispatchProgress("error"),this._dispatchProgress("loadend")}},r.prototype._onHttpTimeout=function(t){this._request===t&&(this._setError(),t.abort(),this._setReadyState(r.DONE),this._dispatchProgress("timeout"),this._dispatchProgress("loadend"))},r.prototype._onHttpRequestError=function(t,e){this._request===t&&(this._setError(),t.abort(),this._setReadyState(r.DONE),this._dispatchProgress("error"),this._dispatchProgress("loadend"))},r.prototype._dispatchProgress=function(t){var e=new r.ProgressEvent(t);e.lengthComputable=this._lengthComputable,e.loaded=this._loadedBytes,e.total=this._totalBytes,this.dispatchEvent(e)},r.prototype._setError=function(){this._request=null,this._response=null,this._responseHeaders=null,this._responseParts=null},r.prototype._parseUrl=function(t,e,r){var n=null==this.nodejsBaseUrl?t:c.resolve(this.nodejsBaseUrl,t),i=c.parse(n,!1,!0);i.hash=null;var o=(i.auth||"").split(":"),a=o[0],s=o[1];return(a||s||e||r)&&(i.auth=(e||a||"")+":"+(r||s||"")),i},r.prototype._parseResponseHeaders=function(t){for(var e in this._responseHeaders={},t.headers){var r=e.toLowerCase();this._privateHeaders[r]||(this._responseHeaders[r]=t.headers[e])}null!=this._mimeOverride&&(this._responseHeaders["content-type"]=this._mimeOverride)},r.prototype._parseResponse=function(){var t=n.concat(this._responseParts);switch(this._responseParts=null,this.responseType){case"json":this.responseText=null;try{this.response=JSON.parse(t.toString("utf-8"))}catch(t){this.response=null}return;case"buffer":return this.responseText=null,void(this.response=t);case"arraybuffer":this.responseText=null;for(var e=new ArrayBuffer(t.length),r=new Uint8Array(e),i=0;i0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r},t.prototype.concat=function(t){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var e,r,i,o=n.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,r=o,i=s,e.copy(r,i),s+=a.data.length,a=a.next;return o},t}(),i&&i.inspect&&i.inspect.custom&&(t.exports.prototype[i.inspect.custom]=function(){var t=i.inspect({length:this.length});return this.constructor.name+" "+t})},function(t,e){},function(t,e,r){"use strict";(function(t,e){!function(t,r){if(!t.setImmediate){var n,i,o,a,s,u=1,f={},c=!1,h=t.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(t);l=l&&l.setTimeout?l:t,"[object process]"==={}.toString.call(t.process)?n=function(t){e.nextTick((function(){p(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,r=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=r,e}}()?t.MessageChannel?((o=new MessageChannel).port1.onmessage=function(t){p(t.data)},n=function(t){o.port2.postMessage(t)}):h&&"onreadystatechange"in h.createElement("script")?(i=h.documentElement,n=function(t){var e=h.createElement("script");e.onreadystatechange=function(){p(t),e.onreadystatechange=null,i.removeChild(e),e=null},i.appendChild(e)}):n=function(t){setTimeout(p,0,t)}:(a="setImmediate$"+Math.random()+"$",s=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(a)&&p(+e.data.slice(a.length))},t.addEventListener?t.addEventListener("message",s,!1):t.attachEvent("onmessage",s),n=function(e){t.postMessage(a+e,"*")}),l.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),r=0;r0&&(i=r),r=t[f++]);)switch(q++,"\n"===r?(z++,H=0):H++,j){case l:if("{"===r)j=p;else if("["===r)j=b;else if(!G(r))return K("Non-whitespace before {[.");continue;case g:case p:if(G(r))continue;if(j===g)N.push(w);else{if("}"===r){s({}),u(),j=N.pop()||d;continue}N.push(m)}if('"'!==r)return K('Malformed object key should start with " ');j=y;continue;case w:case m:if(G(r))continue;if(":"===r)j===m?(N.push(m),void 0!==o&&(s({}),a(o),o=void 0),D++):void 0!==o&&(a(o),o=void 0),j=d;else if("}"===r)void 0!==o&&(s(o),u(),o=void 0),u(),D--,j=N.pop()||d;else{if(","!==r)return K("Bad object");j===m&&N.push(m),void 0!==o&&(s(o),u(),o=void 0),j=g}continue;case b:case d:if(G(r))continue;if(j===b){if(s([]),D++,j=d,"]"===r){u(),D--,j=N.pop()||d;continue}N.push(v)}if('"'===r)j=y;else if("{"===r)j=p;else if("["===r)j=b;else if("t"===r)j=_;else if("f"===r)j=S;else if("n"===r)j=O;else if("-"===r)I+=r;else if("0"===r)I+=r,j=20;else{if(-1==="123456789".indexOf(r))return K("Bad value");I+=r,j=20}continue;case v:if(","===r)N.push(v),void 0!==o&&(s(o),u(),o=void 0),j=d;else{if("]"!==r){if(G(r))continue;return K("Bad array")}void 0!==o&&(s(o),u(),o=void 0),u(),D--,j=N.pop()||d}continue;case y:void 0===o&&(o="");var h=f-1;t:for(;;){for(;F>0;)if(L+=r,r=t.charAt(f++),4===F?(o+=String.fromCharCode(parseInt(L,16)),F=0,h=f-1):F++,!r)break t;if('"'===r&&!C){j=N.pop()||d,o+=t.substring(h,f-1);break}if(!("\\"!==r||C||(C=!0,o+=t.substring(h,f-1),r=t.charAt(f++))))break;if(C){if(C=!1,"n"===r?o+="\n":"r"===r?o+="\r":"t"===r?o+="\t":"f"===r?o+="\f":"b"===r?o+="\b":"u"===r?(F=1,L=""):o+=r,r=t.charAt(f++),h=f-1,r)continue;break}c.lastIndex=f;var V=c.exec(t);if(!V){f=t.length+1,o+=t.substring(h,f-1);break}if(f=V.index+1,!(r=t.charAt(V.index))){o+=t.substring(h,f-1);break}}continue;case _:if(!r)continue;if("r"!==r)return K("Invalid true started with t"+r);j=k;continue;case k:if(!r)continue;if("u"!==r)return K("Invalid true started with tr"+r);j=M;continue;case M:if(!r)continue;if("e"!==r)return K("Invalid true started with tru"+r);s(!0),u(),j=N.pop()||d;continue;case S:if(!r)continue;if("a"!==r)return K("Invalid false started with f"+r);j=A;continue;case A:if(!r)continue;if("l"!==r)return K("Invalid false started with fa"+r);j=x;continue;case x:if(!r)continue;if("s"!==r)return K("Invalid false started with fal"+r);j=E;continue;case E:if(!r)continue;if("e"!==r)return K("Invalid false started with fals"+r);s(!1),u(),j=N.pop()||d;continue;case O:if(!r)continue;if("u"!==r)return K("Invalid null started with n"+r);j=P;continue;case P:if(!r)continue;if("l"!==r)return K("Invalid null started with nu"+r);j=B;continue;case B:if(!r)continue;if("l"!==r)return K("Invalid null started with nul"+r);s(null),u(),j=N.pop()||d;continue;case T:if("."!==r)return K("Leading zero not followed by .");I+=r,j=20;continue;case 20:if(-1!=="0123456789".indexOf(r))I+=r;else if("."===r){if(-1!==I.indexOf("."))return K("Invalid number has two dots");I+=r}else if("e"===r||"E"===r){if(-1!==I.indexOf("e")||-1!==I.indexOf("E"))return K("Invalid number has two exponential");I+=r}else if("+"===r||"-"===r){if("e"!==i&&"E"!==i)return K("Invalid symbol in number");I+=r}else I&&(s(parseFloat(I)),u(),I=""),f--,j=N.pop()||d;continue;default:return K("Unknown state: "+j)}q>=R&&(n=0,void 0!==o&&o.length>65536&&(K("Max buffer length exceeded: textNode"),n=Math.max(n,o.length)),I.length>65536&&(K("Max buffer length exceeded: numberNode"),n=Math.max(n,I.length)),R=65536-n+q)}})),t(n.n).on((function(){if(j===l)return s({}),u(),void(U=!0);j===d&&0===D||K("Unexpected end"),void 0!==o&&(s(o),u(),o=void 0),U=!0}))}},function(t,e,r){r.d(e,"a",(function(){return u})),r.d(e,"b",(function(){return f}));var n=r(19),i=r(3),o=r(2),a=r(20),s=r(0);function u(){return new XMLHttpRequest}function f(t,e,r,u,f,c,h){var l=t(i.m).emit,d=t(i.b).emit,p=0,m=!0;function b(){if("2"===String(e.status)[0]){var t=e.responseText,r=(" "+t.substr(p)).substr(1);r&&l(r),p=Object(o.e)(t)}}function v(e){try{m&&t(i.c).emit(e.status,Object(a.a)(e.getAllResponseHeaders())),m=!1}catch(t){}}t(i.a).on((function(){e.onreadystatechange=null,e.abort()})),"onprogress"in e&&(e.onprogress=b),e.onreadystatechange=function(){switch(e.readyState){case 2:case 3:return v(e);case 4:v(e),"2"===String(e.status)[0]?(b(),t(i.n).emit()):d(Object(i.o)(e.status,e.responseText))}};try{for(var y in e.open(r,u,!0),c)e.setRequestHeader(y,c[y]);Object(n.a)(window.location,Object(n.b)(u))||e.setRequestHeader("X-Requested-With","XMLHttpRequest"),e.withCredentials=h,e.send(f)}catch(t){window.setTimeout(Object(s.j)(d,Object(i.o)(void 0,void 0,t)),0)}}},function(t,e,r){function n(t,e){function r(e){return String(e.port||{"http:":80,"https:":443}[e.protocol||t.protocol])}return!!(e.protocol&&e.protocol!==t.protocol||e.host&&e.host!==t.host||e.host&&r(e)!==r(t))}function i(t){var e=/(\w+:)?(?:\/\/)([\w.-]+)?(?::(\d+))?\/?/.exec(t)||[];return{protocol:e[1]||"",host:e[2]||"",port:e[3]||""}}r.d(e,"a",(function(){return n})),r.d(e,"b",(function(){return i}))},function(t,e,r){function n(t){var e={};return t&&t.split("\r\n").forEach((function(t){var r=t.indexOf(": ");e[t.substring(0,r)]=t.substring(r+2)})),e}r.d(e,"a",(function(){return n}))}]).default},"object"===(0,s.default)(e)&&"object"===(0,s.default)(t)?t.exports=a():(i=[],void 0===(o="function"==typeof(n=a)?n.apply(e,i):n)||(t.exports=o))}).call(this,r(17)(t))},function(t,e,r){"use strict";var n=r(10).formatters,i=r(30),o=r(16);t.exports=function(t){var e=function(e){var r;return e.property?(t[e.property]||(t[e.property]={}),r=t[e.property]):r=t,e.methods&&e.methods.forEach((function(e){e instanceof i||(e=new i(e)),e.attachToObject(r),e.setRequestManager(t._requestManager)})),t};return e.formatters=n,e.utils=o,e.Method=i,e}},function(t,e,r){"use strict";(function(t){var e=r(0)(r(2)),n=function(t){var r=Object.prototype,n=r.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function f(t,e,r,n){var i=e&&e.prototype instanceof l?e:l,o=Object.create(i.prototype),a=new S(n||[]);return o._invoke=function(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return x()}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=_(a,r);if(s){if(s===h)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=c(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===h)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}(t,r,a),o}function c(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=f;var h={};function l(){}function d(){}function p(){}var m={};m[o]=function(){return this};var b=Object.getPrototypeOf,v=b&&b(b(A([])));v&&v!==r&&n.call(v,o)&&(m=v);var y=p.prototype=l.prototype=Object.create(m);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,r){var i;this._invoke=function(o,a){function s(){return new r((function(i,s){!function i(o,a,s,u){var f=c(t[o],t,a);if("throw"!==f.type){var h=f.arg,l=h.value;return l&&"object"===(0,e.default)(l)&&n.call(l,"__await")?r.resolve(l.__await).then((function(t){i("next",t,s,u)}),(function(t){i("throw",t,s,u)})):r.resolve(l).then((function(t){h.value=t,s(h)}),(function(t){return i("throw",t,s,u)}))}u(f.arg)}(o,a,i,s)}))}return i=i?i.then(s,s):s()}}function _(t,e){var r=t.iterator[e.method];if(void 0===r){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,_(t,e),"throw"===e.method))return h;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return h}var n=c(r,t.iterator,e.arg);if("throw"===n.type)return e.method="throw",e.arg=n.arg,e.delegate=null,h;var i=n.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,h):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,h)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function M(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function A(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,i=function e(){for(;++r=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),u=n.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),M(r),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;M(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:A(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),h}},t}("object"===(0,e.default)(t)?t.exports:{});try{regeneratorRuntime=n}catch(t){Function("r","regeneratorRuntime = r")(n)}}).call(this,r(17)(t))},function(t,e,r){"use strict";t.exports=function(t){if(Array.isArray(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";t.exports=function(t,e){var r=t&&("undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"]);if(null!=r){var n,i,o=[],a=!0,s=!1;try{for(r=r.call(t);!(a=(n=r.next()).done)&&(o.push(n.value),!e||o.length!==e);a=!0);}catch(t){s=!0,i=t}finally{try{a||null==r.return||r.return()}finally{if(s)throw i}}return o}},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";t.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(10).errors,o=r(73),a=r(10).formatters;function s(t){return t}function u(t){o.call(this),this.id=null,this.callback=s,this.arguments=null,this.lastBlock=null,this.options={subscription:t.subscription,type:t.type,requestManager:t.requestManager}}u.prototype=Object.create(o.prototype),u.prototype.constructor=u,u.prototype._extractCallback=function(t){if("function"==typeof t[t.length-1])return t.pop()},u.prototype._validateArgs=function(t){var e=this.options.subscription;if(e||(e={}),e.params||(e.params=0),t.length!==e.params)throw i.InvalidNumberOfParams(t.length,e.params,e.subscriptionName)},u.prototype._formatInput=function(t){var e=this.options.subscription;return e&&e.inputFormatter?e.inputFormatter.map((function(e,r){return e?e(t[r]):t[r]})):t},u.prototype._formatOutput=function(t){var e=this.options.subscription;return e&&e.outputFormatter&&t?e.outputFormatter(t):t},u.prototype._toPayload=function(t){var e=[];if(this.callback=this._extractCallback(t)||s,this.subscriptionMethod||(this.subscriptionMethod=t.shift(),this.options.subscription.subscriptionName&&(this.subscriptionMethod=this.options.subscription.subscriptionName)),this.arguments||(this.arguments=this._formatInput(t),this._validateArgs(this.arguments),t=[]),e.push(this.subscriptionMethod),e=e.concat(this.arguments),t.length)throw new Error("Only a callback is allowed as parameter on an already instantiated subscription.");return{method:this.options.type+"_subscribe",params:e}},u.prototype.unsubscribe=function(t){this.options.requestManager.removeSubscription(this.id,t),this.id=null,this.lastBlock=null,this.removeAllListeners()},u.prototype.subscribe=function(){var t=this,e=Array.prototype.slice.call(arguments),r=this._toPayload(e);if(!r)return this;if(!this.options.requestManager.provider)return setTimeout((function(){var e=new Error("No provider set.");t.callback(e,null,t),t.emit("error",e)}),0),this;if(!this.options.requestManager.provider.on)return setTimeout((function(){var e=new Error("The current provider doesn't support subscriptions: "+t.options.requestManager.provider.constructor.name);t.callback(e,null,t),t.emit("error",e)}),0),this;if(this.lastBlock&&this.options.params&&"object"===(0,n.default)(this.options.params)&&(r.params[1]=this.options.params,r.params[1].fromBlock=a.inputBlockNumberFormatter(this.lastBlock+1)),this.id&&this.unsubscribe(),this.options.params=r.params[1],"logs"===r.params[0]&&r.params[1]&&"object"===(0,n.default)(r.params[1])&&r.params[1].hasOwnProperty("fromBlock")&&isFinite(r.params[1].fromBlock)){var i=Object.assign({},r.params[1]);this.options.requestManager.send({method:"eth_getLogs",params:[i]},(function(e,r){e?setTimeout((function(){t.callback(e,null,t),t.emit("error",e)}),0):r.forEach((function(e){var r=t._formatOutput(e);t.callback(null,r,t),t.emit("data",r)}))}))}return"object"===(0,n.default)(r.params[1])&&delete r.params[1].fromBlock,this.options.requestManager.send(r,(function(e,i){!e&&i?(t.id=i,t.method=r.params[0],t.emit("connected",i),t.options.requestManager.addSubscription(t,(function(e,r){e?(t.callback(e,!1,t),t.emit("error",e)):(Array.isArray(r)||(r=[r]),r.forEach((function(e){var r=t._formatOutput(e);if(t.lastBlock=r&&"object"===(0,n.default)(r)?r.blockNumber:null,"function"==typeof t.options.subscription.subscriptionHandler)return t.options.subscription.subscriptionHandler.call(t,r);t.emit("data",r),t.callback(null,r,t)})))}))):setTimeout((function(){t.callback(e,!1,t),t.emit("error",e)}),0)})),this},u.prototype.resubscribe=function(){this.options.requestManager.removeSubscription(this.id),this.id=null,this.subscribe(this.callback)},t.exports=u},function(t,e,r){"use strict";var n=r(2);Object.defineProperty(e,"__esModule",{value:!0}),e.computeAddress=w,e.recoverAddress=_,e.accessListify=S,e.serialize=function(t,e){if(null==t.type)return null!=t.accessList&&m.throwArgumentError("untyped transactions do not support accessList; include type: 1","transaction",t),function(t,e){(0,f.checkProperties)(t,g);var r=[];y.forEach((function(e){var n=t[e.name]||[],i={};e.numeric&&(i.hexPad="left"),n=(0,a.arrayify)((0,a.hexlify)(n,i)),e.length&&n.length!==e.length&&n.length>0&&m.throwArgumentError("invalid length for "+e.name,"transaction:"+e.name,n),e.maxLength&&(n=(0,a.stripZeros)(n)).length>e.maxLength&&m.throwArgumentError("invalid length for "+e.name,"transaction:"+e.name,n),r.push((0,a.hexlify)(n))}));var n=0;null!=t.chainId?"number"!=typeof(n=t.chainId)&&m.throwArgumentError("invalid transaction.chainId","transaction",t):e&&!(0,a.isBytesLike)(e)&&e.v>28&&(n=Math.floor((e.v-35)/2));0!==n&&(r.push((0,a.hexlify)(n)),r.push("0x"),r.push("0x"));if(!e)return c.encode(r);var i=(0,a.splitSignature)(e),o=27+i.recoveryParam;0!==n?(r.pop(),r.pop(),r.pop(),o+=2*n+8,i.v>28&&i.v!==o&&m.throwArgumentError("transaction.chainId/signature.v mismatch","signature",e)):i.v!==o&&m.throwArgumentError("transaction.chainId/signature.v mismatch","signature",e);return r.push((0,a.hexlify)(o)),r.push((0,a.stripZeros)((0,a.arrayify)(i.r))),r.push((0,a.stripZeros)((0,a.arrayify)(i.s))),c.encode(r)}(t,e);switch(t.type){case 1:return A(t,e)}return m.throwError("unsupported transaction type: ".concat(t.type),l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"serializeTransaction",transactionType:t.type})},e.parse=function(t){var e=(0,a.arrayify)(t);if(e[0]>127)return function(t){var e=c.decode(t);9!==e.length&&6!==e.length&&m.throwArgumentError("invalid raw transaction","rawTransaction",t);var r={nonce:v(e[0]).toNumber(),gasPrice:v(e[1]),gasLimit:v(e[2]),to:b(e[3]),value:v(e[4]),data:e[5],chainId:0};if(6===e.length)return r;try{r.v=o.BigNumber.from(e[6]).toNumber()}catch(t){return console.log(t),r}if(r.r=(0,a.hexZeroPad)(e[7],32),r.s=(0,a.hexZeroPad)(e[8],32),o.BigNumber.from(r.r).isZero()&&o.BigNumber.from(r.s).isZero())r.chainId=r.v,r.v=0;else{r.chainId=Math.floor((r.v-35)/2),r.chainId<0&&(r.chainId=0);var n=r.v-27,i=e.slice(0,6);0!==r.chainId&&(i.push((0,a.hexlify)(r.chainId)),i.push("0x"),i.push("0x"),n-=2*r.chainId+8);var s=(0,u.keccak256)(c.encode(i));try{r.from=_(s,{r:(0,a.hexlify)(r.r),s:(0,a.hexlify)(r.s),recoveryParam:n})}catch(t){console.log(t)}r.hash=(0,u.keccak256)(t)}return r.type=null,r}(e);switch(e[0]){case 1:return function(t){var e=c.decode(t.slice(1));8!==e.length&&11!==e.length&&m.throwArgumentError("invalid component count for transaction type: 1","payload",(0,a.hexlify)(t));var r={type:1,chainId:v(e[0]).toNumber(),nonce:v(e[1]).toNumber(),gasPrice:v(e[2]),gasLimit:v(e[3]),to:b(e[4]),value:v(e[5]),data:e[6],accessList:S(e[7])};if(8===e.length)return r;try{var n=v(e[8]).toNumber();if(0!==n&&1!==n)throw new Error("bad recid");r.v=n}catch(t){m.throwArgumentError("invalid v for transaction type: 1","v",e[8])}r.r=(0,a.hexZeroPad)(e[9],32),r.s=(0,a.hexZeroPad)(e[10],32);try{var i=(0,u.keccak256)(A(r));r.from=_(i,{r:r.r,s:r.s,recoveryParam:r.v})}catch(t){console.log(t)}return r.hash=(0,u.keccak256)(t),r}(e)}return m.throwError("unsupported transaction type: ".concat(e[0]),l.Logger.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:e[0]})};var i=r(59),o=r(24),a=r(11),s=r(79),u=r(32),f=r(33),c=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==n(t)&&"function"!=typeof t)return{default:t};var r=p(e);if(r&&r.has(t))return r.get(t);var i={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in t)if("default"!==a&&Object.prototype.hasOwnProperty.call(t,a)){var s=o?Object.getOwnPropertyDescriptor(t,a):null;s&&(s.get||s.set)?Object.defineProperty(i,a,s):i[a]=t[a]}i.default=t,r&&r.set(t,i);return i}(r(128)),h=r(270),l=r(12),d=r(279);function p(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,r=new WeakMap;return(p=function(t){return t?r:e})(t)}var m=new l.Logger(d.version);function b(t){return"0x"===t?null:(0,i.getAddress)(t)}function v(t){return"0x"===t?s.Zero:o.BigNumber.from(t)}var y=[{name:"nonce",maxLength:32,numeric:!0},{name:"gasPrice",maxLength:32,numeric:!0},{name:"gasLimit",maxLength:32,numeric:!0},{name:"to",length:20},{name:"value",maxLength:32,numeric:!0},{name:"data"}],g={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0};function w(t){var e=(0,h.computePublicKey)(t);return(0,i.getAddress)((0,a.hexDataSlice)((0,u.keccak256)((0,a.hexDataSlice)(e,1)),12))}function _(t,e){return w((0,h.recoverPublicKey)((0,a.arrayify)(t),e))}function k(t,e){var r=(0,a.stripZeros)(o.BigNumber.from(t).toHexString());return r.length>32&&m.throwArgumentError("invalid length for "+e,"transaction:"+e,t),r}function M(t,e){return{address:(0,i.getAddress)(t),storageKeys:(e||[]).map((function(e,r){return 32!==(0,a.hexDataLength)(e)&&m.throwArgumentError("invalid access list storageKey","accessList[".concat(t,":").concat(r,"]"),e),e.toLowerCase()}))}}function S(t){if(Array.isArray(t))return t.map((function(t,e){return Array.isArray(t)?(t.length>2&&m.throwArgumentError("access list expected to be [ address, storageKeys[] ]","value[".concat(e,"]"),t),M(t[0],t[1])):M(t.address,t.storageKeys)}));var e=Object.keys(t).map((function(e){var r=t[e].reduce((function(t,e){return t[e]=!0,t}),{});return M(e,Object.keys(r).sort())}));return e.sort((function(t,e){return t.address.localeCompare(e.address)})),e}function A(t,e){var r,n=[k(t.chainId||0,"chainId"),k(t.nonce||0,"nonce"),k(t.gasPrice||0,"gasPrice"),k(t.gasLimit||0,"gasLimit"),null!=t.to?(0,i.getAddress)(t.to):"0x",k(t.value||0,"value"),t.data||"0x",(r=t.accessList||[],S(r).map((function(t){return[t.address,t.storageKeys]})))];if(e){var o=(0,a.splitSignature)(e);n.push(k(o.recoveryParam,"recoveryParam")),n.push((0,a.stripZeros)(o.r)),n.push((0,a.stripZeros)(o.s))}return(0,a.hexConcat)(["0x01",c.encode(n)])}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.version=void 0;e.version="logger/5.1.0"},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.version=void 0;e.version="bytes/5.1.0"},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.formatFixed=y,e.parseFixed=g,e.FixedNumber=e.FixedFormat=void 0;var i=n(r(2)),o=n(r(5)),a=n(r(9)),s=r(11),u=r(12),f=r(127),c=r(126),h=new u.Logger(f.version),l={},d=c.BigNumber.from(0),p=c.BigNumber.from(-1);function m(t,e,r,n){var i={fault:e,operation:r};return void 0!==n&&(i.value=n),h.throwError(t,u.Logger.errors.NUMERIC_FAULT,i)}for(var b="0";b.length<256;)b+=b;function v(t){if("number"!=typeof t)try{t=c.BigNumber.from(t).toNumber()}catch(t){}return"number"==typeof t&&t>=0&&t<=256&&!(t%1)?"1"+b.substring(0,t):h.throwArgumentError("invalid decimal size","decimals",t)}function y(t,e){null==e&&(e=0);var r=v(e),n=(t=c.BigNumber.from(t)).lt(d);n&&(t=t.mul(p));for(var i=t.mod(r).toString();i.length2&&h.throwArgumentError("too many decimal points","value",t);var o=i[0],a=i[1];for(o||(o="0"),a||(a="0"),a.length>r.length-1&&m("fractional component exceeds decimals","underflow","parseFixed");a.length80&&h.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",o),new t(l,r,n,o)}}]),t}();e.FixedFormat=w;var _=function(){function t(e,r,n,i){(0,o.default)(this,t),h.checkNew(this instanceof t?this.constructor:void 0,t),e!==l&&h.throwError("cannot use FixedNumber constructor; use FixedNumber.from",u.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.format=i,this._hex=r,this._value=n,this._isFixedNumber=!0,Object.freeze(this)}return(0,a.default)(t,[{key:"_checkFormat",value:function(t){this.format.name!==t.format.name&&h.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",t)}},{key:"addUnsafe",value:function(e){this._checkFormat(e);var r=g(this._value,this.format.decimals),n=g(e._value,e.format.decimals);return t.fromValue(r.add(n),this.format.decimals,this.format)}},{key:"subUnsafe",value:function(e){this._checkFormat(e);var r=g(this._value,this.format.decimals),n=g(e._value,e.format.decimals);return t.fromValue(r.sub(n),this.format.decimals,this.format)}},{key:"mulUnsafe",value:function(e){this._checkFormat(e);var r=g(this._value,this.format.decimals),n=g(e._value,e.format.decimals);return t.fromValue(r.mul(n).div(this.format._multiplier),this.format.decimals,this.format)}},{key:"divUnsafe",value:function(e){this._checkFormat(e);var r=g(this._value,this.format.decimals),n=g(e._value,e.format.decimals);return t.fromValue(r.mul(this.format._multiplier).div(n),this.format.decimals,this.format)}},{key:"floor",value:function(){var e=this.toString().split("."),r=t.from(e[0],this.format),n=!e[1].match(/^(0*)$/);return this.isNegative()&&n&&(r=r.subUnsafe(k)),r}},{key:"ceiling",value:function(){var e=this.toString().split("."),r=t.from(e[0],this.format),n=!e[1].match(/^(0*)$/);return!this.isNegative()&&n&&(r=r.addUnsafe(k)),r}},{key:"round",value:function(e){null==e&&(e=0);var r=this.toString().split(".");if((e<0||e>80||e%1)&&h.throwArgumentError("invalid decimal count","decimals",e),r[1].length<=e)return this;var n=t.from("1"+b.substring(0,e));return this.mulUnsafe(n).addUnsafe(M).floor().divUnsafe(n)}},{key:"isZero",value:function(){return"0.0"===this._value}},{key:"isNegative",value:function(){return"-"===this._value[0]}},{key:"toString",value:function(){return this._value}},{key:"toHexString",value:function(t){if(null==t)return this._hex;t%8&&h.throwArgumentError("invalid byte width","width",t);var e=c.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(t).toHexString();return(0,s.hexZeroPad)(e,t/8)}},{key:"toUnsafeFloat",value:function(){return parseFloat(this.toString())}},{key:"toFormat",value:function(e){return t.fromString(this._value,e)}}],[{key:"fromValue",value:function(e,r,n){return null!=n||null==r||(0,c.isBigNumberish)(r)||(n=r,r=null),null==r&&(r=0),null==n&&(n="fixed"),t.fromString(y(e,r),w.from(n))}},{key:"fromString",value:function(e,r){null==r&&(r="fixed");var n=w.from(r),i=g(e,n.decimals);!n.signed&&i.lt(d)&&m("unsigned value cannot be negative","overflow","value",e);var o=null;n.signed?o=i.toTwos(n.width).toHexString():(o=i.toHexString(),o=(0,s.hexZeroPad)(o,n.width/8));var a=y(i,n.decimals);return new t(l,o,a,n)}},{key:"fromBytes",value:function(e,r){null==r&&(r="fixed");var n=w.from(r);if((0,s.arrayify)(e).length>n.width/8)throw new Error("overflow");var i=c.BigNumber.from(e);n.signed&&(i=i.fromTwos(n.width));var o=i.toTwos((n.signed?0:1)+n.width).toHexString(),a=y(i,n.decimals);return new t(l,o,a,n)}},{key:"from",value:function(e,r){if("string"==typeof e)return t.fromString(e,r);if((0,s.isBytes)(e))return t.fromBytes(e,r);try{return t.fromValue(e,0,r)}catch(t){if(t.code!==u.Logger.errors.INVALID_ARGUMENT)throw t}return h.throwArgumentError("invalid FixedNumber value","value",e)}},{key:"isFixedNumber",value:function(t){return!(!t||!t._isFixedNumber)}}]),t}();e.FixedNumber=_;var k=_.from(1),M=_.from("0.5")},function(t,e,r){"use strict";(function(t,e,n){var i=r(0)(r(2)); - /** - * [js-sha3]{@link https://github.com/emn178/js-sha3} - * - * @version 0.5.7 - * @author Chen, Yi-Cyuan [emn178@gmail.com] - * @copyright Chen, Yi-Cyuan 2015-2016 - * @license MIT - */ - !function(){var r="object"===("undefined"==typeof window?"undefined":(0,i.default)(window))?window:{};!r.JS_SHA3_NO_NODE_JS&&"object"===(void 0===t?"undefined":(0,i.default)(t))&&t.versions&&t.versions.node&&(r=e);for(var o=!r.JS_SHA3_NO_COMMON_JS&&"object"===(0,i.default)(n)&&n.exports,a="0123456789abcdef".split(""),s=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],f=[224,256,384,512],c=["hex","buffer","arrayBuffer","array"],h=function(t,e,r){return function(n){return new k(t,e,t).update(n)[r]()}},l=function(t,e,r){return function(n,i){return new k(t,e,i).update(n)[r]()}},d=function(t,e){var r=h(t,e,"hex");r.create=function(){return new k(t,e,t)},r.update=function(t){return r.create().update(t)};for(var n=0;n>5,this.byteCount=this.blockCount<<2,this.outputBlocks=r>>5,this.extraBytes=(31&r)>>3;for(var n=0;n<50;++n)this.s[n]=0}k.prototype.update=function(t){var e="string"!=typeof t;e&&t.constructor===ArrayBuffer&&(t=new Uint8Array(t));for(var r,n,i=t.length,o=this.blocks,a=this.byteCount,u=this.blockCount,f=0,c=this.s;f>2]|=t[f]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|63&n)<=57344?(o[r>>2]|=(224|n>>12)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<>2]|=(240|n>>18)<>2]|=(128|n>>12&63)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<=a){for(this.start=r-a,this.block=o[u],r=0;r>2]|=this.padding[3&e],this.lastByteIndex===this.byteCount)for(t[0]=t[r],e=1;e>4&15]+a[15&t]+a[t>>12&15]+a[t>>8&15]+a[t>>20&15]+a[t>>16&15]+a[t>>28&15]+a[t>>24&15];s%e==0&&(M(r),o=0)}return i&&(t=r[o],i>0&&(u+=a[t>>4&15]+a[15&t]),i>1&&(u+=a[t>>12&15]+a[t>>8&15]),i>2&&(u+=a[t>>20&15]+a[t>>16&15])),u},k.prototype.arrayBuffer=function(){this.finalize();var t,e=this.blockCount,r=this.s,n=this.outputBlocks,i=this.extraBytes,o=0,a=0,s=this.outputBits>>3;t=i?new ArrayBuffer(n+1<<2):new ArrayBuffer(s);for(var u=new Uint32Array(t);a>8&255,u[t+2]=e>>16&255,u[t+3]=e>>24&255;s%r==0&&M(n)}return o&&(t=s<<2,e=n[a],o>0&&(u[t]=255&e),o>1&&(u[t+1]=e>>8&255),o>2&&(u[t+2]=e>>16&255)),u};var M=function(t){var e,r,n,i,o,a,s,f,c,h,l,d,p,m,b,v,y,g,w,_,k,M,S,A,x,E,O,P,B,T,R,I,C,U,j,N,L,F,D,q,H,z,K,G,V,W,Z,J,X,Y,$,Q,tt,et,rt,nt,it,ot,at,st,ut,ft,ct;for(n=0;n<48;n+=2)i=t[0]^t[10]^t[20]^t[30]^t[40],o=t[1]^t[11]^t[21]^t[31]^t[41],a=t[2]^t[12]^t[22]^t[32]^t[42],s=t[3]^t[13]^t[23]^t[33]^t[43],f=t[4]^t[14]^t[24]^t[34]^t[44],c=t[5]^t[15]^t[25]^t[35]^t[45],h=t[6]^t[16]^t[26]^t[36]^t[46],l=t[7]^t[17]^t[27]^t[37]^t[47],e=(d=t[8]^t[18]^t[28]^t[38]^t[48])^(a<<1|s>>>31),r=(p=t[9]^t[19]^t[29]^t[39]^t[49])^(s<<1|a>>>31),t[0]^=e,t[1]^=r,t[10]^=e,t[11]^=r,t[20]^=e,t[21]^=r,t[30]^=e,t[31]^=r,t[40]^=e,t[41]^=r,e=i^(f<<1|c>>>31),r=o^(c<<1|f>>>31),t[2]^=e,t[3]^=r,t[12]^=e,t[13]^=r,t[22]^=e,t[23]^=r,t[32]^=e,t[33]^=r,t[42]^=e,t[43]^=r,e=a^(h<<1|l>>>31),r=s^(l<<1|h>>>31),t[4]^=e,t[5]^=r,t[14]^=e,t[15]^=r,t[24]^=e,t[25]^=r,t[34]^=e,t[35]^=r,t[44]^=e,t[45]^=r,e=f^(d<<1|p>>>31),r=c^(p<<1|d>>>31),t[6]^=e,t[7]^=r,t[16]^=e,t[17]^=r,t[26]^=e,t[27]^=r,t[36]^=e,t[37]^=r,t[46]^=e,t[47]^=r,e=h^(i<<1|o>>>31),r=l^(o<<1|i>>>31),t[8]^=e,t[9]^=r,t[18]^=e,t[19]^=r,t[28]^=e,t[29]^=r,t[38]^=e,t[39]^=r,t[48]^=e,t[49]^=r,m=t[0],b=t[1],W=t[11]<<4|t[10]>>>28,Z=t[10]<<4|t[11]>>>28,P=t[20]<<3|t[21]>>>29,B=t[21]<<3|t[20]>>>29,st=t[31]<<9|t[30]>>>23,ut=t[30]<<9|t[31]>>>23,z=t[40]<<18|t[41]>>>14,K=t[41]<<18|t[40]>>>14,U=t[2]<<1|t[3]>>>31,j=t[3]<<1|t[2]>>>31,v=t[13]<<12|t[12]>>>20,y=t[12]<<12|t[13]>>>20,J=t[22]<<10|t[23]>>>22,X=t[23]<<10|t[22]>>>22,T=t[33]<<13|t[32]>>>19,R=t[32]<<13|t[33]>>>19,ft=t[42]<<2|t[43]>>>30,ct=t[43]<<2|t[42]>>>30,et=t[5]<<30|t[4]>>>2,rt=t[4]<<30|t[5]>>>2,N=t[14]<<6|t[15]>>>26,L=t[15]<<6|t[14]>>>26,g=t[25]<<11|t[24]>>>21,w=t[24]<<11|t[25]>>>21,Y=t[34]<<15|t[35]>>>17,$=t[35]<<15|t[34]>>>17,I=t[45]<<29|t[44]>>>3,C=t[44]<<29|t[45]>>>3,A=t[6]<<28|t[7]>>>4,x=t[7]<<28|t[6]>>>4,nt=t[17]<<23|t[16]>>>9,it=t[16]<<23|t[17]>>>9,F=t[26]<<25|t[27]>>>7,D=t[27]<<25|t[26]>>>7,_=t[36]<<21|t[37]>>>11,k=t[37]<<21|t[36]>>>11,Q=t[47]<<24|t[46]>>>8,tt=t[46]<<24|t[47]>>>8,G=t[8]<<27|t[9]>>>5,V=t[9]<<27|t[8]>>>5,E=t[18]<<20|t[19]>>>12,O=t[19]<<20|t[18]>>>12,ot=t[29]<<7|t[28]>>>25,at=t[28]<<7|t[29]>>>25,q=t[38]<<8|t[39]>>>24,H=t[39]<<8|t[38]>>>24,M=t[48]<<14|t[49]>>>18,S=t[49]<<14|t[48]>>>18,t[0]=m^~v&g,t[1]=b^~y&w,t[10]=A^~E&P,t[11]=x^~O&B,t[20]=U^~N&F,t[21]=j^~L&D,t[30]=G^~W&J,t[31]=V^~Z&X,t[40]=et^~nt&ot,t[41]=rt^~it&at,t[2]=v^~g&_,t[3]=y^~w&k,t[12]=E^~P&T,t[13]=O^~B&R,t[22]=N^~F&q,t[23]=L^~D&H,t[32]=W^~J&Y,t[33]=Z^~X&$,t[42]=nt^~ot&st,t[43]=it^~at&ut,t[4]=g^~_&M,t[5]=w^~k&S,t[14]=P^~T&I,t[15]=B^~R&C,t[24]=F^~q&z,t[25]=D^~H&K,t[34]=J^~Y&Q,t[35]=X^~$&tt,t[44]=ot^~st&ft,t[45]=at^~ut&ct,t[6]=_^~M&m,t[7]=k^~S&b,t[16]=T^~I&A,t[17]=R^~C&x,t[26]=q^~z&U,t[27]=H^~K&j,t[36]=Y^~Q&G,t[37]=$^~tt&V,t[46]=st^~ft&et,t[47]=ut^~ct&rt,t[8]=M^~m&v,t[9]=S^~b&y,t[18]=I^~A&E,t[19]=C^~x&O,t[28]=z^~U&N,t[29]=K^~j&L,t[38]=Q^~G&W,t[39]=tt^~V&Z,t[48]=ft^~et&nt,t[49]=ct^~rt&it,t[0]^=u[n],t[1]^=u[n+1]};if(o)n.exports=m;else for(v=0;v>8,a=255&i;o?r.push(o,a):r.push(a)}return r},r.zero2=n,r.toHex=i,r.encode=function(t,e){return"hex"===e?i(t):t}})),h=s((function(t,e){var r=e;r.assert=u,r.toArray=c.toArray,r.zero2=c.zero2,r.toHex=c.toHex,r.encode=c.encode,r.getNAF=function(t,e,r){var n=new Array(Math.max(t.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-u:u,o.isubn(s)):s=0,n[a]=s,o.iushrn(1)}return n},r.getJSF=function(t,e){var r=[[],[]];t=t.clone(),e=e.clone();for(var n,i=0,o=0;t.cmpn(-i)>0||e.cmpn(-o)>0;){var a,s,u=t.andln(3)+i&3,f=e.andln(3)+o&3;3===u&&(u=-1),3===f&&(f=-1),a=0==(1&u)?0:3!==(n=t.andln(7)+i&7)&&5!==n||2!==f?u:-u,r[0].push(a),s=0==(1&f)?0:3!==(n=e.andln(7)+o&7)&&5!==n||2!==u?f:-f,r[1].push(s),2*i===a+1&&(i=1-i),2*o===s+1&&(o=1-o),t.iushrn(1),e.iushrn(1)}return r},r.cachedProperty=function(t,e,r){var n="_"+e;t.prototype[e]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},r.parseBytes=function(t){return"string"==typeof t?r.toArray(t,"hex"):t},r.intFromLE=function(t){return new o.default(t,"hex","le")}})),l=h.getNAF,d=h.getJSF,p=h.assert;function m(t,e){this.type=t,this.p=new o.default(e.p,16),this.red=e.prime?o.default.red(e.prime):o.default.mont(this.p),this.zero=new o.default(0).toRed(this.red),this.one=new o.default(1).toRed(this.red),this.two=new o.default(2).toRed(this.red),this.n=e.n&&new o.default(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var b=m;function v(t,e){this.curve=t,this.type=e,this.precomputed=null}m.prototype.point=function(){throw new Error("Not implemented")},m.prototype.validate=function(){throw new Error("Not implemented")},m.prototype._fixedNafMul=function(t,e){p(t.precomputed);var r=t._getDoubles(),n=l(e,1,this._bitLength),i=(1<=o;u--)a=(a<<1)+n[u];s.push(a)}for(var f=this.jpoint(null,null,null),c=this.jpoint(null,null,null),h=i;h>0;h--){for(o=0;o=0;s--){for(var u=0;s>=0&&0===o[s];s--)u++;if(s>=0&&u++,a=a.dblp(u),s<0)break;var f=o[s];p(0!==f),a="affine"===t.type?f>0?a.mixedAdd(i[f-1>>1]):a.mixedAdd(i[-f-1>>1].neg()):f>0?a.add(i[f-1>>1]):a.add(i[-f-1>>1].neg())}return"affine"===t.type?a.toP():a},m.prototype._wnafMulAdd=function(t,e,r,n,i){var o,a,s,u=this._wnafT1,f=this._wnafT2,c=this._wnafT3,h=0;for(o=0;o=1;o-=2){var m=o-1,b=o;if(1===u[m]&&1===u[b]){var v=[e[m],null,null,e[b]];0===e[m].y.cmp(e[b].y)?(v[1]=e[m].add(e[b]),v[2]=e[m].toJ().mixedAdd(e[b].neg())):0===e[m].y.cmp(e[b].y.redNeg())?(v[1]=e[m].toJ().mixedAdd(e[b]),v[2]=e[m].add(e[b].neg())):(v[1]=e[m].toJ().mixedAdd(e[b]),v[2]=e[m].toJ().mixedAdd(e[b].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],g=d(r[m],r[b]);for(h=Math.max(g[0].length,h),c[m]=new Array(h),c[b]=new Array(h),a=0;a=0;o--){for(var S=0;o>=0;){var A=!0;for(a=0;a=0&&S++,k=k.dblp(S),o<0)break;for(a=0;a0?s=f[a][x-1>>1]:x<0&&(s=f[a][-x-1>>1].neg()),k="affine"===s.type?k.mixedAdd(s):k.add(s))}}for(o=0;o=Math.ceil((t.bitLength()+1)/e.step)},v.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i=0&&(a=e,s=r),n.negative&&(n=n.neg(),i=i.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:i},{a:a,b:s}]},w.prototype._endoSplit=function(t){var e=this.endo.basis,r=e[0],n=e[1],i=n.b.mul(t).divRound(this.n),o=r.b.neg().mul(t).divRound(this.n),a=i.mul(r.a),s=o.mul(n.a),u=i.mul(r.b),f=o.mul(n.b);return{k1:t.sub(a).sub(s),k2:u.add(f).neg()}},w.prototype.pointFromX=function(t,e){(t=new o.default(t,16)).red||(t=t.toRed(this.red));var r=t.redSqr().redMul(t).redIAdd(t.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var i=n.fromRed().isOdd();return(e&&!i||!e&&i)&&(n=n.redNeg()),this.point(t,n)},w.prototype.validate=function(t){if(t.inf)return!0;var e=t.x,r=t.y,n=this.a.redMul(e),i=e.redSqr().redMul(e).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},w.prototype._endoWnafMulAdd=function(t,e,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},k.prototype.isInfinity=function(){return this.inf},k.prototype.add=function(t){if(this.inf)return t;if(t.inf)return this;if(this.eq(t))return this.dbl();if(this.neg().eq(t))return this.curve.point(null,null);if(0===this.x.cmp(t.x))return this.curve.point(null,null);var e=this.y.redSub(t.y);0!==e.cmpn(0)&&(e=e.redMul(this.x.redSub(t.x).redInvm()));var r=e.redSqr().redISub(this.x).redISub(t.x),n=e.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},k.prototype.dbl=function(){if(this.inf)return this;var t=this.y.redAdd(this.y);if(0===t.cmpn(0))return this.curve.point(null,null);var e=this.curve.a,r=this.x.redSqr(),n=t.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(e).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},k.prototype.getX=function(){return this.x.fromRed()},k.prototype.getY=function(){return this.y.fromRed()},k.prototype.mul=function(t){return t=new o.default(t,16),this.isInfinity()?this:this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve.endo?this.curve._endoWnafMulAdd([this],[t]):this.curve._wnafMul(this,t)},k.prototype.mulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},k.prototype.jmulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},k.prototype.eq=function(t){return this===t||this.inf===t.inf&&(this.inf||0===this.x.cmp(t.x)&&0===this.y.cmp(t.y))},k.prototype.neg=function(t){if(this.inf)return this;var e=this.curve.point(this.x,this.y.redNeg());if(t&&this.precomputed){var r=this.precomputed,n=function(t){return t.neg()};e.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return e},k.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},y(M,b.BasePoint),w.prototype.jpoint=function(t,e,r){return new M(this,t,e,r)},M.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var t=this.z.redInvm(),e=t.redSqr(),r=this.x.redMul(e),n=this.y.redMul(e).redMul(t);return this.curve.point(r,n)},M.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},M.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(e),i=t.x.redMul(r),o=this.y.redMul(e.redMul(t.z)),a=t.y.redMul(r.redMul(this.z)),s=n.redSub(i),u=o.redSub(a);if(0===s.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var f=s.redSqr(),c=f.redMul(s),h=n.redMul(f),l=u.redSqr().redIAdd(c).redISub(h).redISub(h),d=u.redMul(h.redISub(l)).redISub(o.redMul(c)),p=this.z.redMul(t.z).redMul(s);return this.curve.jpoint(l,d,p)},M.prototype.mixedAdd=function(t){if(this.isInfinity())return t.toJ();if(t.isInfinity())return this;var e=this.z.redSqr(),r=this.x,n=t.x.redMul(e),i=this.y,o=t.y.redMul(e).redMul(this.z),a=r.redSub(n),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=a.redSqr(),f=u.redMul(a),c=r.redMul(u),h=s.redSqr().redIAdd(f).redISub(c).redISub(c),l=s.redMul(c.redISub(h)).redISub(i.redMul(f)),d=this.z.redMul(a);return this.curve.jpoint(h,l,d)},M.prototype.dblp=function(t){if(0===t)return this;if(this.isInfinity())return this;if(!t)return this.dbl();var e;if(this.curve.zeroA||this.curve.threeA){var r=this;for(e=0;e=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},M.prototype.inspect=function(){return this.isInfinity()?"":""},M.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var S=s((function(t,e){var r=e;r.base=b,r.short=_,r.mont=null,r.edwards=null})),A=s((function(t,e){var r,n=e,i=h.assert;function o(t){"short"===t.type?this.curve=new S.short(t):"edwards"===t.type?this.curve=new S.edwards(t):this.curve=new S.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,i(this.g.validate(),"Invalid curve"),i(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function s(t,e){Object.defineProperty(n,t,{configurable:!0,enumerable:!0,get:function(){var r=new o(e);return Object.defineProperty(n,t,{configurable:!0,enumerable:!0,value:r}),r}})}n.PresetCurve=o,s("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.default.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),s("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.default.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),s("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.default.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),s("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.default.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),s("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.default.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),s("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.default.sha256,gRed:!1,g:["9"]}),s("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.default.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=null.crash()}catch(t){r=void 0}s("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.default.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})}));function x(t){if(!(this instanceof x))return new x(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=c.toArray(t.entropy,t.entropyEnc||"hex"),r=c.toArray(t.nonce,t.nonceEnc||"hex"),n=c.toArray(t.pers,t.persEnc||"hex");u(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,r,n)}var E=x;x.prototype._init=function(t,e,r){var n=t.concat(e).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(t.concat(r||[])),this._reseed=1},x.prototype.generate=function(t,e,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof e&&(n=r,r=e,e=null),r&&(r=c.toArray(r,n||"hex"),this._update(r));for(var i=[];i.length"};var T=h.assert;function R(t,e){if(t instanceof R)return t;this._importDER(t,e)||(T(t.r&&t.s,"Signature without r or s"),this.r=new o.default(t.r,16),this.s=new o.default(t.s,16),void 0===t.recoveryParam?this.recoveryParam=null:this.recoveryParam=t.recoveryParam)}var I=R;function C(){this.place=0}function U(t,e){var r=t[e.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,a=e.place;o>>=0;return!(i<=127)&&(e.place=a,i)}function j(t){for(var e=0,r=t.length-1;!t[e]&&!(128&t[e+1])&&e>>3);for(t.push(128|r);--r;)t.push(e>>>(r<<3)&255);t.push(e)}}R.prototype._importDER=function(t,e){t=h.toArray(t,e);var r=new C;if(48!==t[r.place++])return!1;var n=U(t,r);if(!1===n)return!1;if(n+r.place!==t.length)return!1;if(2!==t[r.place++])return!1;var i=U(t,r);if(!1===i)return!1;var a=t.slice(r.place,i+r.place);if(r.place+=i,2!==t[r.place++])return!1;var s=U(t,r);if(!1===s)return!1;if(t.length!==s+r.place)return!1;var u=t.slice(r.place,s+r.place);if(0===a[0]){if(!(128&a[1]))return!1;a=a.slice(1)}if(0===u[0]){if(!(128&u[1]))return!1;u=u.slice(1)}return this.r=new o.default(a),this.s=new o.default(u),this.recoveryParam=null,!0},R.prototype.toDER=function(t){var e=this.r.toArray(),r=this.s.toArray();for(128&e[0]&&(e=[0].concat(e)),128&r[0]&&(r=[0].concat(r)),e=j(e),r=j(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];N(n,e.length),(n=n.concat(e)).push(2),N(n,r.length);var i=n.concat(r),o=[48];return N(o,i.length),o=o.concat(i),h.encode(o,t)};var L=function(){throw new Error("unsupported")},F=h.assert;function D(t){if(!(this instanceof D))return new D(t);"string"==typeof t&&(F(Object.prototype.hasOwnProperty.call(A,t),"Unknown curve "+t),t=A[t]),t instanceof A.PresetCurve&&(t={curve:t}),this.curve=t.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=t.curve.g,this.g.precompute(t.curve.n.bitLength()+1),this.hash=t.hash||t.curve.hash}var q=D;D.prototype.keyPair=function(t){return new B(this,t)},D.prototype.keyFromPrivate=function(t,e){return B.fromPrivate(this,t,e)},D.prototype.keyFromPublic=function(t,e){return B.fromPublic(this,t,e)},D.prototype.genKeyPair=function(t){t||(t={});for(var e=new E({hash:this.hash,pers:t.pers,persEnc:t.persEnc||"utf8",entropy:t.entropy||L(this.hash.hmacStrength),entropyEnc:t.entropy&&t.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),n=this.n.sub(new o.default(2));;){var i=new o.default(e.generate(r));if(!(i.cmp(n)>0))return i.iaddn(1),this.keyFromPrivate(i)}},D.prototype._truncateToN=function(t,e){var r=8*t.byteLength()-this.n.bitLength();return r>0&&(t=t.ushrn(r)),!e&&t.cmp(this.n)>=0?t.sub(this.n):t},D.prototype.sign=function(t,e,r,n){"object"===(0,i.default)(r)&&(n=r,r=null),n||(n={}),e=this.keyFromPrivate(e,r),t=this._truncateToN(new o.default(t,16));for(var a=this.n.byteLength(),s=e.getPrivate().toArray("be",a),u=t.toArray("be",a),f=new E({hash:this.hash,entropy:s,nonce:u,pers:n.pers,persEnc:n.persEnc||"utf8"}),c=this.n.sub(new o.default(1)),h=0;;h++){var l=n.k?n.k(h):new o.default(f.generate(this.n.byteLength()));if(!((l=this._truncateToN(l,!0)).cmpn(1)<=0||l.cmp(c)>=0)){var d=this.g.mul(l);if(!d.isInfinity()){var p=d.getX(),m=p.umod(this.n);if(0!==m.cmpn(0)){var b=l.invm(this.n).mul(m.mul(e.getPrivate()).iadd(t));if(0!==(b=b.umod(this.n)).cmpn(0)){var v=(d.getY().isOdd()?1:0)|(0!==p.cmp(m)?2:0);return n.canonical&&b.cmp(this.nh)>0&&(b=this.n.sub(b),v^=1),new I({r:m,s:b,recoveryParam:v})}}}}}},D.prototype.verify=function(t,e,r,n){t=this._truncateToN(new o.default(t,16)),r=this.keyFromPublic(r,n);var i=(e=new I(e,"hex")).r,a=e.s;if(i.cmpn(1)<0||i.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,u=a.invm(this.n),f=u.mul(t).umod(this.n),c=u.mul(i).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(f,r.getPublic(),c)).isInfinity()&&s.eqXToP(i):!(s=this.g.mulAdd(f,r.getPublic(),c)).isInfinity()&&0===s.getX().umod(this.n).cmp(i)},D.prototype.recoverPubKey=function(t,e,r,n){F((3&r)===r,"The recovery param is more than two bits"),e=new I(e,n);var i=this.n,a=new o.default(t),s=e.r,u=e.s,f=1&r,c=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&c)throw new Error("Unable to find sencond key candinate");s=c?this.curve.pointFromX(s.add(this.curve.n),f):this.curve.pointFromX(s,f);var h=e.r.invm(i),l=i.sub(a).mul(h).umod(i),d=u.mul(h).umod(i);return this.g.mulAdd(l,s,d)},D.prototype.getKeyRecoveryParam=function(t,e,r,n){if(null!==(e=new I(e,n)).recoveryParam)return e.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(t,e,i)}catch(t){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")};var H=s((function(t,e){var r=e;r.version="6.5.4",r.utils=h,r.rand=function(){throw new Error("unsupported")},r.curve=S,r.curves=A,r.ec=q,r.eddsa=null})).ec;e.EC=H}).call(this,r(7))},function(t,e,r){"use strict";e.sha1=r(273),e.sha224=r(274),e.sha256=r(130),e.sha384=r(275),e.sha512=r(131)},function(t,e,r){"use strict";var n=r(21),i=r(49),o=r(129),a=n.rotl32,s=n.sum32,u=n.sum32_5,f=o.ft_1,c=i.BlockHash,h=[1518500249,1859775393,2400959708,3395469782];function l(){if(!(this instanceof l))return new l;c.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(l,c),t.exports=l,l.blockSize=512,l.outSize=160,l.hmacStrength=80,l.padLength=64,l.prototype._update=function(t,e){for(var r=this.W,n=0;n<16;n++)r[n]=t[e+n];for(;nthis.blockSize&&(t=(new this.Hash).update(t).digest()),i(t.length<=this.blockSize);for(var e=t.length;et.highestBlock-200&&(e._isSyncing=!1,e.emit("changed",e._isSyncing),"function"==typeof e.callback&&e.callback(null,e._isSyncing,e))}),500))}}}})];I.forEach((function(e){e.attachToObject(t),e.setRequestManager(t._requestManager,t.accounts),e.defaultBlock=t.defaultBlock,e.defaultAccount=t.defaultAccount,e.transactionBlockTimeout=t.transactionBlockTimeout,e.transactionConfirmationBlocks=t.transactionConfirmationBlocks,e.transactionPollingTimeout=t.transactionPollingTimeout,e.handleRevert=t.handleRevert}))};n.addProviders(k),t.exports=k},function(t,e,r){"use strict";var n=r(282);t.exports=n},function(t,e,r){"use strict";var n=r(0),i=n(r(48)),o=n(r(78)),a=r(132),s=r(10).formatters,u=r(16),f=r(283),c=r(306),h=r(307);function l(t){this.eth=t;var e=null;this._detectedAddress=null,this._lastSyncCheck=null,Object.defineProperty(this,"registry",{get:function(){return new f(this)},enumerable:!0}),Object.defineProperty(this,"resolverMethodHandler",{get:function(){return new c(this.registry)},enumerable:!0}),Object.defineProperty(this,"registryAddress",{get:function(){return e},set:function(t){e=null!==t?s.inputAddressFormatter(t):t},enumerable:!0})}l.prototype.supportsInterface=function(t,e,r){return this.getResolver(t).then((function(t){return u.isHexStrict(e)||(e=u.sha3(e).slice(0,10)),t.methods.supportsInterface(e).call(r)})).catch((function(t){if("function"!=typeof r)throw t;r(t,null)}))},l.prototype.resolver=function(t,e){return this.registry.resolver(t,e)},l.prototype.getResolver=function(t,e){return this.registry.getResolver(t,e)},l.prototype.setResolver=function(t,e,r,n){return this.registry.setResolver(t,e,r,n)},l.prototype.setRecord=function(t,e,r,n,i,o){return this.registry.setRecord(t,e,r,n,i,o)},l.prototype.setSubnodeRecord=function(t,e,r,n,i,o,a){return this.registry.setSubnodeRecord(t,e,r,n,i,o,a)},l.prototype.setApprovalForAll=function(t,e,r,n){return this.registry.setApprovalForAll(t,e,r,n)},l.prototype.isApprovedForAll=function(t,e,r){return this.registry.isApprovedForAll(t,e,r)},l.prototype.recordExists=function(t,e){return this.registry.recordExists(t,e)},l.prototype.setSubnodeOwner=function(t,e,r,n,i){return this.registry.setSubnodeOwner(t,e,r,n,i)},l.prototype.getTTL=function(t,e){return this.registry.getTTL(t,e)},l.prototype.setTTL=function(t,e,r,n){return this.registry.setTTL(t,e,r,n)},l.prototype.getOwner=function(t,e){return this.registry.getOwner(t,e)},l.prototype.setOwner=function(t,e,r,n){return this.registry.setOwner(t,e,r,n)},l.prototype.getAddress=function(t,e){return this.resolverMethodHandler.method(t,"addr",[]).call(e)},l.prototype.setAddress=function(t,e,r,n){return this.resolverMethodHandler.method(t,"setAddr",[e]).send(r,n)},l.prototype.getPubkey=function(t,e){return this.resolverMethodHandler.method(t,"pubkey",[],null,e).call(e)},l.prototype.setPubkey=function(t,e,r,n,i){return this.resolverMethodHandler.method(t,"setPubkey",[e,r]).send(n,i)},l.prototype.getContent=function(t,e){return this.resolverMethodHandler.method(t,"content",[]).call(e)},l.prototype.setContent=function(t,e,r,n){return this.resolverMethodHandler.method(t,"setContent",[e]).send(r,n)},l.prototype.getContenthash=function(t,e){return this.resolverMethodHandler.method(t,"contenthash",[],h.decode).call(e)},l.prototype.setContenthash=function(t,e,r,n){var i;try{i=h.encode(e)}catch(t){var o=new Error("Could not encode "+e+". See docs for supported hash protocols.");if("function"==typeof n)return void n(o,null);throw o}return this.resolverMethodHandler.method(t,"setContenthash",[i]).send(r,n)},l.prototype.getMultihash=function(t,e){return this.resolverMethodHandler.method(t,"multihash",[]).call(e)},l.prototype.setMultihash=function(t,e,r,n){return this.resolverMethodHandler.method(t,"multihash",[e]).send(r,n)},l.prototype.checkNetwork=(0,o.default)(i.default.mark((function t(){var e,r,n,o,s;return i.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=new Date/1e3,this._lastSyncCheck&&!(e-this._lastSyncCheck>3600)){t.next=9;break}return t.next=4,this.eth.getBlock("latest");case 4:if(r=t.sent,!((n=e-r.timestamp)>3600)){t.next=8;break}throw new Error("Network not synced; last block was "+n+" seconds ago");case 8:this._lastSyncCheck=e;case 9:if(!this.registryAddress){t.next=11;break}return t.abrupt("return",this.registryAddress);case 11:if(this._detectedAddress){t.next=20;break}return t.next=14,this.eth.net.getNetworkType();case 14:if(o=t.sent,void 0!==(s=a.addresses[o])){t.next=18;break}throw new Error("ENS is not supported on network "+o);case 18:return this._detectedAddress=s,t.abrupt("return",this._detectedAddress);case 20:return t.abrupt("return",this._detectedAddress);case 21:case"end":return t.stop()}}),t,this)}))),t.exports=l},function(t,e,r){"use strict";var n=r(133),i=r(144),o=r(57),a=r(10).formatters,s=r(16),u=r(304),f=r(305);function c(t){var e=this;this.ens=t,this.contract=t.checkNetwork().then((function(t){var r=new n(u,t);return r.setProvider(e.ens.eth.currentProvider),r}))}c.prototype.owner=function(t,e){return console.warn('Deprecated: Please use the "getOwner" method instead of "owner".'),this.getOwner(t,e)},c.prototype.getOwner=function(t,e){var r=new o(!0);return this.contract.then((function(e){return e.methods.owner(i.hash(t)).call()})).then((function(t){"function"!=typeof e?r.resolve(t):e(t,t)})).catch((function(t){"function"!=typeof e?r.reject(t):e(t,null)})),r.eventEmitter},c.prototype.setOwner=function(t,e,r,n){var s=new o(!0);return this.contract.then((function(n){return n.methods.setOwner(i.hash(t),a.inputAddressFormatter(e)).send(r)})).then((function(t){"function"!=typeof n?s.resolve(t):n(t,t)})).catch((function(t){"function"!=typeof n?s.reject(t):n(t,null)})),s.eventEmitter},c.prototype.getTTL=function(t,e){var r=new o(!0);return this.contract.then((function(e){return e.methods.ttl(i.hash(t)).call()})).then((function(t){"function"!=typeof e?r.resolve(t):e(t,t)})).catch((function(t){"function"!=typeof e?r.reject(t):e(t,null)})),r.eventEmitter},c.prototype.setTTL=function(t,e,r,n){var a=new o(!0);return this.contract.then((function(n){return n.methods.setTTL(i.hash(t),e).send(r)})).then((function(t){"function"!=typeof n?a.resolve(t):n(t,t)})).catch((function(t){"function"!=typeof n?a.reject(t):n(t,null)})),a.eventEmitter},c.prototype.setSubnodeOwner=function(t,e,r,n,u){var f=new o(!0);return s.isHexStrict(e)||(e=s.sha3(e)),this.contract.then((function(o){return o.methods.setSubnodeOwner(i.hash(t),e,a.inputAddressFormatter(r)).send(n)})).then((function(t){"function"!=typeof u?f.resolve(t):u(t,t)})).catch((function(t){"function"!=typeof u?f.reject(t):u(t,null)})),f.eventEmitter},c.prototype.setRecord=function(t,e,r,n,s,u){var f=new o(!0);return this.contract.then((function(o){return o.methods.setRecord(i.hash(t),a.inputAddressFormatter(e),a.inputAddressFormatter(r),n).send(s)})).then((function(t){"function"!=typeof u?f.resolve(t):u(t,t)})).catch((function(t){"function"!=typeof u?f.reject(t):u(t,null)})),f.eventEmitter},c.prototype.setSubnodeRecord=function(t,e,r,n,u,f,c){var h=new o(!0);return s.isHexStrict(e)||(e=s.sha3(e)),this.contract.then((function(o){return o.methods.setSubnodeRecord(i.hash(t),e,a.inputAddressFormatter(r),a.inputAddressFormatter(n),u).send(f)})).then((function(t){"function"!=typeof c?h.resolve(t):c(t,t)})).catch((function(t){"function"!=typeof c?h.reject(t):c(t,null)})),h.eventEmitter},c.prototype.setApprovalForAll=function(t,e,r,n){var i=new o(!0);return this.contract.then((function(n){return n.methods.setApprovalForAll(a.inputAddressFormatter(t),e).send(r)})).then((function(t){"function"!=typeof n?i.resolve(t):n(t,t)})).catch((function(t){"function"!=typeof n?i.reject(t):n(t,null)})),i.eventEmitter},c.prototype.isApprovedForAll=function(t,e,r){var n=new o(!0);return this.contract.then((function(r){return r.methods.isApprovedForAll(a.inputAddressFormatter(t),a.inputAddressFormatter(e)).call()})).then((function(t){"function"!=typeof r?n.resolve(t):r(t,t)})).catch((function(t){"function"!=typeof r?n.reject(t):r(t,null)})),n.eventEmitter},c.prototype.recordExists=function(t,e){var r=new o(!0);return this.contract.then((function(e){return e.methods.recordExists(i.hash(t)).call()})).then((function(t){"function"!=typeof e?r.resolve(t):e(t,t)})).catch((function(t){"function"!=typeof e?r.reject(t):e(t,null)})),r.eventEmitter},c.prototype.resolver=function(t,e){return console.warn('Deprecated: Please use the "getResolver" method instead of "resolver".'),this.getResolver(t,e)},c.prototype.getResolver=function(t,e){var r=this;return this.contract.then((function(e){return e.methods.resolver(i.hash(t)).call()})).then((function(t){var i=new n(f,t);if(i.setProvider(r.ens.eth.currentProvider),"function"!=typeof e)return i;e(i,i)})).catch((function(t){if("function"!=typeof e)throw t;e(t,null)}))},c.prototype.setResolver=function(t,e,r,n){var s=new o(!0);return this.contract.then((function(n){return n.methods.setResolver(i.hash(t),a.inputAddressFormatter(e)).send(r)})).then((function(t){"function"!=typeof n?s.resolve(t):n(t,t)})).catch((function(t){"function"!=typeof n?s.reject(t):n(t,null)})),s.eventEmitter},t.exports=c},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.AddressCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13)),f=r(59),c=r(11);function h(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var l=function(t){(0,a.default)(r,t);var e=h(r);function r(t){return(0,i.default)(this,r),e.call(this,"address","address",t,!1)}return(0,o.default)(r,[{key:"encode",value:function(t,e){try{(0,f.getAddress)(e)}catch(t){this._throwError(t.message,e)}return t.writeValue(e)}},{key:"decode",value:function(t){return(0,f.getAddress)((0,c.hexZeroPad)(t.readValue().toHexString(),20))}}]),r}(r(20).Coder);e.AddressCoder=l},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.AnonymousCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13));function f(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var c=function(t){(0,a.default)(r,t);var e=f(r);function r(t){var n;return(0,i.default)(this,r),(n=e.call(this,t.name,t.type,void 0,t.dynamic)).coder=t,n}return(0,o.default)(r,[{key:"encode",value:function(t,e){return this.coder.encode(t,e)}},{key:"decode",value:function(t){return this.coder.decode(t)}}]),r}(r(20).Coder);e.AnonymousCoder=c},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.BooleanCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13));function f(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var c=function(t){(0,a.default)(r,t);var e=f(r);function r(t){return(0,i.default)(this,r),e.call(this,"bool","bool",t,!1)}return(0,o.default)(r,[{key:"encode",value:function(t,e){return t.writeValue(e?1:0)}},{key:"decode",value:function(t){return t.coerce(this.type,!t.readValue().isZero())}}]),r}(r(20).Coder);e.BooleanCoder=c},function(t,e,r){"use strict";var n=r(13);t.exports=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=n(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.FixedBytesCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13)),f=r(11);function c(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var h=function(t){(0,a.default)(r,t);var e=c(r);function r(t,n){var o;(0,i.default)(this,r);var a="bytes"+String(t);return(o=e.call(this,a,a,n,!1)).size=t,o}return(0,o.default)(r,[{key:"encode",value:function(t,e){var r=(0,f.arrayify)(e);return r.length!==this.size&&this._throwError("incorrect data length",e),t.writeBytes(r)}},{key:"decode",value:function(t){return t.coerce(this.name,(0,f.hexlify)(t.readBytes(this.size)))}}]),r}(r(20).Coder);e.FixedBytesCoder=h},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.NullCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13));function f(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var c=function(t){(0,a.default)(r,t);var e=f(r);function r(t){return(0,i.default)(this,r),e.call(this,"null","",t,!1)}return(0,o.default)(r,[{key:"encode",value:function(t,e){return null!=e&&this._throwError("not null",e),t.writeBytes([])}},{key:"decode",value:function(t){return t.readBytes(0),t.coerce(this.name,null)}}]),r}(r(20).Coder);e.NullCoder=c},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.NumberCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13)),f=r(24),c=r(79);function h(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var l=function(t){(0,a.default)(r,t);var e=h(r);function r(t,n,o){var a;(0,i.default)(this,r);var s=(n?"int":"uint")+8*t;return(a=e.call(this,s,s,o,!1)).size=t,a.signed=n,a}return(0,o.default)(r,[{key:"encode",value:function(t,e){var r=f.BigNumber.from(e),n=c.MaxUint256.mask(8*t.wordSize);if(this.signed){var i=n.mask(8*this.size-1);(r.gt(i)||r.lt(i.add(c.One).mul(c.NegativeOne)))&&this._throwError("value out-of-bounds",e)}else(r.lt(c.Zero)||r.gt(n.mask(8*this.size)))&&this._throwError("value out-of-bounds",e);return r=r.toTwos(8*this.size).mask(8*this.size),this.signed&&(r=r.fromTwos(8*this.size).toTwos(8*t.wordSize)),t.writeValue(r)}},{key:"decode",value:function(t){var e=t.readValue().mask(8*this.size);return this.signed&&(e=e.fromTwos(8*this.size)),t.coerce(this.name,e)}}]),r}(r(20).Coder);e.NumberCoder=l},function(t,e,r){"use strict";var n=r(0);Object.defineProperty(e,"__esModule",{value:!0}),e.StringCoder=void 0;var i=n(r(5)),o=n(r(9)),a=n(r(141)),s=n(r(14)),u=n(r(15)),f=n(r(13)),c=r(62);function h(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,f.default)(t);if(e){var i=(0,f.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,u.default)(this,r)}}var l=function(t){(0,s.default)(r,t);var e=h(r);function r(t){return(0,i.default)(this,r),e.call(this,"string",t)}return(0,o.default)(r,[{key:"encode",value:function(t,e){return(0,a.default)((0,f.default)(r.prototype),"encode",this).call(this,t,(0,c.toUtf8Bytes)(e))}},{key:"decode",value:function(t){return(0,c.toUtf8String)((0,a.default)((0,f.default)(r.prototype),"decode",this).call(this,t))}}]),r}(r(140).DynamicBytesCoder);e.StringCoder=l},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.formatBytes32String=function(t){var e=(0,o.toUtf8Bytes)(t);if(e.length>31)throw new Error("bytes32 string must be less than 32 bytes");return(0,i.hexlify)((0,i.concat)([e,n.HashZero]).slice(0,32))},e.parseBytes32String=function(t){var e=(0,i.arrayify)(t);if(32!==e.length)throw new Error("invalid bytes32 - not 32 bytes long");if(0!==e[31])throw new Error("invalid bytes32 string - no null terminator");var r=31;for(;0===e[r-1];)r--;return(0,o.toUtf8String)(e.slice(0,r))};var n=r(79),i=r(11),o=r(81)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.version=void 0;e.version="strings/5.1.0"},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e._nameprepTableA1=p,e._nameprepTableB2=m,e._nameprepTableC=b,e.nameprep=function(t){if(t.match(/^[a-z0-9-]*$/i)&&t.length<=59)return t.toLowerCase();var e=(0,n.toUtf8CodePoints)(t);r=e.map((function(t){if(u.indexOf(t)>=0)return[];if(t>=65024&&t<=65039)return[];var e=m(t);return e||[t]})),e=r.reduce((function(t,e){return e.forEach((function(e){t.push(e)})),t}),[]),(e=(0,n.toUtf8CodePoints)((0,n._toUtf8String)(e),n.UnicodeNormalizationForm.NFKC)).forEach((function(t){if(b(t))throw new Error("STRINGPREP_CONTAINS_PROHIBITED")})),e.forEach((function(t){if(p(t))throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")}));var r;var i=(0,n._toUtf8String)(e);if("-"===i.substring(0,1)||"--"===i.substring(2,4)||"-"===i.substring(i.length-1))throw new Error("invalid hyphen");if(i.length>63)throw new Error("too long");return i};var n=r(81);function i(t,e){e||(e=function(t){return[parseInt(t,16)]});var r=0,n={};return t.split(",").forEach((function(t){var i=t.split(":");r+=parseInt(i[0],16),n[r]=e(i[1])})),n}function o(t){var e=0;return t.split(",").map((function(t){var r=t.split("-");return 1===r.length?r[1]="0":""===r[1]&&(r[1]="1"),{l:e+parseInt(r[0],16),h:e=parseInt(r[1],16)}}))}function a(t,e){for(var r=0,n=0;n=(r+=i.l)&&t<=r+i.h&&(t-r)%(i.d||1)==0){if(i.e&&-1!==i.e.indexOf(t-r))continue;return i}}return null}var s=o("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d"),u="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(t){return parseInt(t,16)})),f=[{h:25,s:32,l:65},{h:30,s:32,e:[23],l:127},{h:54,s:1,e:[48],l:64,d:2},{h:14,s:1,l:57,d:2},{h:44,s:1,l:17,d:2},{h:10,s:1,e:[2,6,8],l:61,d:2},{h:16,s:1,l:68,d:2},{h:84,s:1,e:[18,24,66],l:19,d:2},{h:26,s:32,e:[17],l:435},{h:22,s:1,l:71,d:2},{h:15,s:80,l:40},{h:31,s:32,l:16},{h:32,s:1,l:80,d:2},{h:52,s:1,l:42,d:2},{h:12,s:1,l:55,d:2},{h:40,s:1,e:[38],l:15,d:2},{h:14,s:1,l:48,d:2},{h:37,s:48,l:49},{h:148,s:1,l:6351,d:2},{h:88,s:1,l:160,d:2},{h:15,s:16,l:704},{h:25,s:26,l:854},{h:25,s:32,l:55915},{h:37,s:40,l:1247},{h:25,s:-119711,l:53248},{h:25,s:-119763,l:52},{h:25,s:-119815,l:52},{h:25,s:-119867,e:[1,4,5,7,8,11,12,17],l:52},{h:25,s:-119919,l:52},{h:24,s:-119971,e:[2,7,8,17],l:52},{h:24,s:-120023,e:[2,7,13,15,16,17],l:52},{h:25,s:-120075,l:52},{h:25,s:-120127,l:52},{h:25,s:-120179,l:52},{h:25,s:-120231,l:52},{h:25,s:-120283,l:52},{h:25,s:-120335,l:52},{h:24,s:-119543,e:[17],l:56},{h:24,s:-119601,e:[17],l:58},{h:24,s:-119659,e:[17],l:58},{h:24,s:-119717,e:[17],l:58},{h:24,s:-119775,e:[17],l:58}],c=i("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3"),h=i("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7"),l=i("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D",(function(t){if(t.length%4!=0)throw new Error("bad data");for(var e=[],r=0;r1&&_.throwArgumentError("multiple matching functions","name",r),this.functions[n[0]]}var i=this.functions[v.FunctionFragment.fromString(t).format()];return i||_.throwArgumentError("no matching function","signature",t),i}},{key:"getEvent",value:function(t){if((0,h.isHexString)(t)){var e=t.toLowerCase();for(var r in this.events)if(e===this.getEventTopic(r))return this.events[r];_.throwArgumentError("no matching event","topichash",e)}if(-1===t.indexOf("(")){var n=t.trim(),i=Object.keys(this.events).filter((function(t){return t.split("(")[0]===n}));return 0===i.length?_.throwArgumentError("no matching event","name",n):i.length>1&&_.throwArgumentError("multiple matching events","name",n),this.events[i[0]]}var o=this.events[v.EventFragment.fromString(t).format()];return o||_.throwArgumentError("no matching event","signature",t),o}},{key:"getSighash",value:function(t){return"string"==typeof t&&(t=this.getFunction(t)),(0,p.getStatic)(this.constructor,"getSighash")(t)}},{key:"getEventTopic",value:function(t){return"string"==typeof t&&(t=this.getEvent(t)),(0,p.getStatic)(this.constructor,"getEventTopic")(t)}},{key:"_decodeParams",value:function(t,e){return this._abiCoder.decode(t,e)}},{key:"_encodeParams",value:function(t,e){return this._abiCoder.encode(t,e)}},{key:"encodeDeploy",value:function(t){return this._encodeParams(this.deploy.inputs,t||[])}},{key:"decodeFunctionData",value:function(t,e){"string"==typeof t&&(t=this.getFunction(t));var r=(0,h.arrayify)(e);return(0,h.hexlify)(r.slice(0,4))!==this.getSighash(t)&&_.throwArgumentError("data signature does not match function ".concat(t.name,"."),"data",(0,h.hexlify)(r)),this._decodeParams(t.inputs,r.slice(4))}},{key:"encodeFunctionData",value:function(t,e){return"string"==typeof t&&(t=this.getFunction(t)),(0,h.hexlify)((0,h.concat)([this.getSighash(t),this._encodeParams(t.inputs,e||[])]))}},{key:"decodeFunctionResult",value:function(t,e){"string"==typeof t&&(t=this.getFunction(t));var r=(0,h.arrayify)(e),n=null,i=null;switch(r.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(t.outputs,r)}catch(t){}break;case 4:"0x08c379a0"===(0,h.hexlify)(r.slice(0,4))&&(i="Error(string)",n=this._abiCoder.decode(["string"],r.slice(4))[0])}return _.throwError("call revert exception",y.Logger.errors.CALL_EXCEPTION,{method:t.format(),errorSignature:i,errorArgs:[n],reason:n})}},{key:"encodeFunctionResult",value:function(t,e){return"string"==typeof t&&(t=this.getFunction(t)),(0,h.hexlify)(this._abiCoder.encode(t.outputs,e||[]))}},{key:"encodeFilterTopics",value:function(t,e){var r=this;"string"==typeof t&&(t=this.getEvent(t)),e.length>t.inputs.length&&_.throwError("too many arguments for "+t.format(),y.Logger.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:e});var n=[];t.anonymous||n.push(this.getEventTopic(t));var i=function(t,e){return"string"===t.type?(0,l.id)(e):"bytes"===t.type?(0,d.keccak256)((0,h.hexlify)(e)):("address"===t.type&&r._abiCoder.encode(["address"],[e]),(0,h.hexZeroPad)((0,h.hexlify)(e),32))};for(e.forEach((function(e,r){var o=t.inputs[r];o.indexed?null==e?n.push(null):"array"===o.baseType||"tuple"===o.baseType?_.throwArgumentError("filtering with tuples or arrays not supported","contract."+o.name,e):Array.isArray(e)?n.push(e.map((function(t){return i(o,t)}))):n.push(i(o,e)):null!=e&&_.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+o.name,e)}));n.length&&null===n[n.length-1];)n.pop();return n}},{key:"encodeEventLog",value:function(t,e){var r=this;"string"==typeof t&&(t=this.getEvent(t));var n=[],i=[],o=[];return t.anonymous||n.push(this.getEventTopic(t)),e.length!==t.inputs.length&&_.throwArgumentError("event arguments/values mismatch","values",e),t.inputs.forEach((function(t,a){var s=e[a];if(t.indexed)if("string"===t.type)n.push((0,l.id)(s));else if("bytes"===t.type)n.push((0,d.keccak256)(s));else{if("tuple"===t.baseType||"array"===t.baseType)throw new Error("not implemented");n.push(r._abiCoder.encode([t.type],[s]))}else i.push(t),o.push(s)})),{data:this._abiCoder.encode(i,o),topics:n}}},{key:"decodeEventLog",value:function(t,e,r){if("string"==typeof t&&(t=this.getEvent(t)),null!=r&&!t.anonymous){var n=this.getEventTopic(t);(0,h.isHexString)(r[0],32)&&r[0].toLowerCase()===n||_.throwError("fragment/topic mismatch",y.Logger.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:n,value:r[0]}),r=r.slice(1)}var i=[],o=[],a=[];t.inputs.forEach((function(t,e){t.indexed?"string"===t.type||"bytes"===t.type||"tuple"===t.baseType||"array"===t.baseType?(i.push(v.ParamType.fromObject({type:"bytes32",name:t.name})),a.push(!0)):(i.push(t),a.push(!1)):(o.push(t),a.push(!1))}));var s=null!=r?this._abiCoder.decode(i,(0,h.concat)(r)):null,u=this._abiCoder.decode(o,e,!0),f=[],c=0,l=0;t.inputs.forEach((function(t,e){if(t.indexed)if(null==s)f[e]=new S({_isIndexed:!0,hash:null});else if(a[e])f[e]=new S({_isIndexed:!0,hash:s[l++]});else try{f[e]=s[l++]}catch(t){f[e]=t}else try{f[e]=u[c++]}catch(t){f[e]=t}if(t.name&&null==f[t.name]){var r=f[e];r instanceof Error?Object.defineProperty(f,t.name,{get:function(){throw A("property ".concat(JSON.stringify(t.name)),r)}}):f[t.name]=r}}));for(var d=function(t){var e=f[t];e instanceof Error&&Object.defineProperty(f,t,{get:function(){throw A("index ".concat(t),e)}})},p=0;p256||e[2]&&e[2]!==String(n))&&b.throwArgumentError("invalid numeric width","type",t);var i=_.mask(r?n-1:n),o=r?i.add(w).mul(y):g;return function(e){var r=u.BigNumber.from(e);return(r.lt(o)||r.gt(i))&&b.throwArgumentError("value out-of-bounds for ".concat(t),"value",e),(0,f.hexZeroPad)(r.toTwos(256).toHexString(),32)}}var a=t.match(/^bytes(\d+)$/);if(a){var h=parseInt(a[1]);return(0===h||h>32||a[1]!==String(h))&&b.throwArgumentError("invalid bytes width","type",t),function(e){return(0,f.arrayify)(e).length!==h&&b.throwArgumentError("invalid length for ".concat(t),"value",e),function(t){var e=(0,f.arrayify)(t),r=e.length%32;return r?(0,f.hexConcat)([e,v.slice(r)]):(0,f.hexlify)(e)}(e)}}switch(t){case"address":return function(t){return(0,f.hexZeroPad)((0,s.getAddress)(t),32)};case"bool":return function(t){return t?k:M};case"bytes":return function(t){return(0,c.keccak256)(t)};case"string":return function(t){return(0,p.id)(t)}}return null}function P(t,e){return"".concat(t,"(").concat(e.map((function(t){var e=t.name;return t.type+" "+e})).join(","),")")}var B=function(){function t(e){(0,o.default)(this,t),(0,h.defineReadOnly)(this,"types",Object.freeze((0,h.deepCopy)(e))),(0,h.defineReadOnly)(this,"_encoderCache",{}),(0,h.defineReadOnly)(this,"_types",{});var r={},n={},i={};Object.keys(e).forEach((function(t){r[t]={},n[t]=[],i[t]={}}));var a=function(t){var i={};e[t].forEach((function(o){i[o.name]&&b.throwArgumentError("duplicate variable name ".concat(JSON.stringify(o.name)," in ").concat(JSON.stringify(t)),"types",e),i[o.name]=!0;var a=o.type.match(/^([^\x5b]*)(\x5b|$)/)[1];a===t&&b.throwArgumentError("circular type reference to ".concat(JSON.stringify(a)),"types",e),O(a)||(n[a]||b.throwArgumentError("unknown type ".concat(JSON.stringify(a)),"types",e),n[a].push(t),r[t][a]=!0)}))};for(var s in e)a(s);var u=Object.keys(n).filter((function(t){return 0===n[t].length}));for(var f in 0===u.length?b.throwArgumentError("missing primary type","types",e):u.length>1&&b.throwArgumentError("ambiguous primary types or unused types: ".concat(u.map((function(t){return JSON.stringify(t)})).join(", ")),"types",e),(0,h.defineReadOnly)(this,"primaryType",u[0]),function t(o,a){a[o]&&b.throwArgumentError("circular type reference to ".concat(JSON.stringify(o)),"types",e),a[o]=!0,Object.keys(r[o]).forEach((function(e){n[e]&&(t(e,a),Object.keys(a).forEach((function(t){i[t][e]=!0})))})),delete a[o]}(this.primaryType,{}),i){var c=Object.keys(i[f]);c.sort(),this._types[f]=P(f,e[f])+c.map((function(t){return P(t,e[t])})).join("")}}return(0,a.default)(t,[{key:"getEncoder",value:function(t){var e=this._encoderCache[t];return e||(e=this._encoderCache[t]=this._getEncoder(t)),e}},{key:"_getEncoder",value:function(t){var e=this,r=O(t);if(r)return r;var n=t.match(/^(.*)(\x5b(\d*)\x5d)$/);if(n){var i=n[1],o=this.getEncoder(i),a=parseInt(n[3]);return function(t){a>=0&&t.length!==a&&b.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",t);var r=t.map(o);return e._types[i]&&(r=r.map(c.keccak256)),(0,c.keccak256)((0,f.hexConcat)(r))}}var s=this.types[t];if(s){var u=(0,p.id)(this._types[t]);return function(t){var r=s.map((function(r){var n=r.name,i=r.type,o=e.getEncoder(i)(t[n]);return e._types[i]?(0,c.keccak256)(o):o}));return r.unshift(u),(0,f.hexConcat)(r)}}return b.throwArgumentError("unknown type: ".concat(t),"type",t)}},{key:"encodeType",value:function(t){var e=this._types[t];return e||b.throwArgumentError("unknown type: ".concat(JSON.stringify(t)),"name",t),e}},{key:"encodeData",value:function(t,e){return this.getEncoder(t)(e)}},{key:"hashStruct",value:function(t,e){return(0,c.keccak256)(this.encodeData(t,e))}},{key:"encode",value:function(t){return this.encodeData(this.primaryType,t)}},{key:"hash",value:function(t){return this.hashStruct(this.primaryType,t)}},{key:"_visit",value:function(t,e,r){var n=this;if(O(t))return r(t,e);var i=t.match(/^(.*)(\x5b(\d*)\x5d)$/);if(i){var o=i[1],a=parseInt(i[3]);return a>=0&&e.length!==a&&b.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",e),e.map((function(t){return n._visit(o,t,r)}))}var s=this.types[t];return s?s.reduce((function(t,i){var o=i.name,a=i.type;return t[o]=n._visit(a,e[o],r),t}),{}):b.throwArgumentError("unknown type: ".concat(t),"type",t)}},{key:"visit",value:function(t,e){return this._visit(this.primaryType,t,e)}}],[{key:"from",value:function(e){return new t(e)}},{key:"getPrimaryType",value:function(e){return t.from(e).primaryType}},{key:"hashStruct",value:function(e,r,n){return t.from(r).hashStruct(e,n)}},{key:"hashDomain",value:function(e){var r=[];for(var n in e){var i=S[n];i||b.throwArgumentError("invalid typed-data domain key: ".concat(JSON.stringify(n)),"domain",e),r.push({name:n,type:i})}return r.sort((function(t,e){return A.indexOf(t.name)-A.indexOf(e.name)})),t.hashStruct("EIP712Domain",{EIP712Domain:r},e)}},{key:"encode",value:function(e,r,n){return(0,f.hexConcat)(["0x1901",t.hashDomain(e),t.from(r).hash(n)])}},{key:"hash",value:function(e,r,n){return(0,c.keccak256)(t.encode(e,r,n))}},{key:"resolveNames",value:function(e,r,n,o){return m(this,void 0,void 0,i.default.mark((function a(){var s,u,c;return i.default.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:e=(0,h.shallowCopy)(e),s={},e.verifyingContract&&!(0,f.isHexString)(e.verifyingContract,20)&&(s[e.verifyingContract]="0x"),(u=t.from(r)).visit(n,(function(t,e){return"address"!==t||(0,f.isHexString)(e,20)||(s[e]="0x"),e})),a.t0=i.default.keys(s);case 6:if((a.t1=a.t0()).done){a.next=13;break}return c=a.t1.value,a.next=10,o(c);case 10:s[c]=a.sent,a.next=6;break;case 13:return e.verifyingContract&&s[e.verifyingContract]&&(e.verifyingContract=s[e.verifyingContract]),n=u.visit(n,(function(t,e){return"address"===t&&s[e]?s[e]:e})),a.abrupt("return",{domain:e,value:n});case 16:case"end":return a.stop()}}),a)})))}},{key:"getPayload",value:function(e,r,n){t.hashDomain(e);var i={},o=[];A.forEach((function(t){var r=e[t];null!=r&&(i[t]=E[t](r),o.push({name:t,type:S[t]}))}));var a=t.from(r),s=(0,h.shallowCopy)(r);return s.EIP712Domain?b.throwArgumentError("types must not contain EIP712Domain type","types.EIP712Domain",r):s.EIP712Domain=o,a.encode(n),{types:s,domain:i,primaryType:a.primaryType,message:a.visit(n,(function(t,e){if(t.match(/^bytes(\d*)/))return(0,f.hexlify)((0,f.arrayify)(e));if(t.match(/^u?int/))return u.BigNumber.from(e).toString();switch(t){case"address":return e.toLowerCase();case"bool":return!!e;case"string":return"string"!=typeof e&&b.throwArgumentError("invalid string","value",e),e}return b.throwArgumentError("unsupported type","type",t)}))}}}]),t}();e.TypedDataEncoder=B},function(t,e,r){"use strict";(function(t,e,n){var i=r(0)(r(2)); - /** - * [js-sha3]{@link https://github.com/emn178/js-sha3} - * - * @version 0.5.7 - * @author Chen, Yi-Cyuan [emn178@gmail.com] - * @copyright Chen, Yi-Cyuan 2015-2016 - * @license MIT - */ - !function(){var r="object"===("undefined"==typeof window?"undefined":(0,i.default)(window))?window:{};!r.JS_SHA3_NO_NODE_JS&&"object"===(void 0===t?"undefined":(0,i.default)(t))&&t.versions&&t.versions.node&&(r=e);for(var o=!r.JS_SHA3_NO_COMMON_JS&&"object"===(0,i.default)(n)&&n.exports,a="0123456789abcdef".split(""),s=[0,8,16,24],u=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],f=[224,256,384,512],c=["hex","buffer","arrayBuffer","array"],h=function(t,e,r){return function(n){return new k(t,e,t).update(n)[r]()}},l=function(t,e,r){return function(n,i){return new k(t,e,i).update(n)[r]()}},d=function(t,e){var r=h(t,e,"hex");r.create=function(){return new k(t,e,t)},r.update=function(t){return r.create().update(t)};for(var n=0;n>5,this.byteCount=this.blockCount<<2,this.outputBlocks=r>>5,this.extraBytes=(31&r)>>3;for(var n=0;n<50;++n)this.s[n]=0}k.prototype.update=function(t){var e="string"!=typeof t;e&&t.constructor===ArrayBuffer&&(t=new Uint8Array(t));for(var r,n,i=t.length,o=this.blocks,a=this.byteCount,u=this.blockCount,f=0,c=this.s;f>2]|=t[f]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|63&n)<=57344?(o[r>>2]|=(224|n>>12)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<>2]|=(240|n>>18)<>2]|=(128|n>>12&63)<>2]|=(128|n>>6&63)<>2]|=(128|63&n)<=a){for(this.start=r-a,this.block=o[u],r=0;r>2]|=this.padding[3&e],this.lastByteIndex===this.byteCount)for(t[0]=t[r],e=1;e>4&15]+a[15&t]+a[t>>12&15]+a[t>>8&15]+a[t>>20&15]+a[t>>16&15]+a[t>>28&15]+a[t>>24&15];s%e==0&&(M(r),o=0)}return i&&(t=r[o],i>0&&(u+=a[t>>4&15]+a[15&t]),i>1&&(u+=a[t>>12&15]+a[t>>8&15]),i>2&&(u+=a[t>>20&15]+a[t>>16&15])),u},k.prototype.arrayBuffer=function(){this.finalize();var t,e=this.blockCount,r=this.s,n=this.outputBlocks,i=this.extraBytes,o=0,a=0,s=this.outputBits>>3;t=i?new ArrayBuffer(n+1<<2):new ArrayBuffer(s);for(var u=new Uint32Array(t);a>8&255,u[t+2]=e>>16&255,u[t+3]=e>>24&255;s%r==0&&M(n)}return o&&(t=s<<2,e=n[a],o>0&&(u[t]=255&e),o>1&&(u[t+1]=e>>8&255),o>2&&(u[t+2]=e>>16&255)),u};var M=function(t){var e,r,n,i,o,a,s,f,c,h,l,d,p,m,b,v,y,g,w,_,k,M,S,A,x,E,O,P,B,T,R,I,C,U,j,N,L,F,D,q,H,z,K,G,V,W,Z,J,X,Y,$,Q,tt,et,rt,nt,it,ot,at,st,ut,ft,ct;for(n=0;n<48;n+=2)i=t[0]^t[10]^t[20]^t[30]^t[40],o=t[1]^t[11]^t[21]^t[31]^t[41],a=t[2]^t[12]^t[22]^t[32]^t[42],s=t[3]^t[13]^t[23]^t[33]^t[43],f=t[4]^t[14]^t[24]^t[34]^t[44],c=t[5]^t[15]^t[25]^t[35]^t[45],h=t[6]^t[16]^t[26]^t[36]^t[46],l=t[7]^t[17]^t[27]^t[37]^t[47],e=(d=t[8]^t[18]^t[28]^t[38]^t[48])^(a<<1|s>>>31),r=(p=t[9]^t[19]^t[29]^t[39]^t[49])^(s<<1|a>>>31),t[0]^=e,t[1]^=r,t[10]^=e,t[11]^=r,t[20]^=e,t[21]^=r,t[30]^=e,t[31]^=r,t[40]^=e,t[41]^=r,e=i^(f<<1|c>>>31),r=o^(c<<1|f>>>31),t[2]^=e,t[3]^=r,t[12]^=e,t[13]^=r,t[22]^=e,t[23]^=r,t[32]^=e,t[33]^=r,t[42]^=e,t[43]^=r,e=a^(h<<1|l>>>31),r=s^(l<<1|h>>>31),t[4]^=e,t[5]^=r,t[14]^=e,t[15]^=r,t[24]^=e,t[25]^=r,t[34]^=e,t[35]^=r,t[44]^=e,t[45]^=r,e=f^(d<<1|p>>>31),r=c^(p<<1|d>>>31),t[6]^=e,t[7]^=r,t[16]^=e,t[17]^=r,t[26]^=e,t[27]^=r,t[36]^=e,t[37]^=r,t[46]^=e,t[47]^=r,e=h^(i<<1|o>>>31),r=l^(o<<1|i>>>31),t[8]^=e,t[9]^=r,t[18]^=e,t[19]^=r,t[28]^=e,t[29]^=r,t[38]^=e,t[39]^=r,t[48]^=e,t[49]^=r,m=t[0],b=t[1],W=t[11]<<4|t[10]>>>28,Z=t[10]<<4|t[11]>>>28,P=t[20]<<3|t[21]>>>29,B=t[21]<<3|t[20]>>>29,st=t[31]<<9|t[30]>>>23,ut=t[30]<<9|t[31]>>>23,z=t[40]<<18|t[41]>>>14,K=t[41]<<18|t[40]>>>14,U=t[2]<<1|t[3]>>>31,j=t[3]<<1|t[2]>>>31,v=t[13]<<12|t[12]>>>20,y=t[12]<<12|t[13]>>>20,J=t[22]<<10|t[23]>>>22,X=t[23]<<10|t[22]>>>22,T=t[33]<<13|t[32]>>>19,R=t[32]<<13|t[33]>>>19,ft=t[42]<<2|t[43]>>>30,ct=t[43]<<2|t[42]>>>30,et=t[5]<<30|t[4]>>>2,rt=t[4]<<30|t[5]>>>2,N=t[14]<<6|t[15]>>>26,L=t[15]<<6|t[14]>>>26,g=t[25]<<11|t[24]>>>21,w=t[24]<<11|t[25]>>>21,Y=t[34]<<15|t[35]>>>17,$=t[35]<<15|t[34]>>>17,I=t[45]<<29|t[44]>>>3,C=t[44]<<29|t[45]>>>3,A=t[6]<<28|t[7]>>>4,x=t[7]<<28|t[6]>>>4,nt=t[17]<<23|t[16]>>>9,it=t[16]<<23|t[17]>>>9,F=t[26]<<25|t[27]>>>7,D=t[27]<<25|t[26]>>>7,_=t[36]<<21|t[37]>>>11,k=t[37]<<21|t[36]>>>11,Q=t[47]<<24|t[46]>>>8,tt=t[46]<<24|t[47]>>>8,G=t[8]<<27|t[9]>>>5,V=t[9]<<27|t[8]>>>5,E=t[18]<<20|t[19]>>>12,O=t[19]<<20|t[18]>>>12,ot=t[29]<<7|t[28]>>>25,at=t[28]<<7|t[29]>>>25,q=t[38]<<8|t[39]>>>24,H=t[39]<<8|t[38]>>>24,M=t[48]<<14|t[49]>>>18,S=t[49]<<14|t[48]>>>18,t[0]=m^~v&g,t[1]=b^~y&w,t[10]=A^~E&P,t[11]=x^~O&B,t[20]=U^~N&F,t[21]=j^~L&D,t[30]=G^~W&J,t[31]=V^~Z&X,t[40]=et^~nt&ot,t[41]=rt^~it&at,t[2]=v^~g&_,t[3]=y^~w&k,t[12]=E^~P&T,t[13]=O^~B&R,t[22]=N^~F&q,t[23]=L^~D&H,t[32]=W^~J&Y,t[33]=Z^~X&$,t[42]=nt^~ot&st,t[43]=it^~at&ut,t[4]=g^~_&M,t[5]=w^~k&S,t[14]=P^~T&I,t[15]=B^~R&C,t[24]=F^~q&z,t[25]=D^~H&K,t[34]=J^~Y&Q,t[35]=X^~$&tt,t[44]=ot^~st&ft,t[45]=at^~ut&ct,t[6]=_^~M&m,t[7]=k^~S&b,t[16]=T^~I&A,t[17]=R^~C&x,t[26]=q^~z&U,t[27]=H^~K&j,t[36]=Y^~Q&G,t[37]=$^~tt&V,t[46]=st^~ft&et,t[47]=ut^~ct&rt,t[8]=M^~m&v,t[9]=S^~b&y,t[18]=I^~A&E,t[19]=C^~x&O,t[28]=z^~U&N,t[29]=K^~j&L,t[38]=Q^~G&W,t[39]=tt^~V&Z,t[48]=ft^~et&nt,t[49]=ct^~rt&it,t[0]^=u[n],t[1]^=u[n+1]};if(o)n.exports=m;else for(v=0;v>23,l=c>>21&3,d=c>>5&65535,p=31&c,m=e.mapStr.substr(d,p);if(0===l||n&&1&h)throw new Error("Illegal char "+f);1===l?o.push(m):2===l?o.push(i?m:f):3===l&&o.push(f)}return o.join("").normalize("NFC")}function n(e,n,o){void 0===o&&(o=!1);var a=r(e,o,n).split(".");return(a=a.map((function(e){return e.startsWith("xn--")?i(e=t.decode(e.substring(4)),o,!1):i(e,o,n),e}))).join(".")}function i(t,n,i){if("-"===t[2]&&"-"===t[3])throw new Error("Failed to validate "+t);if(t.startsWith("-")||t.endsWith("-"))throw new Error("Failed to validate "+t);if(t.includes("."))throw new Error("Failed to validate "+t);if(r(t,n,i)!==t)throw new Error("Failed to validate "+t);var o=t.codePointAt(0);if(e.mapChar(o)&2<<23)throw new Error("Label contains illegal character: "+o)}return{toUnicode:function(t,e){return void 0===e&&(e={}),n(t,!1,"useStd3ASCII"in e&&e.useStd3ASCII)},toAscii:function(e,r){void 0===r&&(r={});var i,o=!("transitional"in r)||r.transitional,a="useStd3ASCII"in r&&r.useStd3ASCII,s="verifyDnsLength"in r&&r.verifyDnsLength,u=n(e,o,a).split(".").map(t.toASCII),f=u.join(".");if(s){if(f.length<1||f.length>253)throw new Error("DNS name has wrong length: "+f);for(i=0;i63)throw new Error("DNS label has wrong length: "+c)}}return f}}}(t,e)}.apply(e,n))||(t.exports=i)},function(t,e,r){"use strict";var n;r(0)(r(2));void 0===(n=function(){return t=[new Uint32Array([2157250,2157314,2157378,2157442,2157506,2157570,2157634,0,2157698,2157762,2157826,2157890,2157954,0,2158018,0]),new Uint32Array([2179041,6291456,2179073,6291456,2179105,6291456,2179137,6291456,2179169,6291456,2179201,6291456,2179233,6291456,2179265,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,14680064,14680064,14680064,14680064,14680064]),new Uint32Array([0,2113729,2197345,2197377,2113825,2197409,2197441,2113921,2197473,2114017,2197505,2197537,2197569,2197601,2197633,2197665]),new Uint32Array([6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,23068672,23068672,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,0,0,23068672,23068672,23068672,0,0,0,0,23068672]),new Uint32Array([14680064,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,14680064,14680064]),new Uint32Array([2196001,2196033,2196065,2196097,2196129,2196161,2196193,2196225,2196257,2196289,2196321,2196353,2196385,2196417,2196449,2196481]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,6291456,0,0,0,0,0]),new Uint32Array([2097281,2105921,2097729,2106081,0,2097601,2162337,2106017,2133281,2097505,2105889,2097185,2097697,2135777,2097633,2097441]),new Uint32Array([2177025,6291456,2177057,6291456,2177089,6291456,2177121,6291456,2177153,6291456,2177185,6291456,2177217,6291456,2177249,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,0,6291456,6291456,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456]),new Uint32Array([0,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,6291456]),new Uint32Array([2134435,2134531,2134627,2134723,2134723,2134819,2134819,2134915,2134915,2135011,2105987,2135107,2135203,2135299,2131587,2135395]),new Uint32Array([0,0,0,0,0,0,0,6291456,2168673,2169249,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2147906,2147970,2148034,2148098,2148162,2148226,2148290,2148354,2147906,2147970,2148034,2148098,2148162,2148226,2148290,2148354]),new Uint32Array([2125219,2125315,2152834,2152898,2125411,2152962,2153026,2125506,2125507,2125603,2153090,2153154,2153218,2153282,2153346,2105348]),new Uint32Array([2203393,6291456,2203425,6291456,2203457,6291456,2203489,6291456,6291456,6291456,6291456,2203521,6291456,2181281,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,23068672,6291456,2145538,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,6291456]),new Uint32Array([2139426,2160834,2160898,2160962,2134242,2161026,2161090,2161154,2161218,2161282,2161346,2161410,2138658,2161474,2161538,2134722]),new Uint32Array([2119939,2124930,2125026,2106658,2125218,2128962,2129058,2129154,2129250,2129346,2129442,2108866,2108770,2150466,2150530,2150594]),new Uint32Array([2201601,6291456,2201633,6291456,2201665,6291456,2201697,6291456,2201729,6291456,2201761,6291456,2201793,6291456,2201825,6291456]),new Uint32Array([2193537,2193569,2193601,2193633,2193665,2193697,2193729,2193761,2193793,2193825,2193857,2193889,2193921,2193953,2193985,2194017]),new Uint32Array([6291456,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2190561,6291456,2190593,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2190625,6291456,2190657,6291456,23068672]),new Uint32Array([2215905,2215937,2215969,2216001,2216033,2216065,2216097,2216129,2216161,2216193,2216225,2216257,2105441,2216289,2216321,2216353]),new Uint32Array([23068672,18884130,23068672,23068672,23068672,6291456,23068672,23068672,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672]),new Uint32Array([23068672,23068672,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,23068672,23068672,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2191233,2191265,2191297,2191329,2191361,2191393,2191425,2117377,2191457,2191489,2191521,2191553,2191585,2191617,2191649,2117953]),new Uint32Array([2132227,2132323,2132419,2132419,2132515,2132515,2132611,2132707,2132707,2132803,2132899,2132899,2132995,2132995,2133091,2133187]),new Uint32Array([0,0,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,6291456,0,0]),new Uint32Array([2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,10609889,10610785,10609921,10610817,2222241]),new Uint32Array([6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,0,0]),new Uint32Array([2219969,2157121,2157441,2157505,2157889,2157953,2220001,2158465,2158529,10575617,2156994,2157058,2129923,2130019,2157122,2157186]),new Uint32Array([6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0]),new Uint32Array([2185249,6291456,2185281,6291456,2185313,6291456,2185345,6291456,2185377,6291456,2185409,6291456,2185441,6291456,2185473,6291456]),new Uint32Array([0,0,0,0,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,0,23068672,23068672,0,0,23068672,23068672,23068672,6291456,0]),new Uint32Array([2183361,6291456,2183393,6291456,2183425,6291456,2183457,6291456,2183489,6291456,2183521,6291456,2183553,6291456,2183585,6291456]),new Uint32Array([2192161,2192193,2192225,2192257,2192289,2192321,2192353,2192385,2192417,2192449,2192481,2192513,2192545,2192577,2192609,2192641]),new Uint32Array([2212001,2212033,2212065,2212097,2212129,2212161,2212193,2212225,2212257,2212289,2212321,2212353,2212385,2212417,2212449,2207265]),new Uint32Array([2249825,2249857,2249889,2249921,2249954,2250018,2250082,2250145,2250177,2250209,2250241,2250274,2250337,2250370,2250433,2250465]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2147905,2147969,2148033,2148097,2148161,2148225,2148289,2148353]),new Uint32Array([10485857,6291456,2197217,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,23068672,23068672]),new Uint32Array([0,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456]),new Uint32Array([2180353,2180385,2144033,2180417,2180449,2180481,2180513,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,10610209,10610465,10610241,10610753,10609857]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,0,0]),new Uint32Array([2223842,2223906,2223970,2224034,2224098,2224162,2224226,2224290,2224354,2224418,2224482,2224546,2224610,2224674,2224738,2224802]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,6291456,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456]),new Uint32Array([23068672,23068672,23068672,18923650,23068672,23068672,23068672,23068672,0,23068672,23068672,23068672,23068672,18923714,23068672,23068672]),new Uint32Array([2126179,2125538,2126275,2126371,2126467,2125634,2126563,2105603,2105604,2125346,2126659,2126755,2126851,2098179,2098181,2098182]),new Uint32Array([2227426,2227490,2227554,2227618,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2192353,2240642,2240642,2240705,2240737,2240737,2240769,2240802,2240866,2240929,2240961,2240993,2241025,2241057,2241089,2241121]),new Uint32Array([6291456,2170881,2170913,2170945,6291456,2170977,6291456,2171009,2171041,6291456,6291456,6291456,2171073,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2132226,2132514,2163586,2132610,2160386,2133090,2133186,2160450,2160514,2160578,2133570,2106178,2160642,2133858,2160706,2160770]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,10532162,10532226,10532290,10532354,10532418,10532482,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,23068672]),new Uint32Array([2098209,2108353,2108193,2108481,2170241,2111713,2105473,2105569,2105601,2112289,2112481,2098305,2108321,0,0,0]),new Uint32Array([2209121,2209153,2209185,2209217,2209249,2209281,2209313,2209345,2209377,2209409,2209441,2209473,2207265,2209505,2209537,2209569]),new Uint32Array([2189025,6291456,2189057,6291456,2189089,6291456,2189121,6291456,2189153,6291456,2189185,6291456,2189217,6291456,2189249,6291456]),new Uint32Array([2173825,2153473,2173857,2173889,2173921,2173953,2173985,2173761,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2233057]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2165764,2140004]),new Uint32Array([2215105,6291456,2215137,6291456,6291456,2215169,2215201,6291456,6291456,6291456,2215233,2215265,2215297,2215329,2215361,2215393]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,6291456,6291456,6291456,23068672,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([10505091,10505187,10505283,10505379,10505475,10505571,10505667,10505763,10505859,10505955,10506051,10506147,10506243,10506339,10506435,10506531]),new Uint32Array([2229730,2229794,2229858,2229922,2229986,2230050,2230114,2230178,2230242,2230306,2230370,2230434,2230498,2230562,2230626,2230690]),new Uint32Array([2105505,2098241,2108353,2108417,2105825,0,2100897,2111905,2105473,2105569,2105601,2112289,2108193,2112481,2112577,2098177]),new Uint32Array([6291456,6291456,6291456,6291456,10502115,10502178,10502211,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456]),new Uint32Array([2190305,6291456,2190337,6291456,2190369,6291456,2190401,6291456,2190433,6291456,2190465,6291456,2190497,6291456,2190529,6291456]),new Uint32Array([2173793,2173985,2174017,6291456,2173761,2173697,6291456,2174689,6291456,2174017,2174721,6291456,6291456,2174753,2174785,2174817]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2099521,2099105,2120705,2098369,2120801,2103361,2097985,2098433,2121377,2121473,2099169,2099873,2098401,2099393,2152609,2100033]),new Uint32Array([2132898,2163842,2163906,2133282,2132034,2131938,2137410,2132802,2132706,2164866,2133282,2160578,2165186,2165186,6291456,6291456]),new Uint32Array([10500003,10500099,10500195,10500291,10500387,10500483,10500579,10500675,10500771,10500867,10500963,10501059,10501155,10501251,10501347,10501443]),new Uint32Array([2163458,2130978,2131074,2131266,2131362,2163522,2160130,2132066,2131010,2131106,2106018,2131618,2131298,2132034,2131938,2137410]),new Uint32Array([2212961,2116993,2212993,2213025,2213057,2213089,2213121,2213153,2213185,2213217,2213249,2209633,2213281,2213313,2213345,2213377]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456]),new Uint32Array([2113729,2113825,2113921,2114017,2114113,2114209,2114305,2114401,2114497,2114593,2114689,2114785,2114881,2114977,2115073,2115169]),new Uint32Array([2238177,2238209,2238241,2238273,2238305,2238337,2238337,2217537,2238369,2238401,2238433,2238465,2215649,2238497,2238529,2238561]),new Uint32Array([2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905]),new Uint32Array([6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,0,0]),new Uint32Array([6291456,0,6291456,2145026,0,6291456,2145090,0,6291456,6291456,0,0,23068672,0,23068672,23068672]),new Uint32Array([2099233,2122017,2200673,2098113,2121537,2103201,2200705,2104033,2121857,2121953,2122401,2099649,2099969,2123009,2100129,2100289]),new Uint32Array([6291456,23068672,6291456,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,23068672,23068672,0,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0]),new Uint32Array([2187681,2187713,2187745,2187777,2187809,2187841,2187873,2187905,2187937,2187969,2188001,2188033,2188065,2188097,2188129,2188161]),new Uint32Array([0,10554498,10554562,10554626,10554690,10554754,10554818,10554882,10554946,10555010,10555074,6291456,6291456,0,0,0]),new Uint32Array([2235170,2235234,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0]),new Uint32Array([2181153,6291456,2188897,6291456,6291456,2188929,6291456,6291456,6291456,6291456,6291456,6291456,2111905,2100865,2188961,2188993]),new Uint32Array([2100833,2100897,0,0,2101569,2101697,2101825,2101953,2102081,2102209,10575617,2187041,10502177,10489601,10489697,2112289]),new Uint32Array([6291456,2172833,6291456,2172865,2172897,2172929,2172961,6291456,2172993,6291456,2173025,6291456,2173057,6291456,2173089,6291456]),new Uint32Array([6291456,0,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,0,0,23068672,6291456,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,2190721]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,23068672,6291456,6291456]),new Uint32Array([2184993,6291456,2185025,6291456,2185057,6291456,2185089,6291456,2185121,6291456,2185153,6291456,2185185,6291456,2185217,6291456]),new Uint32Array([2115265,2115361,2115457,2115553,2115649,2115745,2115841,2115937,2116033,2116129,2116225,2116321,2150658,2150722,2200225,6291456]),new Uint32Array([2168321,6291456,2168353,6291456,2168385,6291456,2168417,6291456,2168449,6291456,2168481,6291456,2168513,6291456,2168545,6291456]),new Uint32Array([23068672,23068672,23068672,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,0,6291456,6291456,6291456,6291456,0,0,0,6291456,6291456,0,6291456,0,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,2186625,0,0,6291456,6291456,2186657,2186689,2186721,2173505,0,10496067,10496163,10496259]),new Uint32Array([2178785,6291456,2178817,6291456,2178849,6291456,2178881,6291456,2178913,6291456,2178945,6291456,2178977,6291456,2179009,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0]),new Uint32Array([2097152,0,0,0,2097152,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,0,2197857,2197889,2197921,2197953,2197985,2198017,0,0,2198049,2198081,2198113,2198145,2198177,2198209]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2098209,2167297,2111137,6291456]),new Uint32Array([2171393,6291456,2171425,6291456,2171457,6291456,2171489,6291456,2171521,6291456,2171553,6291456,2171585,6291456,2171617,6291456]),new Uint32Array([2206753,2206785,2195457,2206817,2206849,2206881,2206913,2197153,2197153,2206945,2117857,2206977,2207009,2207041,2207073,2207105]),new Uint32Array([0,0,0,0,0,0,0,23068672,0,0,0,0,2144834,2144898,0,2144962]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,23068672]),new Uint32Array([2108193,2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2098209,0,2105505,2098241]),new Uint32Array([6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,2202049,6291456,2202081,6291456,2202113,6291456,2202145,6291456,2202177,6291456,2202209,6291456,2202241,6291456]),new Uint32Array([10501155,10501251,10501347,10501443,10501539,10501635,10501731,10501827,10501923,10502019,2141731,2105505,2098177,2155586,2166530,0]),new Uint32Array([2102081,2102209,2100833,2100737,2098337,2101441,2101569,2101697,2101825,2101953,2102081,2102209,2100833,2100737,2098337,2101441]),new Uint32Array([2146882,2146946,2147010,2147074,2147138,2147202,2147266,2147330,2146882,2146946,2147010,2147074,2147138,2147202,2147266,2147330]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0]),new Uint32Array([10502307,10502403,10502499,10502595,10502691,10502787,10502883,10502979,10503075,10503171,10503267,10503363,10503459,10503555,10503651,10503747]),new Uint32Array([2179937,2179969,2180001,2180033,2156545,2180065,2156577,2180097,2180129,2180161,2180193,2180225,2180257,2180289,2156737,2180321]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,0,0,0,6291456,0,0,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0]),new Uint32Array([2227682,2227746,2227810,2227874,2227938,2228002,2228066,2228130,2228194,2228258,2228322,2228386,2228450,2228514,2228578,2228642]),new Uint32Array([2105601,2169121,2108193,2170049,2181025,2181057,2112481,2108321,2108289,2181089,2170497,2100865,2181121,2173601,2173633,2173665]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2180641,6291456,6291456,6291456]),new Uint32Array([0,6291456,6291456,6291456,0,6291456,0,6291456,0,0,6291456,6291456,0,6291456,6291456,6291456]),new Uint32Array([2178273,6291456,2178305,6291456,2178337,6291456,2178369,6291456,2178401,6291456,2178433,6291456,2178465,6291456,2178497,6291456]),new Uint32Array([6291456,6291456,23068672,23068672,23068672,6291456,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,14680064,14680064,14680064,14680064,14680064,14680064]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456]),new Uint32Array([2237377,2237409,2236225,2237441,2237473,2217441,2215521,2215553,2217473,2237505,2237537,2209697,2237569,2215585,2237601,2237633]),new Uint32Array([2221985,2165601,2165601,2165665,2165665,2222017,2222017,2165729,2165729,2158913,2158913,2158913,2158913,2097281,2097281,2105921]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,23068672,23068672,23068672,0,23068672,23068672,23068672,23068672,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2149634,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2176897,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,2176929,6291456,2176961,6291456,2176993,6291456]),new Uint32Array([2172641,6291456,2172673,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2172705,2172737,6291456,2172769,2172801,6291456]),new Uint32Array([2099173,2104196,2121667,2099395,2121763,2152258,2152322,2098946,2152386,2121859,2121955,2099333,2122051,2104324,2099493,2122147]),new Uint32Array([6291456,6291456,6291456,2145794,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,2145858,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,0,0,6291456,0]),new Uint32Array([0,2105921,2097729,0,2097377,0,0,2106017,0,2097505,2105889,2097185,2097697,2135777,2097633,2097441]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2239074,2239138,2239201,2239233,2239265,2239297,2239329,2239361,0,2239393,2239425,2239425,2239458,2239521,2239553,2209569]),new Uint32Array([14680064,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,6291456,23068672]),new Uint32Array([2108321,2108289,2113153,2098209,2180897,2180929,2180961,2111137,2098241,2108353,2170241,2170273,2180993,2105825,6291456,2105473]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2146114,6291456,6291456,6291456,0,0,0]),new Uint32Array([2105921,2105921,2105921,2222049,2222049,2130977,2130977,2130977,2130977,2160065,2160065,2160065,2160065,2097729,2097729,2097729]),new Uint32Array([2218145,2214785,2207937,2218177,2218209,2192993,2210113,2212769,2218241,2218273,2216129,2218305,2216161,2218337,2218369,2218401]),new Uint32Array([0,0,0,2156546,2156610,2156674,2156738,2156802,0,0,0,0,0,2156866,23068672,2156930]),new Uint32Array([23068672,23068672,23068672,0,0,0,0,23068672,23068672,0,0,23068672,23068672,23068672,0,0]),new Uint32Array([2213409,2213441,2213473,2213505,2213537,2213569,2213601,2213633,2213665,2195681,2213697,2213729,2213761,2213793,2213825,2213857]),new Uint32Array([2100033,2099233,2122017,2200673,2098113,2121537,2103201,2200705,2104033,2121857,2121953,2122401,2099649,2099969,2123009,2100129]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0]),new Uint32Array([2201857,6291456,2201889,6291456,2201921,6291456,2201953,6291456,2201985,6291456,2202017,6291456,2176193,2176257,23068672,23068672]),new Uint32Array([6291456,6291456,23068672,23068672,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2188193,2188225,2188257,2188289,2188321,2188353,2188385,2188417,2188449,2188481,2188513,2188545,2188577,2188609,2188641,0]),new Uint32Array([10554529,2221089,0,10502113,10562017,10537921,10538049,2221121,2221153,0,0,0,0,0,0,0]),new Uint32Array([2213889,2213921,2213953,2213985,2214017,2214049,2214081,2194177,2214113,2214145,2214177,2214209,2214241,2214273,2214305,2214337]),new Uint32Array([2166978,2167042,2099169,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2180545,6291456,6291456,6291456]),new Uint32Array([10518915,10519011,10519107,10519203,2162242,2162306,2159554,2162370,2159362,2159618,2105922,2162434,2159746,2162498,2159810,2159874]),new Uint32Array([2161730,2161794,2135586,2161858,2161922,2137186,2131810,2160290,2135170,2161986,2137954,2162050,2162114,2162178,10518723,10518819]),new Uint32Array([10506627,10506723,10506819,10506915,10507011,10507107,10507203,10507299,10507395,10507491,10507587,10507683,10507779,10507875,10507971,10508067]),new Uint32Array([6291456,23068672,23068672,23068672,0,23068672,23068672,0,0,0,0,0,23068672,23068672,23068672,23068672]),new Uint32Array([23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0]),new Uint32Array([2175873,2175905,2175937,2175969,2176001,2176033,2176065,2176097,2176129,2176161,2176193,2176225,2176257,2176289,2176321,2176353]),new Uint32Array([2140006,2140198,2140390,2140582,2140774,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,23068672,23068672,23068672]),new Uint32Array([2108193,2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137,2105505,2098241]),new Uint32Array([0,23068672,0,0,0,0,0,0,0,2145154,2145218,2145282,6291456,0,2145346,0]),new Uint32Array([0,0,0,0,10531458,10495395,2148545,2143201,2173473,2148865,2173505,0,2173537,0,2173569,2149121]),new Uint32Array([10537282,10495683,2148738,2148802,2148866,0,6291456,2148930,2186593,2173473,2148737,2148865,2148802,10495779,10495875,10495971]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2215425,2215457,2215489,2215521,2215553,2215585,2215617,2215649,2215681,2215713,2215745,2215777,2192033,2215809,2215841,2215873]),new Uint32Array([2242049,2242081,2242113,2242145,2242177,2242209,2242241,2242273,2215937,2242305,2242338,2242401,2242433,2242465,2242497,2216001]),new Uint32Array([10554529,2221089,0,0,10562017,10502113,10538049,10537921,2221185,10489601,10489697,10609889,10609921,2141729,2141793,10610273]),new Uint32Array([2141923,2142019,2142115,2142211,2142307,2142403,2142499,2142595,2142691,0,0,0,0,0,0,0]),new Uint32Array([0,2221185,2221217,10609857,10609857,10489601,10489697,10609889,10609921,2141729,2141793,2221345,2221377,2221409,2221441,2187105]),new Uint32Array([6291456,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,18923970,23068672,23068672,23068672,0,6291456,6291456]),new Uint32Array([2183105,6291456,2183137,6291456,2183169,6291456,2183201,6291456,2183233,6291456,2183265,6291456,2183297,6291456,2183329,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0]),new Uint32Array([23068672,23068672,23068672,23068672,0,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456]),new Uint32Array([2134434,2134818,2097666,2097186,2097474,2097698,2105986,2131586,2132450,2131874,2131778,2135970,2135778,2161602,2136162,2161666]),new Uint32Array([2236865,2236897,2236930,2236993,2237025,2235681,2237058,2237121,2237153,2237185,2237217,2217281,2237250,2191233,2237313,2237345]),new Uint32Array([2190049,6291456,2190081,6291456,2190113,6291456,2190145,6291456,2190177,6291456,2190209,6291456,2190241,6291456,2190273,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2101922,2102050,2102178,2102306,10498755,10498851,10498947,10499043,10499139,10499235,10499331,10499427,10499523,10489604,10489732,10489860]),new Uint32Array([2166914,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0]),new Uint32Array([2181601,2170561,2181633,2181665,2170753,2181697,2172897,2170881,2181729,2170913,2172929,2113441,2181761,2181793,2171009,2173761]),new Uint32Array([0,2105921,2097729,2106081,0,2097601,2162337,2106017,2133281,2097505,0,2097185,2097697,2135777,2097633,2097441]),new Uint32Array([6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,0,0,0,0]),new Uint32Array([2248001,2248033,2248066,2248130,2248193,2248226,2248289,2248322,2248385,2248417,2216673,2248450,2248514,2248577,2248610,2248673]),new Uint32Array([6291456,6291456,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456,0,0,0]),new Uint32Array([2169729,6291456,2169761,6291456,2169793,6291456,2169825,6291456,2169857,2169889,6291456,2169921,6291456,2143329,6291456,2098305]),new Uint32Array([2162178,2163202,2163266,2135170,2136226,2161986,2137954,2159426,2159490,2163330,2159554,2163394,2159682,2139522,2136450,2159746]),new Uint32Array([2173953,2173985,0,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2174209,2174241,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,4271169,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2174273]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,0,0,0,0,0,0,0,6291456,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,2190785,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2189793,6291456,2189825,6291456,2189857,6291456,2189889,6291456,2189921,6291456,2189953,6291456,2189985,6291456,2190017,6291456]),new Uint32Array([2105601,2112289,2108193,2112481,2112577,0,2098305,2108321,2108289,2100865,2113153,2108481,2113345,0,2098209,2111137]),new Uint32Array([2172129,6291456,2172161,6291456,2172193,6291456,2172225,6291456,2172257,6291456,2172289,6291456,2172321,6291456,2172353,6291456]),new Uint32Array([2214753,6291456,2214785,6291456,6291456,2214817,2214849,2214881,2214913,2214945,2214977,2215009,2215041,2215073,2194401,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,6291456,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([0,0,0,0,6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([10610305,10610337,10575617,2221761,10610401,10610433,10502177,0,10610465,10610497,10610529,10610561,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,23068672,0,0,0,0,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2187105,2187137,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2199393,2199425,2199457,2199489,2199521,2199553,2199585,2199617,2199649,2199681,2199713,2199745,2199777,2199809,2199841,0]),new Uint32Array([2217249,2217281,2217313,2217345,2217377,2217409,2217441,2217473,2215617,2217505,2217537,2217569,2214753,2217601,2217633,2217665]),new Uint32Array([2170273,2170305,6291456,2170337,2170369,6291456,2170401,2170433,2170465,6291456,6291456,6291456,2170497,2170529,6291456,2170561]),new Uint32Array([2188673,6291456,2188705,2188737,2188769,6291456,6291456,2188801,6291456,2188833,6291456,2188865,6291456,2180929,2181505,2180897]),new Uint32Array([10489988,10490116,10490244,10490372,10490500,10490628,10490756,10490884,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2147393,2147457,2147521,2147585,2147649,2147713,2147777,2147841]),new Uint32Array([23068672,23068672,0,23068672,23068672,0,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0]),new Uint32Array([2241153,2241185,2241217,2215809,2241250,2241313,2241345,2241377,2217921,2241377,2241409,2215873,2241441,2241473,2241505,2241537]),new Uint32Array([23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2220417,2220417,2220449,2220449,2220481,2220481,2220513,2220513,2220545,2220545,2220577,2220577,2220609,2220609,2220641,2220641]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,2144002,0,6291456,6291456,0,0,6291456,6291456,6291456]),new Uint32Array([2167105,2167137,2167169,2167201,2167233,2167265,2167297,2167329,2167361,2167393,2167425,2167457,2167489,2167521,2167553,2167585]),new Uint32Array([10575521,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193]),new Uint32Array([2234146,2234210,2234274,2234338,2234402,2234466,2234530,2234594,2234658,2234722,2234786,2234850,2234914,2234978,2235042,2235106]),new Uint32Array([0,0,0,0,0,0,0,2180577,0,0,0,0,0,2180609,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,0,0,6291456,6291456]),new Uint32Array([2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193,2112481]),new Uint32Array([23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2242529,2242561,2242593,2242625,2242657,2242689,2242721,2242753,2207937,2218177,2242785,2242817,2242849,2242882,2242945,2242977]),new Uint32Array([2118049,2105345,2118241,2105441,2118433,2118529,2118625,2118721,2118817,2200257,2200289,2191809,2200321,2200353,2200385,2200417]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0]),new Uint32Array([2185505,6291456,2185537,6291456,2185569,6291456,2185601,6291456,2185633,6291456,2185665,6291456,2185697,6291456,2185729,6291456]),new Uint32Array([2231970,2232034,2232098,2232162,2232226,2232290,2232354,2232418,2232482,2232546,2232610,2232674,2232738,2232802,2232866,2232930]),new Uint32Array([2218625,2246402,2246466,2246530,2246594,2246657,2246689,2246689,2218657,2219681,2246721,2246753,2246785,2246818,2246881,2208481]),new Uint32Array([2197025,2197057,2197089,2197121,2197153,2197185,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2219137,2216961,2219169,2219201,2219233,2219265,2219297,2217025,2215041,2219329,2217057,2219361,2217089,2219393,2197153,2219426]),new Uint32Array([23068672,23068672,23068672,0,0,0,23068672,23068672,23068672,0,23068672,23068672,23068672,23068672,0,0]),new Uint32Array([2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713]),new Uint32Array([2243522,2243585,2243617,2243649,2243681,2210113,2243713,2243746,2243810,2243874,2243937,2243970,2244033,2244065,2244097,2244129]),new Uint32Array([2178017,6291456,2178049,6291456,2178081,6291456,2178113,6291456,2178145,6291456,2178177,6291456,2178209,6291456,2178241,6291456]),new Uint32Array([10553858,2165314,10518722,6291456,10518818,0,10518914,2130690,10519010,2130786,10519106,2130882,10519202,2165378,10554050,2165506]),new Uint32Array([0,0,2135491,2135587,2135683,2135779,2135875,2135971,2135971,2136067,2136163,2136259,2136355,2136355,2136451,2136547]),new Uint32Array([23068672,23068672,23068672,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2220033,2220033,2220065,2220065,2220065,2220065,2220097,2220097,2220097,2220097,2220129,2220129,2220129,2220129,2220161,2220161]),new Uint32Array([6291456,6291456,6291456,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,23068672,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2100897,2100898,2100899,2150018,2100865,2100866,2100867,2100868,2150082,2108481,2109858,2109859,2105569,2105505,2098241,2105601]),new Uint32Array([2097217,2097505,2097505,2097505,2097505,2165570,2165570,2165634,2165634,2165698,2165698,2097858,2097858,0,0,2097152]),new Uint32Array([23068672,6291456,23068672,23068672,23068672,6291456,6291456,23068672,23068672,6291456,6291456,6291456,6291456,6291456,23068672,23068672]),new Uint32Array([23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0]),new Uint32Array([10503843,10503939,10504035,10504131,10504227,10504323,10504419,10504515,10504611,10504707,10504803,10504899,10504995,10491140,10491268,0]),new Uint32Array([2173697,2173729,2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889,2173921,2173953,2173985,2173761,2174017,2174049]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2134145,2097153,2134241,2105953,2132705,2130977,2160065,2131297,2162049,2133089,2160577,2133857,2235297,2220769,2235329,2235361]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2222401,2222433,2222465,10531394,2222497,2222529,2222561,0,2222593,2222625,2222657,2222689,2222721,2222753,2222785,0]),new Uint32Array([2184481,6291456,2184513,6291456,2184545,6291456,2184577,6291456,2184609,6291456,2184641,6291456,2184673,6291456,2184705,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,23068672,0,0,0,0,0,0,0,0,0]),new Uint32Array([2105570,2156034,2126947,2156098,2153666,2127043,2127139,2156162,0,2127235,2156226,2156290,2156354,2156418,2127331,2127427]),new Uint32Array([2215905,2207041,2153185,2241569,2241601,2241633,2241665,2241697,2241730,2241793,2241825,2241857,2241889,2241921,2241954,2242017]),new Uint32Array([2203777,6291456,2203809,6291456,2203841,6291456,2203873,6291456,2203905,6291456,2173121,2180993,2181249,2203937,2181313,0]),new Uint32Array([2168577,6291456,2168609,6291456,2168641,6291456,2168673,6291456,2168705,6291456,2168737,6291456,2168769,6291456,2168801,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,23068672,23068672,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,0,23068672,23068672,23068672,0,23068672,23068672,23068672,0,0]),new Uint32Array([2210113,2195521,2210145,2210177,2210209,2210241,2210273,2210305,2210337,2210369,2210401,2210433,2210465,2210497,2210529,2210561]),new Uint32Array([6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0]),new Uint32Array([2228706,2228770,2228834,2228898,2228962,2229026,2229090,2229154,2229218,2229282,2229346,2229410,2229474,2229538,2229602,2229666]),new Uint32Array([23068672,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0,0,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,18874368,18874368,18874368,0,0]),new Uint32Array([2133089,2133281,2133281,2133281,2133281,2160577,2160577,2160577,2160577,2097441,2097441,2097441,2097441,2133857,2133857,2133857]),new Uint32Array([6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2173825,2153473,2173857,2173889,2173921,2173953,2173985,2174017,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2233089]),new Uint32Array([2178529,6291456,2178561,6291456,2178593,6291456,2178625,6291456,2178657,6291456,2178689,6291456,2178721,6291456,2178753,6291456]),new Uint32Array([2221025,2221025,2221057,2221057,2159329,2159329,2159329,2159329,2097217,2097217,2158914,2158914,2158978,2158978,2159042,2159042]),new Uint32Array([2208161,2208193,2208225,2208257,2194433,2208289,2208321,2208353,2208385,2208417,2208449,2208481,2208513,2208545,2208577,2208609]),new Uint32Array([2169217,6291456,2169249,6291456,2169281,6291456,2169313,6291456,2169345,6291456,2169377,6291456,2169409,6291456,2169441,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456]),new Uint32Array([2133187,2133283,2133283,2133379,2133475,2133571,2133667,2133667,2133763,2133859,2133955,2134051,2134147,2134147,2134243,2134339]),new Uint32Array([2197697,2114113,2114209,2197729,2197761,2114305,2197793,2114401,2114497,2197825,2114593,2114689,2114785,2114881,2114977,0]),new Uint32Array([2193089,2193121,2193153,2193185,2117665,2117569,2193217,2193249,2193281,2193313,2193345,2193377,2193409,2193441,2193473,2193505]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0]),new Uint32Array([6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2184225,6291456,2184257,6291456,2184289,6291456,2184321,6291456,2184353,6291456,2184385,6291456,2184417,6291456,2184449,6291456]),new Uint32Array([2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2100833,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2098657,2098049,2200737,2123489,2123681,2200769,2098625,2100321,2098145,2100449,2098017,2098753,2200801,2200833,2200865,0]),new Uint32Array([23068672,23068672,23068672,0,0,0,0,0,0,0,0,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0]),new Uint32Array([2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137,0,2098241,2108353,2108417,2105825,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2181153,2105505,2181185,2167617,2180993]),new Uint32Array([2160002,2160066,2160130,2160194,2160258,2132066,2131010,2131106,2106018,2131618,2160322,2131298,2132034,2131938,2137410,2132226]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0,6291456]),new Uint32Array([2183617,6291456,2183649,6291456,2183681,6291456,2183713,6291456,2183745,6291456,2183777,6291456,2183809,6291456,2183841,6291456]),new Uint32Array([0,6291456,6291456,0,6291456,0,0,6291456,6291456,0,6291456,0,0,6291456,0,0]),new Uint32Array([2250977,2251009,2251041,2251073,2195009,2251106,2251169,2251201,2251233,2251265,2251297,2251330,2251394,2251457,2251489,2251521]),new Uint32Array([2205729,2205761,2205793,2205825,2205857,2205889,2205921,2205953,2205985,2206017,2206049,2206081,2206113,2206145,2206177,2206209]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2143170,2168993,6291456,2169025,6291456,2169057,6291456,2169089,6291456,2143234,2169121,6291456,2169153,6291456,2169185,6291456]),new Uint32Array([23068672,23068672,2190689,6291456,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2248706,2248769,2248801,2248833,2248865,2248897,2248929,2248962,2249026,2249090,2249154,2240705,2249217,2249249,2249281,2249313]),new Uint32Array([10485857,6291456,6291456,6291456,6291456,6291456,6291456,6291456,10495394,6291456,2098209,6291456,6291456,2097152,6291456,10531394]),new Uint32Array([0,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,0]),new Uint32Array([14680064,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2173985,2173953,2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889]),new Uint32Array([6291456,2186977,6291456,6291456,6291456,6291456,6291456,10537858,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2209601,2209633,2209665,2209697,2209729,2209761,2209793,2209825,2209857,2209889,2209921,2209953,2209985,2210017,2210049,2210081]),new Uint32Array([10501539,10501635,10501731,10501827,10501923,10502019,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905]),new Uint32Array([2173697,2173729,2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889,2173921,2173953,2173985,2174017,2174017,2174049]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,0,0]),new Uint32Array([6291456,6291456,23068672,23068672,23068672,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2194561,2194593,2194625,2119777,2119873,2194657,2194689,2194721,2194753,2194785,2194817,2194849,2194881,2194913,2194945,2194977]),new Uint32Array([2113153,2108481,2113345,2113441,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569]),new Uint32Array([2222818,2222882,2222946,2223010,2223074,2223138,2223202,2223266,2223330,2223394,2223458,2223522,2223586,2223650,2223714,2223778]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672]),new Uint32Array([0,2179553,2179585,2179617,2179649,2144001,2179681,2179713,2179745,2179777,2179809,2156705,2179841,2156833,2179873,2179905]),new Uint32Array([6291456,23068672,6291456,2145602,23068672,23068672,23068672,23068672,23068672,23068672,0,23068672,23068672,6291456,0,0]),new Uint32Array([2196513,2196545,2196577,2196609,2196641,2196673,2196705,2196737,2196769,2196801,2196833,2196865,2196897,2196929,2196961,2196993]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2177281,6291456,2177313,6291456,2177345,6291456,2177377,6291456,2177409,6291456,2177441,6291456,2177473,6291456,2177505,6291456]),new Uint32Array([2187137,2221473,2221505,2221537,2221569,6291456,6291456,10610209,10610241,10537986,10537986,10537986,10537986,10609857,10609857,10609857]),new Uint32Array([2243009,2243041,2216033,2243074,2243137,2243169,2243201,2219617,2243233,2243265,2243297,2243329,2243362,2243425,2243457,2243489]),new Uint32Array([10485857,10485857,10485857,10485857,10485857,10485857,10485857,10485857,10485857,10485857,10485857,2097152,4194304,4194304,0,0]),new Uint32Array([2143042,6291456,2143106,2143106,2168833,6291456,2168865,6291456,6291456,2168897,6291456,2168929,6291456,2168961,6291456,2143170]),new Uint32Array([6291456,6291456,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2204193,2204225,2204257,2204289,2204321,2204353,2204385,2204417,2204449,2204481,2204513,2204545,2204577,2204609,2204641,2204673]),new Uint32Array([2202753,6291456,2202785,6291456,2202817,6291456,2202849,6291456,2202881,6291456,2202913,6291456,2202945,6291456,2202977,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193,2112481,2112577,2098177,2098305,2108321]),new Uint32Array([2147394,2147458,2147522,2147586,2147650,2147714,2147778,2147842,2147394,2147458,2147522,2147586,2147650,2147714,2147778,2147842]),new Uint32Array([2253313,2253346,2253409,2253441,2253473,2253505,2253537,2253569,2253601,2253634,2219393,2253697,2253729,2253761,2253793,2253825]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([2162562,2162626,2131362,2162690,2159938,2160002,2162754,2162818,2160130,2162882,2160194,2160258,2160834,2160898,2161026,2161090]),new Uint32Array([2175361,2175393,2175425,2175457,2175489,2175521,2175553,2175585,2175617,2175649,2175681,2175713,2175745,2175777,2175809,2175841]),new Uint32Array([2253858,2253921,2253954,2254018,2254082,2196737,2254145,2196865,2254177,2254209,2254241,2254273,2197025,2254306,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2202113,2204129,2188705,2204161]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,0,6291456,6291456,6291456,6291456,0,0]),new Uint32Array([2173985,2174017,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2233089,2173697,2173761,2173793,2174113,2173985,2173953]),new Uint32Array([2101569,2101697,2101825,2101953,2102081,2102209,2100833,2100737,2098337,2101441,2101569,2101697,2101825,2101953,2102081,2102209]),new Uint32Array([2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137,2105505,2098241,0,2108417,0,2111713,2100897,2111905]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0,0,0,0]),new Uint32Array([2175425,2175489,2175809,2175905,2175937,2175937,2176193,2176417,2180865,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,2143298,2143298,2143298,2143362,2143362,2143362,2143426,2143426,2143426,2171105,6291456,2171137]),new Uint32Array([2120162,2120258,2151618,2151682,2151746,2151810,2151874,2151938,2152002,2120035,2120131,2120227,2152066,2120323,2152130,2120419]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2195361,2142433,2236065,2236097,2236129,2236161,2118241,2117473,2236193,2236225,2236257,2236289,0,0,0,0]),new Uint32Array([2189281,6291456,2189313,6291456,2189345,6291456,2189377,6291456,2189409,6291456,2189441,6291456,2189473,6291456,2189505,6291456]),new Uint32Array([6291456,6291456,2145922,6291456,6291456,6291456,6291456,2145986,6291456,6291456,6291456,6291456,2146050,6291456,6291456,6291456]),new Uint32Array([2100833,2100737,2098337,2101441,2101569,2101697,2101825,2101953,2102081,2102209,10502113,10562017,10610401,10502177,10610433,10538049]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,2186401,0,2186433,0,2186465,0,2186497]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,23068672,23068672,23068672]),new Uint32Array([0,0,2198241,2198273,2198305,2198337,2198369,2198401,0,0,2198433,2198465,2198497,0,0,0]),new Uint32Array([6291456,0,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,0,6291456,0,23068672,23068672,23068672,23068672,23068672,23068672,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,0,0,23068672,6291456,23068672,23068672]),new Uint32Array([0,2105921,2097729,0,2097377,0,0,2106017,2133281,2097505,2105889,0,2097697,2135777,2097633,2097441]),new Uint32Array([2197889,2197921,2197953,2197985,2198017,2198049,2198081,2198113,2198145,2198177,2198209,2198241,2198273,2198305,2198337,2198369]),new Uint32Array([2132514,2132610,2160386,2133090,2133186,2160450,2160514,2133282,2160578,2133570,2106178,2160642,2133858,2160706,2160770,2134146]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,23068672,0,0,0,0,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,23068672,23068672,6291456,23068672,23068672,6291456,23068672,0,0,0,0,0,0,0,0]),new Uint32Array([2184737,6291456,2184769,6291456,2184801,6291456,2184833,6291456,2184865,6291456,2184897,6291456,2184929,6291456,2184961,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,0,6291456,6291456,6291456,6291456,0,6291456]),new Uint32Array([6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,6291456,23068672,23068672,23068672,6291456,23068672,23068672,23068672,23068672,23068672,0,0]),new Uint32Array([6291456,6291456,6291456,2186753,6291456,6291456,6291456,6291456,2186785,2186817,2186849,2173569,2186881,10496355,10495395,10575521]),new Uint32Array([0,0,2097729,0,0,0,0,2106017,0,2097505,0,2097185,0,2135777,2097633,2097441]),new Uint32Array([2189537,6291456,2189569,6291456,2189601,6291456,2189633,6291456,2189665,6291456,2189697,6291456,2189729,6291456,2189761,6291456]),new Uint32Array([2202497,6291456,2202529,6291456,2202561,6291456,2202593,6291456,2202625,6291456,2202657,6291456,2202689,6291456,2202721,6291456]),new Uint32Array([2245217,2218369,2245249,2245282,2245345,2245377,2245410,2245474,2245537,2245569,2245601,2245633,2245665,2245665,2245697,2245729]),new Uint32Array([6291456,0,23068672,23068672,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,0,0,0,0,0,0,23068672,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,6291456,23068672,6291456,23068672,6291456,6291456,6291456,6291456,23068672,23068672]),new Uint32Array([0,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0]),new Uint32Array([2097281,2105921,2097729,2106081,2097377,2097601,2162337,2106017,2133281,2097505,0,2097185,2097697,2135777,2097633,2097441]),new Uint32Array([2176641,6291456,2176673,6291456,2176705,6291456,2176737,6291456,2176769,6291456,2176801,6291456,2176833,6291456,2176865,6291456]),new Uint32Array([2174145,2174177,2149057,2233089,2173697,2173761,2173793,2174113,2173985,2173953,2174369,2174369,0,0,2100833,2100737]),new Uint32Array([2116513,2190817,2190849,2190881,2190913,2190945,2116609,2190977,2191009,2191041,2191073,2117185,2191105,2191137,2191169,2191201]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,6291456,6291456,6291456]),new Uint32Array([0,0,0,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456]),new Uint32Array([2167617,2167649,2167681,2167713,2167745,2167777,2167809,6291456,2167841,2167873,2167905,2167937,2167969,2168001,2168033,4240130]),new Uint32Array([2165122,2163970,2164034,2164098,2164162,2164226,2164290,2164354,2164418,2164482,2164546,2133122,2134562,2132162,2132834,2136866]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,2186209,2186241,2186273,2186305,2186337,2186369,0,0]),new Uint32Array([2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,14680064,14680064,14680064,14680064,14680064]),new Uint32Array([0,0,23068672,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456,6291456]),new Uint32Array([0,10537921,10610689,10610273,10610497,10610529,10610305,10610721,10489601,10489697,10610337,10575617,10554529,2221761,2197217,10496577]),new Uint32Array([2105473,2105569,2105601,2112289,0,2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441]),new Uint32Array([2100897,2111905,2105473,2105569,2105601,2112289,2108193,2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481]),new Uint32Array([2125346,2153410,2153474,2127394,2153538,2153602,2153666,2153730,2105507,2105476,2153794,2153858,2153922,2153986,2154050,2105794]),new Uint32Array([2200449,2119681,2200481,2153313,2199873,2199905,2199937,2200513,2200545,2200577,2200609,2119105,2119201,2119297,2119393,2119489]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2175777,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2222273,2197217,2221473,2221505,2221089,2222305,2200865,2099681,2104481,2222337,2099905,2120737,2222369,2103713,2100225,2098785]),new Uint32Array([2201377,6291456,2201409,6291456,2201441,6291456,2201473,6291456,2201505,6291456,2201537,6291456,2201569,6291456,6291456,23068672]),new Uint32Array([2174081,2174113,2174145,2174177,2149057,2233057,2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761,2143969,2173793]),new Uint32Array([2200897,6291456,2200929,6291456,2200961,6291456,2200993,6291456,2201025,6291456,2180865,6291456,2201057,6291456,2201089,6291456]),new Uint32Array([0,0,0,0,0,23068672,23068672,0,6291456,6291456,6291456,0,0,0,0,0]),new Uint32Array([2161154,2161410,2138658,2161474,2161538,2097666,2097186,2097474,2162946,2132450,2163010,2163074,2136162,2163138,2161666,2161730]),new Uint32Array([2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889,2173921,2173953]),new Uint32Array([0,0,0,0,0,0,23068672,23068672,0,0,0,0,2145410,2145474,0,6291456]),new Uint32Array([2244161,2216065,2212769,2244193,2244225,2244257,2244290,2244353,2244385,2244417,2244449,2218273,2244481,2244514,2244577,2244609]),new Uint32Array([2125730,2125699,2125795,2125891,2125987,2154114,2154178,2154242,2154306,2154370,2154434,2154498,2126082,2126178,2126274,2126083]),new Uint32Array([2237665,2237697,2237697,2237697,2237730,2237793,2237825,2237857,2237890,2237953,2237985,2238017,2238049,2238081,2238113,2238145]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2150146,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,0,23068672,23068672,0,0,23068672,23068672,23068672,0,0]),new Uint32Array([2214369,2238593,2238625,2238657,2238689,2238721,2238753,2238785,2238817,2238850,2238913,2238945,2238977,2235457,2239009,2239041]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0]),new Uint32Array([2252066,2252130,2252193,2252225,2252257,2252290,2252353,2252385,2252417,2252449,2252481,2252513,2252545,2252578,2252641,2252673]),new Uint32Array([2197697,2114113,2114209,2197729,2197761,2114305,2197793,2114401,2114497,2197825,2114593,2114689,2114785,2114881,2114977,2197857]),new Uint32Array([2224866,2224930,2224994,2225058,2225122,2225186,2225250,2225314,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2219490,2219554,2219617,2219649,2219681,2219714,2219778,2219842,2219905,2219937,0,0,0,0,0,0]),new Uint32Array([6291456,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456]),new Uint32Array([2113345,2113441,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289]),new Uint32Array([2174081,2174113,2174145,2174177,2149057,2233089,2173697,2173761,2173793,2174113,2173985,2173953,2148481,2173601,2173633,2173665]),new Uint32Array([2220161,2220161,2220193,2220193,2220193,2220193,2220225,2220225,2220225,2220225,2220257,2220257,2220257,2220257,2220289,2220289]),new Uint32Array([2192673,2192705,2192737,2192769,2192801,2192833,2192865,2118049,2192897,2117473,2117761,2192929,2192961,2192993,2193025,2193057]),new Uint32Array([2179297,6291456,2179329,6291456,2179361,6291456,2179393,6291456,2179425,6291456,2179457,6291456,2179489,6291456,2179521,6291456]),new Uint32Array([6291456,6291456,6291456,23068672,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0]),new Uint32Array([2235745,2235777,2193633,2235809,2235841,2235873,2235905,2235937,2235969,2116513,2116705,2236001,2200513,2199905,2200545,2236033]),new Uint32Array([2113153,2108481,2113345,2113441,2232993,2233025,0,0,2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761]),new Uint32Array([2170593,6291456,2170625,6291456,2170657,6291456,2170689,2170721,6291456,2170753,6291456,6291456,2170785,6291456,2170817,2170849]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2166786,2166850,0,0,0,0]),new Uint32Array([23068672,6291456,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456]),new Uint32Array([2100833,2100737,2098337,2101441,2101569,2101697,2101825,2101953,2102081,2102209,10575617,2187041,10502177,10489601,10489697,0]),new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2134562,2132162,2132834,2136866,2136482,2164610,2164674,2164738,2164802,2132802,2132706,2164866,2132898,2164930,2164994,2165058]),new Uint32Array([6291456,6291456,2098337,2101441,10531458,2153473,6291456,6291456,10531522,2100737,2108193,6291456,2106499,2106595,2106691,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0,0,0,0,0]),new Uint32Array([2233122,2233186,2233250,2233314,2233378,2233442,2233506,2233570,2233634,2233698,2233762,2233826,2233890,2233954,2234018,2234082]),new Uint32Array([23068672,6291456,23068672,23068672,23068672,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2205217,2205249,2205281,2205313,2205345,2205377,2205409,2205441,2205473,2205505,2205537,2205569,2205601,2205633,2205665,2205697]),new Uint32Array([6291456,0,6291456,0,0,0,6291456,6291456,6291456,6291456,0,0,23068672,6291456,23068672,23068672]),new Uint32Array([2173601,2173761,2174081,2173569,2174241,2174113,2173953,6291456,2174305,6291456,2174337,6291456,2174369,6291456,2174401,6291456]),new Uint32Array([6291456,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456]),new Uint32Array([2152450,2152514,2099653,2104452,2099813,2122243,2099973,2152578,2122339,2122435,2122531,2122627,2122723,2104580,2122819,2152642]),new Uint32Array([2236385,2236417,2236449,2236482,2236545,2215425,2236577,2236609,2236641,2236673,2215457,2236705,2236737,2236770,2215489,2236833]),new Uint32Array([2163394,2159746,2163458,2131362,2163522,2160130,2163778,2132226,2163842,2132898,2163906,2161410,2138658,2097666,2136162,2163650]),new Uint32Array([2218721,2246913,2246946,2216385,2247010,2247074,2215009,2247137,2247169,2216481,2247201,2247233,2247266,2247330,2247330,0]),new Uint32Array([2129730,2129762,2129858,2129731,2129827,2156482,2156482,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,0,0,0,0,0,6291456,0,0]),new Uint32Array([2203969,2204001,2181377,2204033,2204065,6291456,2204097,6291456,0,0,0,0,0,0,0,0]),new Uint32Array([2169473,6291456,2169505,6291456,2169537,6291456,2169569,6291456,2169601,6291456,2169633,6291456,2169665,6291456,2169697,6291456]),new Uint32Array([2141542,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2220801,2220801,2220801,2220801,2220833,2220833,2220865,2220865,2220865,2220865,2220897,2220897,2220897,2220897,2139873,2139873]),new Uint32Array([0,0,0,0,0,23068672,23068672,0,0,0,0,0,0,0,6291456,0]),new Uint32Array([2214849,2218433,2218465,2218497,2218529,2218561,2214881,2218593,2218625,2218657,2218689,2218721,2218753,2216545,2218785,2218817]),new Uint32Array([23068672,23068672,23068672,23068672,0,0,0,0,0,0,0,0,0,0,0,6291456]),new Uint32Array([2136482,2164610,2164674,2164738,2164802,2132802,2132706,2164866,2132898,2164930,2164994,2165058,2165122,2132802,2132706,2164866]),new Uint32Array([2207649,2207681,2207713,2207745,2207777,2207809,2207841,2207873,2207905,2207937,2207969,2208001,2208033,2208065,2208097,2208129]),new Uint32Array([2123683,2105092,2152706,2123779,2105220,2152770,2100453,2098755,2123906,2124002,2124098,2124194,2124290,2124386,2124482,2124578]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,0,6291456,0,0,0,0,0,0,0,10485857]),new Uint32Array([6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([10508163,10508259,10508355,10508451,2200129,2200161,2192737,2200193,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2203553,6291456,2203585,6291456,6291456,6291456,2203617,6291456,2203649,6291456,2203681,6291456,2203713,6291456,2203745,6291456]),new Uint32Array([18884449,18884065,23068672,18884417,18884034,18921185,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,18874368]),new Uint32Array([2247393,2247426,2247489,2247521,2247553,2247586,2247649,2247681,2247713,2247745,2247777,2247810,2247873,2247905,2247937,2247969]),new Uint32Array([6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,23068672]),new Uint32Array([2134145,2097153,2134241,0,2132705,2130977,2160065,2131297,0,2133089,2160577,2133857,2235297,0,2235329,0]),new Uint32Array([2182593,6291456,2182625,6291456,2182657,6291456,2182689,6291456,2182721,6291456,2182753,6291456,2182785,6291456,2182817,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2102402,2102403,6291456,2110050]),new Uint32Array([2149890,2108323,2149954,6291456,2113441,6291456,2149057,6291456,2113441,6291456,2105473,2167265,2111137,2105505,6291456,2108353]),new Uint32Array([2219105,2219137,2195233,2251554,2251617,2251649,2251681,2251713,2251746,2251810,2251873,2251905,2251937,2251970,2252033,2219169]),new Uint32Array([2203009,6291456,2203041,6291456,2203073,6291456,2203105,6291456,2203137,6291456,2203169,6291456,2203201,6291456,2203233,6291456]),new Uint32Array([2128195,2128291,2128387,2128483,2128579,2128675,2128771,2128867,2128963,2129059,2129155,2129251,2129347,2129443,2129539,2129635]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2140964,2141156,2140966,2141158,2141350]),new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2225378,2225442,2225506,2225570,2225634,2225698,2225762,2225826,2225890,2225954,2226018,2226082,2226146,2226210,2226274,2226338]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137,2105505,2098241,2108353,2108417]),new Uint32Array([2108353,2108417,0,2105601,2108193,2157121,2157313,2157377,2157441,2100897,6291456,2108419,2173953,2173633,2173633,2173953]),new Uint32Array([2111713,2173121,2111905,2098177,2173153,2173185,2173217,2113153,2113345,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,2190753]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,2197249,6291456,2117377,2197281,2197313,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,0,0,0,0,0,0,23068672,0,0,0,0,0,6291456,6291456,6291456]),new Uint32Array([2098337,2101441,2101569,2101697,2101825,2101953,2102081,2102209,2100833,2100737,2098337,2101441,2101569,2101697,2101825,2101953]),new Uint32Array([23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0]),new Uint32Array([0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,23068672,23068672,23068672]),new Uint32Array([2173281,6291456,2173313,6291456,2173345,6291456,2173377,6291456,0,0,10532546,6291456,6291456,6291456,10562017,2173441]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,0,0]),new Uint32Array([23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2159426,2159490,2159554,2159362,2159618,2159682,2139522,2136450,2159746,2159810,2159874,2130978,2131074,2131266,2131362,2159938]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2203233,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2203265,6291456,2203297,6291456,2203329,2203361,6291456]),new Uint32Array([6291456,6291456,2148418,2148482,2148546,0,6291456,2148610,2186529,2186561,2148417,2148545,2148482,10495778,2143969,10495778]),new Uint32Array([2134146,2139426,2160962,2134242,2161218,2161282,2161346,2161410,2138658,2134722,2134434,2134818,2097666,2097346,2097698,2105986]),new Uint32Array([2198881,2198913,2198945,2198977,2199009,2199041,2199073,2199105,2199137,2199169,2199201,2199233,2199265,2199297,2199329,2199361]),new Uint32Array([0,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456]),new Uint32Array([10610561,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193]),new Uint32Array([2183873,6291456,2183905,6291456,2183937,6291456,2183969,6291456,2184001,6291456,2184033,6291456,2184065,6291456,2184097,6291456]),new Uint32Array([2244642,2244706,2244769,2244801,2218305,2244833,2244865,2244897,2244929,2244961,2244993,2245026,2245089,2245122,2245185,0]),new Uint32Array([6291456,6291456,2116513,2116609,2116705,2116801,2199873,2199905,2199937,2199969,2190913,2200001,2200033,2200065,2200097,2191009]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,2180673,2180705,2180737,2180769,2180801,2180833,0,0]),new Uint32Array([2098081,2099521,2099105,2120705,2098369,2120801,2103361,2097985,2098433,2121377,2121473,2099169,2099873,2098401,2099393,2152609]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2150402]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,2145666,2145730,6291456,6291456]),new Uint32Array([2173921,2173953,2173985,2173761,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2233057,2148481,2173601,2173633,2173665]),new Uint32Array([2187073,6291456,6291456,6291456,6291456,2098241,2098241,2108353,2100897,2111905,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2102404,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,2100612,6291456,6291456,6291456,6291456,6291456,6291456,6291456,10485857]),new Uint32Array([2149057,2233057,2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889]),new Uint32Array([2217697,2217729,2217761,2217793,2217825,2217857,2217889,2217921,2217953,2215873,2217985,2215905,2218017,2218049,2218081,2218113]),new Uint32Array([2211233,2218849,2216673,2218881,2218913,2218945,2218977,2219009,2216833,2219041,2215137,2219073,2216865,2209505,2219105,2216897]),new Uint32Array([2240097,2240129,2240161,2240193,2240225,2240257,2240289,2240321,2240353,2240386,2240449,2240481,2240513,2240545,2207905,2240578]),new Uint32Array([6291456,6291456,2202273,6291456,2202305,6291456,2202337,6291456,2202369,6291456,2202401,6291456,2202433,6291456,2202465,6291456]),new Uint32Array([0,23068672,23068672,18923394,23068672,18923458,18923522,18884099,18923586,18884195,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2201121,6291456,2201153,6291456,2201185,6291456,2201217,6291456,2201249,6291456,2201281,6291456,2201313,6291456,2201345,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456,6291456]),new Uint32Array([2211041,2211073,2211105,2211137,2211169,2211201,2211233,2211265,2211297,2211329,2211361,2211393,2211425,2211457,2211489,2211521]),new Uint32Array([2181825,6291456,2181857,6291456,2181889,6291456,2181921,6291456,2181953,6291456,2181985,6291456,2182017,6291456,2182049,6291456]),new Uint32Array([2162337,2097633,2097633,2097633,2097633,2132705,2132705,2132705,2132705,2097153,2097153,2097153,2097153,2133089,2133089,2133089]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,2148545,6291456,2173473,6291456,2148865,6291456,2173505,6291456,2173537,6291456,2173569,6291456,2149121,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,0,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0]),new Uint32Array([2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889,2173921,2173953,2173985,2174017,2174017,2174049,2174081,2174113]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2207137,2207169,2207201,2207233,2207265,2207297,2207329,2207361,2207393,2207425,2207457,2207489,2207521,2207553,2207585,2207617]),new Uint32Array([6291456,6291456,23068672,23068672,23068672,6291456,6291456,0,23068672,23068672,0,0,0,0,0,0]),new Uint32Array([2198401,2198433,2198465,2198497,0,2198529,2198561,2198593,2198625,2198657,2198689,2198721,2198753,2198785,2198817,2198849]),new Uint32Array([2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193,2112481,2112577,2098177]),new Uint32Array([23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,0,0]),new Uint32Array([2216385,2118721,2216417,2216449,2216481,2216513,2216545,2211233,2216577,2216609,2216641,2216673,2216705,2216737,2216737,2216769]),new Uint32Array([2216801,2216833,2216865,2216897,2216929,2216961,2216993,2215169,2217025,2217057,2217089,2217121,2217154,2217217,0,0]),new Uint32Array([2210593,2191809,2210625,2210657,2210689,2210721,2210753,2210785,2210817,2210849,2191297,2210881,2210913,2210945,2210977,2211009]),new Uint32Array([0,0,2105825,0,0,2111905,2105473,0,0,2112289,2108193,2112481,2112577,0,2098305,2108321]),new Uint32Array([0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,2097153,2134241,0,2132705,0,0,2131297,0,2133089,0,2133857,0,2220769,0,2235361]),new Uint32Array([14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,6291456,6291456,14680064]),new Uint32Array([23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0]),new Uint32Array([2171873,6291456,2171905,6291456,2171937,6291456,2171969,6291456,2172001,6291456,2172033,6291456,2172065,6291456,2172097,6291456]),new Uint32Array([2220929,2220929,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2133857,2134145,2134145,2134145,2134145,2134241,2134241,2134241,2134241,2105889,2105889,2105889,2105889,2097185,2097185,2097185]),new Uint32Array([2173697,2173761,2173793,2174113,2173985,2173953,2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761,2143969,2173793]),new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,10499619,10499715,10499811,10499907]),new Uint32Array([0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,0,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,0,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,0,23068672,23068672,23068672,0,23068672,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,6291456,23068672,23068672]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,2144322,2144386,2144450,2144514,2144578,2144642,2144706,2144770]),new Uint32Array([23068672,23068672,23068672,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456]),new Uint32Array([2113153,2108481,2113345,2113441,2098209,2111137,0,2098241,2108353,2108417,2105825,0,0,2111905,2105473,2105569]),new Uint32Array([2236321,2236353,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2152194,2121283,2103684,2103812,2097986,2098533,2097990,2098693,2098595,2098853,2099013,2103940,2121379,2121475,2121571,2104068]),new Uint32Array([2206241,2206273,2206305,2206337,2206369,2206401,2206433,2206465,2206497,2206529,2206561,2206593,2206625,2206657,2206689,2206721]),new Uint32Array([6291456,6291456,6291456,6291456,16777216,16777216,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,23068672,23068672,10538818,10538882,6291456,6291456,2150338]),new Uint32Array([6291456,6291456,6291456,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2214369,2214401,2214433,2214465,2214497,2214529,2214561,2214593,2194977,2214625,2195073,2214657,2214689,2214721,6291456,6291456]),new Uint32Array([2097152,2097152,2097152,2097152,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2182081,6291456,2182113,6291456,2182145,6291456,2182177,6291456,2182209,6291456,2182241,6291456,2182273,6291456,2182305,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2146881,2146945,2147009,2147073,2147137,2147201,2147265,2147329]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,23068672,23068672]),new Uint32Array([0,0,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2122915,2123011,2123107,2104708,2123203,2123299,2123395,2100133,2104836,2100290,2100293,2104962,2104964,2098052,2123491,2123587]),new Uint32Array([23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456]),new Uint32Array([6291456,2171169,6291456,2171201,6291456,2171233,6291456,2171265,6291456,2171297,6291456,2171329,6291456,6291456,2171361,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,0,2148994,2149058,2149122,0,6291456,2149186,2186945,2173537,2148993,2149121,2149058,10531458,10496066,0]),new Uint32Array([2195009,2195041,2195073,2195105,2195137,2195169,2195201,2195233,2195265,2195297,2195329,2195361,2195393,2195425,2195457,2195489]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,0,0,6291456,6291456]),new Uint32Array([2182849,6291456,2182881,6291456,2182913,6291456,2182945,6291456,2182977,6291456,2183009,6291456,2183041,6291456,2183073,6291456]),new Uint32Array([2211553,2210081,2211585,2211617,2211649,2211681,2211713,2211745,2211777,2211809,2209569,2211841,2211873,2211905,2211937,2211969]),new Uint32Array([2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2166594,2127298,2166658,2142978,2141827,2166722]),new Uint32Array([2173985,2173761,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2233057,2148481,2173601,2173633,2173665,2173697,2173729]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,0,0,2185761,2185793,2185825,2185857,2185889,2185921,0,0]),new Uint32Array([6291456,2148481,2173601,2173633,2173665,2173697,2173729,2148801,2173761,2143969,2173793,2173825,2153473,2173857,2173889,2173921]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,6291456]),new Uint32Array([0,0,0,2220961,2220961,2220961,2220961,2144193,2144193,2159201,2159201,2159265,2159265,2144194,2220993,2220993]),new Uint32Array([2192641,2235393,2235425,2152257,2116609,2235457,2235489,2200065,2235521,2235553,2235585,2212449,2235617,2235649,2235681,2235713]),new Uint32Array([2194049,2194081,2194113,2194145,2194177,2194209,2194241,2194273,2194305,2194337,2194369,2194401,2194433,2194465,2194497,2194529]),new Uint32Array([2196673,2208641,2208673,2208705,2208737,2208769,2208801,2208833,2208865,2208897,2208929,2208961,2208993,2209025,2209057,2209089]),new Uint32Array([2191681,2191713,2191745,2191777,2153281,2191809,2191841,2191873,2191905,2191937,2191969,2192001,2192033,2192065,2192097,2192129]),new Uint32Array([2230946,2231010,2231074,2231138,2231202,2231266,2231330,2231394,2231458,2231522,2231586,2231650,2231714,2231778,2231842,2231906]),new Uint32Array([14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064,14680064]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,2185953,2185985,2186017,2186049,2186081,2186113,2186145,2186177]),new Uint32Array([2139811,2139907,2097284,2105860,2105988,2106116,2106244,2097444,2097604,2097155,10485778,10486344,2106372,6291456,0,0]),new Uint32Array([2110051,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,0,0,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2172385,6291456,2172417,6291456,2172449,6291456,2172481,6291456,2172513,6291456,2172545,6291456,2172577,6291456,2172609,6291456]),new Uint32Array([0,0,23068672,23068672,6291456,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2249345,2249377,2249409,2249441,2249473,2249505,2249537,2249570,2210209,2249633,2249665,2249697,2249729,2249761,2249793,2216769]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,6291456,6291456,6291456,6291456]),new Uint32Array([2187169,2187201,2187233,2187265,2187297,2187329,2187361,2187393,2187425,2187457,2187489,2187521,2187553,2187585,2187617,2187649]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([0,0,0,6291456,6291456,0,0,0,6291456,6291456,6291456,0,0,0,6291456,6291456]),new Uint32Array([2182337,6291456,2182369,6291456,2182401,6291456,2182433,6291456,2182465,6291456,2182497,6291456,2182529,6291456,2182561,6291456]),new Uint32Array([2138179,2138275,2138371,2138467,2134243,2134435,2138563,2138659,2138755,2138851,2138947,2139043,2138947,2138755,2139139,2139235]),new Uint32Array([23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0]),new Uint32Array([0,0,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2250498,2250562,2250625,2250657,2208321,2250689,2250721,2250753,2250785,2250817,2250849,2218945,2250881,2250913,2250945,0]),new Uint32Array([2170369,2105569,2098305,2108481,2173249,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456]),new Uint32Array([2100897,2111905,2105473,2105569,2105601,0,2108193,0,0,0,2098305,2108321,2108289,2100865,2113153,2108481]),new Uint32Array([2100897,2100897,2105569,2105569,6291456,2112289,2149826,6291456,6291456,2112481,2112577,2098177,2098177,2098177,6291456,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,6291456,6291456,6291456]),new Uint32Array([6291456,2169953,2169985,6291456,2170017,6291456,2170049,2170081,6291456,2170113,2170145,2170177,6291456,6291456,2170209,2170241]),new Uint32Array([6291456,6291456,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([0,0,0,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2220641,2220641,2220673,2220673,2220673,2220673,2220705,2220705,2220705,2220705,2220737,2220737,2220737,2220737,2220769,2220769]),new Uint32Array([2127650,2127746,2127842,2127938,2128034,2128130,2128226,2128322,2128418,2127523,2127619,2127715,2127811,2127907,2128003,2128099]),new Uint32Array([2143969,2173793,2173825,2153473,2173857,2173889,2173921,2173953,2173985,2173761,2174017,2174049,2174081,2174113,2174145,2174177]),new Uint32Array([0,0,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([2204705,2204737,2204769,2204801,2204833,2204865,2204897,2204929,2204961,2204993,2205025,2205057,2205089,2205121,2205153,2205185]),new Uint32Array([2176385,6291456,2176417,6291456,2176449,6291456,2176481,6291456,2176513,6291456,2176545,6291456,2176577,6291456,2176609,6291456]),new Uint32Array([2195521,2195553,2195585,2195617,2195649,2195681,2117857,2195713,2195745,2195777,2195809,2195841,2195873,2195905,2195937,2195969]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,6291456,6291456]),new Uint32Array([2173921,2173953,2173985,2174017,2174017,2174049,2174081,2174113,2174145,2174177,2149057,2233089,2173697,2173761,2173793,2174113]),new Uint32Array([2131586,2132450,2135970,2135778,2161602,2136162,2163650,2161794,2135586,2163714,2137186,2131810,2160290,2135170,2097506,2159554]),new Uint32Array([2134145,2097153,2134241,2105953,2132705,2130977,2160065,2131297,2162049,2133089,2160577,2133857,0,0,0,0]),new Uint32Array([2116513,2116609,2116705,2116801,2116897,2116993,2117089,2117185,2117281,2117377,2117473,2117569,2117665,2117761,2117857,2117953]),new Uint32Array([2100737,2098337,2101441,2101569,2101697,2101825,2101953,2102081,2102209,2100802,2101154,2101282,2101410,2101538,2101666,2101794]),new Uint32Array([2100289,2098657,2098049,2200737,2123489,2123681,2200769,2098625,2100321,2098145,2100449,2098017,2098753,2098977,2150241,2150305]),new Uint32Array([6291456,6291456,6291456,0,6291456,6291456,6291456,6291456,6291456,2109955,6291456,6291456,0,0,0,0]),new Uint32Array([18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368,18874368]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,6291456,0,6291456,0,0]),new Uint32Array([2130979,2131075,2131075,2131171,2131267,2131363,2131459,2131555,2131651,2131651,2131747,2131843,2131939,2132035,2132131,2132227]),new Uint32Array([0,2177793,6291456,2177825,6291456,2177857,6291456,2177889,6291456,2177921,6291456,2177953,6291456,2177985,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672]),new Uint32Array([6291456,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2113345,0,2098209,2111137,2105505,2098241,2108353,2108417,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289]),new Uint32Array([2136643,2136739,2136835,2136931,2137027,2137123,2137219,2137315,2137411,2137507,2137603,2137699,2137795,2137891,2137987,2138083]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0]),new Uint32Array([2174433,6291456,2174465,6291456,2174497,6291456,2174529,6291456,2174561,6291456,2174593,6291456,2174625,6291456,2174657,6291456]),new Uint32Array([0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2105473,2105569,2105601,2112289,2108193,2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441]),new Uint32Array([10496547,10496643,2105505,2149698,6291456,10496739,10496835,2170273,6291456,2149762,2105825,2111713,2111713,2111713,2111713,2168673]),new Uint32Array([6291456,2143490,2143490,2143490,2171649,6291456,2171681,2171713,2171745,6291456,2171777,6291456,2171809,6291456,2171841,6291456]),new Uint32Array([2159106,2159106,2159170,2159170,2159234,2159234,2159298,2159298,2159298,2159362,2159362,2159362,2106401,2106401,2106401,2106401]),new Uint32Array([2105601,2112289,2108193,2112481,2112577,2098177,2098305,2108321,2108289,2100865,2113153,2108481,2113345,2113441,2098209,2111137]),new Uint32Array([2108417,2181217,2181249,2181281,2170433,2170401,2181313,2181345,2181377,2181409,2181441,2181473,2181505,2181537,2170529,2181569]),new Uint32Array([2218433,2245761,2245793,2245825,2245857,2245890,2245953,2245986,2209665,2246050,2246113,2246146,2246210,2246274,2246337,2246369]),new Uint32Array([2230754,2230818,2230882,0,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([6291456,0,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,0,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2184129,6291456,2184161,6291456,2184193,6291456,6291456,6291456,6291456,6291456,2146818,2183361,6291456,6291456,2142978,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2135170,2097506,2130691,2130787,2130883,2163970,2164034,2164098,2164162,2164226,2164290,2164354,2164418,2164482,2164546,2133122]),new Uint32Array([2108515,2108611,2100740,2108707,2108803,2108899,2108995,2109091,2109187,2109283,2109379,2109475,2109571,2109667,2109763,2100738]),new Uint32Array([2102788,2102916,2103044,2120515,2103172,2120611,2120707,2098373,2103300,2120803,2120899,2120995,2103428,2103556,2121091,2121187]),new Uint32Array([2158082,2158146,0,2158210,2158274,0,2158338,2158402,2158466,2129922,2158530,2158594,2158658,2158722,2158786,2158850]),new Uint32Array([10499619,10499715,10499811,10499907,10500003,10500099,10500195,10500291,10500387,10500483,10500579,10500675,10500771,10500867,10500963,10501059]),new Uint32Array([2239585,2239618,2239681,2239713,0,2191969,2239745,2239777,2192033,2239809,2239841,2239874,2239937,2239970,2240033,2240065]),new Uint32Array([2252705,2252738,2252801,2252833,2252865,2252897,2252930,2252994,2253057,2253089,2253121,2253154,2253217,2253250,2219361,2219361]),new Uint32Array([2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,2108193,2112481,2112577,2098177,2098305,2108321,2108289,2100865]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,10538050,10538114,10538178,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([2226402,2226466,2226530,2226594,2226658,2226722,2226786,2226850,2226914,2226978,2227042,2227106,2227170,2227234,2227298,2227362]),new Uint32Array([23068672,6291456,6291456,6291456,6291456,2144066,2144130,2144194,2144258,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,23068672,23068672,23068672,6291456,23068672,23068672]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0]),new Uint32Array([2124674,2124770,2123875,2123971,2124067,2124163,2124259,2124355,2124451,2124547,2124643,2124739,2124835,2124931,2125027,2125123]),new Uint32Array([2168065,6291456,2168097,6291456,2168129,6291456,2168161,6291456,2168193,6291456,2168225,6291456,2168257,6291456,2168289,6291456]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0]),new Uint32Array([23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,2100610,2100611,6291456,2107842,2107843,6291456,6291456,6291456,6291456,10537922,6291456,10537986,6291456]),new Uint32Array([2174849,2174881,2174913,2174945,2174977,2175009,2175041,2175073,2175105,2175137,2175169,2175201,2175233,2175265,2175297,2175329]),new Uint32Array([2154562,2154626,2154690,2154754,2141858,2154818,2154882,2127298,2154946,2127298,2155010,2155074,2155138,2155202,2155266,2155202]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456,6291456,6291456,6291456,6291456,23068672,0]),new Uint32Array([2200641,2150786,2150850,2150914,2150978,2151042,2106562,2151106,2150562,2151170,2151234,2151298,2151362,2151426,2151490,2151554]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,23068672,0,0,0,0,0,0,0,0,6291456,6291456]),new Uint32Array([2220289,2220289,2220321,2220321,2220321,2220321,2220353,2220353,2220353,2220353,2220385,2220385,2220385,2220385,2220417,2220417]),new Uint32Array([2155330,2155394,0,2155458,2155522,2155586,2105732,0,2155650,2155714,2155778,2125314,2155842,2155906,2126274,2155970]),new Uint32Array([23068672,23068672,23068672,23068672,23068672,6291456,6291456,23068672,23068672,6291456,23068672,23068672,23068672,23068672,6291456,6291456]),new Uint32Array([6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,6291456,0,0,0,0,0,0]),new Uint32Array([2097729,2106017,2106017,2106017,2106017,2131297,2131297,2131297,2131297,2106081,2106081,2162049,2162049,2105953,2105953,2162337]),new Uint32Array([2097185,2097697,2097697,2097697,2097697,2135777,2135777,2135777,2135777,2097377,2097377,2097377,2097377,2097601,2097601,2097217]),new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23068672]),new Uint32Array([2139331,2139427,2139523,2139043,2133571,2132611,2139619,2139715,0,0,0,0,0,0,0,0]),new Uint32Array([2174113,2174145,2100897,2098177,2108289,2100865,2173601,2173633,2173985,2174113,2174145,6291456,6291456,6291456,6291456,6291456]),new Uint32Array([6291456,6291456,23068672,6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456,23068672,6291456,6291456,6291456,6291456]),new Uint32Array([23068672,23068672,18923778,23068672,23068672,23068672,23068672,18923842,23068672,23068672,23068672,23068672,18923906,23068672,23068672,23068672]),new Uint32Array([2134145,2097153,2134241,0,2132705,2130977,2160065,2131297,0,2133089,0,2133857,0,0,0,0]),new Uint32Array([6291456,6291456,6291456,6291456,0,0,0,0,0,0,0,0,0,0,0,0]),new Uint32Array([2177537,6291456,2177569,6291456,2177601,6291456,2177633,6291456,2177665,6291456,2177697,6291456,2177729,6291456,2177761,6291456]),new Uint32Array([2212481,2212513,2212545,2212577,2197121,2212609,2212641,2212673,2212705,2212737,2212769,2212801,2212833,2212865,2212897,2212929]),new Uint32Array([6291456,6291456,23068672,23068672,23068672,6291456,6291456,0,0,0,0,0,0,0,0,0]),new Uint32Array([2098241,2108353,2170209,2105825,2111713,2100897,2111905,2105473,2105569,2105601,2112289,6291456,2108193,2172417,2112481,2098177]),new Uint32Array([6291456,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,23068672,6291456,6291456])],e=new Uint16Array([616,616,565,147,161,411,330,2,131,131,328,454,241,408,86,86,696,113,285,350,325,301,473,214,639,232,447,64,369,598,124,672,567,223,621,154,107,86,86,86,86,86,86,505,86,68,634,86,218,218,218,218,486,218,218,513,188,608,216,86,217,463,668,85,700,360,184,86,86,86,647,402,153,10,346,718,662,260,145,298,117,1,443,342,138,54,563,86,240,572,218,70,387,86,118,460,641,602,86,86,306,218,86,692,86,86,86,86,86,162,707,86,458,26,86,218,638,86,86,86,86,86,65,449,86,86,306,183,86,58,391,667,86,157,131,131,131,131,86,433,131,406,31,218,247,86,86,693,218,581,351,86,438,295,69,462,45,126,173,650,14,295,69,97,168,187,641,78,523,390,69,108,287,664,173,219,83,295,69,108,431,426,173,694,412,115,628,52,257,398,641,118,501,121,69,579,151,423,173,620,464,121,69,382,151,476,173,27,53,121,86,594,578,226,173,86,632,130,86,96,228,268,641,622,563,86,86,21,148,650,131,131,321,43,144,343,381,531,131,131,178,20,86,399,156,375,164,541,30,60,715,198,92,118,131,131,86,86,306,407,86,280,457,196,488,358,131,131,244,86,86,143,86,86,86,86,86,667,563,86,86,86,86,86,86,86,86,86,86,86,86,86,336,363,86,86,336,86,86,380,678,67,86,86,86,678,86,86,86,512,86,307,86,708,86,86,86,86,86,528,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,563,307,86,86,86,86,86,104,450,337,86,720,86,32,450,397,86,86,86,587,218,558,708,708,293,708,86,86,86,86,86,694,205,86,8,86,86,86,86,549,86,667,697,697,679,86,458,460,86,86,650,86,708,543,86,86,86,245,86,86,86,140,218,127,708,708,458,197,131,131,131,131,500,86,86,483,251,86,306,510,515,86,722,86,86,86,65,201,86,86,483,580,470,86,86,86,368,131,131,131,694,114,110,555,86,86,123,721,163,142,713,418,86,317,675,209,218,218,218,371,545,592,629,490,603,199,46,320,525,680,310,279,388,111,42,252,593,607,235,617,410,377,50,548,135,356,17,520,189,116,392,600,349,332,482,699,690,535,119,106,451,71,152,667,131,218,218,265,671,637,492,504,533,683,269,269,658,86,86,86,86,86,86,86,86,86,491,619,86,86,6,86,86,86,86,86,86,86,86,86,86,86,229,86,86,86,86,86,86,86,86,86,86,86,86,667,86,86,171,131,118,131,656,206,234,571,89,334,670,246,311,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,534,86,86,86,86,86,86,82,86,86,86,86,86,430,86,86,86,86,86,86,86,86,86,599,86,324,86,470,69,640,264,131,626,101,174,86,86,667,233,105,73,374,394,221,204,84,28,326,86,86,471,86,86,86,109,573,86,171,200,200,200,200,218,218,86,86,86,86,460,131,131,131,86,506,86,86,86,86,86,220,404,34,614,47,442,305,25,612,338,601,648,7,344,255,131,131,51,86,312,507,563,86,86,86,86,588,86,86,86,86,86,530,511,86,458,3,435,384,556,522,230,527,86,118,86,86,717,86,137,273,79,181,484,23,93,112,655,249,417,703,370,87,98,313,684,585,155,465,596,481,695,18,416,428,61,701,706,282,643,495,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,549,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,549,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,307,86,86,86,171,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,650,131,422,542,420,263,24,172,86,86,86,86,86,566,86,86,132,540,395,353,494,519,19,485,284,472,131,131,131,16,714,86,211,708,86,86,86,694,698,86,86,483,704,708,218,272,86,86,120,86,159,478,86,307,247,86,86,663,597,459,627,667,86,86,277,455,39,302,86,250,86,86,86,271,99,452,306,281,329,400,200,86,86,362,549,352,646,461,323,586,86,86,4,708,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,717,86,518,86,86,650,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,125,554,480,300,613,72,333,288,561,544,604,48,719,91,169,176,590,224,76,191,29,559,560,231,537,166,477,538,256,437,131,131,469,167,40,0,685,266,441,705,239,642,475,568,640,610,299,673,517,318,385,22,202,180,179,359,424,215,90,66,521,653,467,682,453,409,479,88,131,661,35,303,15,262,666,630,712,131,131,618,659,175,218,195,347,193,227,261,150,165,709,546,294,569,710,270,413,376,524,55,242,38,419,529,170,657,3,304,122,379,278,131,651,86,67,576,458,458,131,131,86,86,86,86,86,86,86,118,309,86,86,547,86,86,86,86,667,650,664,131,131,86,86,56,131,131,131,131,131,131,131,131,86,307,86,86,86,664,238,650,86,86,717,86,118,86,86,315,86,59,86,86,574,549,131,131,340,57,436,86,86,86,86,86,86,458,708,499,691,62,86,650,86,86,694,86,86,86,319,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,171,86,549,694,131,131,131,131,131,131,131,131,131,77,86,86,139,86,502,86,86,86,667,595,131,131,131,86,12,86,13,86,609,131,131,131,131,86,86,86,625,86,669,86,86,182,129,86,5,694,104,86,86,86,86,131,131,86,86,386,171,86,86,86,345,86,324,86,589,86,213,36,131,131,131,131,131,86,86,86,86,104,131,131,131,141,290,80,677,86,86,86,267,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,667,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,515,86,86,33,136,669,86,711,515,86,86,550,640,86,104,708,515,86,159,372,717,86,86,444,515,86,86,663,37,86,563,460,86,390,624,702,131,131,131,131,389,59,708,86,86,341,208,708,635,295,69,108,431,508,100,190,131,131,131,131,131,131,131,131,86,86,86,649,516,660,131,131,86,86,86,218,631,708,131,131,131,131,131,131,131,131,131,131,86,86,341,575,238,514,131,131,86,86,86,218,291,708,307,131,86,86,306,367,708,131,131,131,86,378,697,86,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,615,253,86,86,86,292,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,104,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,69,86,341,553,549,86,307,86,86,645,275,455,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,708,131,131,131,131,131,131,86,86,86,86,86,86,667,460,86,86,86,86,86,86,86,86,86,86,86,86,717,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,667,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,171,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,104,86,667,459,131,131,131,131,131,131,86,458,225,86,86,86,516,549,11,390,405,86,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,460,44,218,197,711,515,131,131,131,131,664,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,307,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,308,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,640,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,118,307,104,286,591,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,549,86,86,681,86,86,75,185,314,582,86,358,496,474,86,104,131,86,86,86,86,146,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,171,86,640,131,131,131,131,131,131,131,131,246,503,689,339,674,81,258,415,439,128,562,366,414,246,503,689,583,222,557,316,636,665,186,355,95,670,246,503,689,339,674,557,258,415,439,186,355,95,670,246,503,689,446,644,536,652,331,532,335,440,274,421,297,570,74,425,364,425,606,552,403,509,134,365,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,218,218,218,498,218,218,577,627,551,497,572,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,553,354,236,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,296,455,131,131,456,243,103,86,41,459,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,9,276,158,716,393,564,383,489,401,654,210,654,131,131,131,640,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,650,86,86,86,86,86,86,717,667,563,563,563,86,549,102,686,133,246,605,86,448,86,86,207,307,131,131,131,641,86,177,611,445,373,194,584,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,308,307,171,86,86,86,86,86,86,86,717,86,86,86,86,86,460,131,131,650,86,86,86,694,708,86,86,694,86,458,131,131,131,131,131,131,667,694,289,650,667,131,131,86,640,131,131,664,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,171,131,131,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,460,86,86,86,86,86,86,86,86,86,86,86,86,86,458,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,640,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,466,203,149,429,94,432,160,687,539,63,237,283,192,248,348,259,427,526,396,676,254,468,487,212,327,623,49,633,322,493,434,688,357,361,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131]),{mapStr:"صلى الله عليه وسلمجل جلالهキロメートルrad∕s2エスクードキログラムキロワットグラムトンクルゼイロサンチームパーセントピアストルファラッドブッシェルヘクタールマンションミリバールレントゲン′′′′1⁄10viii(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)∫∫∫∫(오전)(오후)アパートアルファアンペアイニングエーカーカラットカロリーキュリーギルダークローネサイクルシリングバーレルフィートポイントマイクロミクロンメガトンリットルルーブル株式会社kcalm∕s2c∕kgاكبرمحمدصلعمرسولریال1⁄41⁄23⁄4 ̈́ྲཱྀླཱྀ ̈͂ ̓̀ ̓́ ̓͂ ̔̀ ̔́ ̔͂ ̈̀‵‵‵a/ca/sc/oc/utelfax1⁄71⁄91⁄32⁄31⁄52⁄53⁄54⁄51⁄65⁄61⁄83⁄85⁄87⁄8xii0⁄3∮∮∮(1)(2)(3)(4)(5)(6)(7)(8)(9)(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)(y)(z)::====(ᄀ)(ᄂ)(ᄃ)(ᄅ)(ᄆ)(ᄇ)(ᄉ)(ᄋ)(ᄌ)(ᄎ)(ᄏ)(ᄐ)(ᄑ)(ᄒ)(가)(나)(다)(라)(마)(바)(사)(아)(자)(차)(카)(타)(파)(하)(주)(一)(二)(三)(四)(五)(六)(七)(八)(九)(十)(月)(火)(水)(木)(金)(土)(日)(株)(有)(社)(名)(特)(財)(祝)(労)(代)(呼)(学)(監)(企)(資)(協)(祭)(休)(自)(至)pte10月11月12月ergltdアールインチウォンオンスオームカイリガロンガンマギニーケースコルナコーポセンチダースノットハイツパーツピクルフランペニヒヘルツペンスページベータボルトポンドホールホーンマイルマッハマルクヤードヤールユアンルピー10点11点12点13点14点15点16点17点18点19点20点21点22点23点24点hpabardm2dm3khzmhzghzthzmm2cm2km2mm3cm3km3kpampagpalogmilmolppmv∕ma∕m10日11日12日13日14日15日16日17日18日19日20日21日22日23日24日25日26日27日28日29日30日31日galffifflשּׁשּׂ ٌّ ٍّ َّ ُّ ِّ ّٰـَّـُّـِّتجمتحجتحمتخمتمجتمحتمخجمححميحمىسحجسجحسجىسمحسمجسممصححصممشحمشجيشمخشممضحىضخمطمحطممطميعجمعممعمىغممغميغمىفخمقمحقمملحملحيلحىلججلخملمحمحجمحيمجحمجممخممجخهمجهممنحمنحىنجمنجىنمينمىيممبخيتجيتجىتخيتخىتميتمىجميجحىجمىسخىصحيشحيضحيلجيلمييحييجييميمميقمينحيعميكمينجحمخيلجمكممجحيحجيمجيفميبحيسخينجيصلےقلے𝅘𝅥𝅮𝅘𝅥𝅯𝅘𝅥𝅰𝅘𝅥𝅱𝅘𝅥𝅲𝆹𝅥𝅮𝆺𝅥𝅮𝆹𝅥𝅯𝆺𝅥𝅯〔s〕ppv〔本〕〔三〕〔二〕〔安〕〔点〕〔打〕〔盗〕〔勝〕〔敗〕 ̄ ́ ̧ssi̇ijl·ʼndžljnjdz ̆ ̇ ̊ ̨ ̃ ̋ ιեւاٴوٴۇٴيٴक़ख़ग़ज़ड़ढ़फ़य़ড়ঢ়য়ਲ਼ਸ਼ਖ਼ਗ਼ਜ਼ਫ਼ଡ଼ଢ଼ําໍາຫນຫມགྷཌྷདྷབྷཛྷཀྵཱཱིུྲྀླྀྒྷྜྷྡྷྦྷྫྷྐྵaʾἀιἁιἂιἃιἄιἅιἆιἇιἠιἡιἢιἣιἤιἥιἦιἧιὠιὡιὢιὣιὤιὥιὦιὧιὰιαιάιᾶι ͂ὴιηιήιῆιὼιωιώιῶι ̳!! ̅???!!?rs°c°fnosmtmivix⫝̸ ゙ ゚よりコト333435참고주의363738394042444546474849503月4月5月6月7月8月9月hgevギガデシドルナノピコビルペソホンリラレムdaauovpciu平成昭和大正明治naμakakbmbgbpfnfμfμgmgμlmldlklfmnmμmpsnsμsmsnvμvkvpwnwμwmwkwkωmωbqcccddbgyhainkkktlnlxphprsrsvwbstմնմեմիվնմխיִײַשׁשׂאַאָאּבּגּדּהּוּזּטּיּךּכּלּמּנּסּףּפּצּקּרּתּוֹבֿכֿפֿאלئائەئوئۇئۆئۈئېئىئجئحئمئيبجبمبىبيتىتيثجثمثىثيخحضجضمطحظمغجفجفحفىفيقحقىقيكاكجكحكخكلكىكينخنىنيهجهىهييىذٰرٰىٰئرئزئنبزبنترتزتنثرثزثنمانرنزننيريزئخئهبهتهصخنههٰثهسهشهطىطيعىعيغىغيسىسيشىشيصىصيضىضيشخشرسرصرضراً ًـًـّ ْـْلآلألإ𝅗𝅥0,1,2,3,4,5,6,7,8,9,wzhvsdwcmcmddjほかココàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįĵķĺļľłńņňŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷÿźżɓƃƅɔƈɖɗƌǝəɛƒɠɣɩɨƙɯɲɵơƣƥʀƨʃƭʈưʊʋƴƶʒƹƽǎǐǒǔǖǘǚǜǟǡǣǥǧǩǫǭǯǵƕƿǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟƞȣȥȧȩȫȭȯȱȳⱥȼƚⱦɂƀʉʌɇɉɋɍɏɦɹɻʁʕͱͳʹͷ;ϳέίόύβγδεζθκλνξοπρστυφχψϊϋϗϙϛϝϟϡϣϥϧϩϫϭϯϸϻͻͼͽѐёђѓєѕіїјљњћќѝўџабвгдежзийклмнопрстуфхцчшщъыьэюяѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯաբգդզէըթժլծկհձղճյշոչպջռստրցփքօֆ་ⴧⴭნᏰᏱᏲᏳᏴᏵꙋɐɑᴂɜᴖᴗᴝᴥɒɕɟɡɥɪᵻʝɭᶅʟɱɰɳɴɸʂƫᴜʐʑḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿἐἑἒἓἔἕἰἱἲἳἴἵἶἷὀὁὂὃὄὅὑὓὕὗᾰᾱὲΐῐῑὶΰῠῡὺῥ`ὸ‐+−∑〈〉ⰰⰱⰲⰳⰴⰵⰶⰷⰸⰹⰺⰻⰼⰽⰾⰿⱀⱁⱂⱃⱄⱅⱆⱇⱈⱉⱊⱋⱌⱍⱎⱏⱐⱑⱒⱓⱔⱕⱖⱗⱘⱙⱚⱛⱜⱝⱞⱡɫᵽɽⱨⱪⱬⱳⱶȿɀⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳬⳮⳳⵡ母龟丨丶丿乙亅亠人儿入冂冖冫几凵刀力勹匕匚匸卜卩厂厶又口囗士夂夊夕女子宀寸小尢尸屮山巛工己巾干幺广廴廾弋弓彐彡彳心戈戶手支攴文斗斤方无曰欠止歹殳毋比毛氏气爪父爻爿片牙牛犬玄玉瓜瓦甘生用田疋疒癶白皮皿目矛矢石示禸禾穴立竹米糸缶网羊羽老而耒耳聿肉臣臼舌舛舟艮色艸虍虫血行衣襾見角言谷豆豕豸貝赤走足身車辛辰辵邑酉釆里長門阜隶隹雨靑非面革韋韭音頁風飛食首香馬骨高髟鬥鬯鬲鬼魚鳥鹵鹿麥麻黃黍黑黹黽鼎鼓鼠鼻齊齒龍龜龠.〒卄卅ᄁᆪᆬᆭᄄᆰᆱᆲᆳᆴᆵᄚᄈᄡᄊ짜ᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵᄔᄕᇇᇈᇌᇎᇓᇗᇙᄜᇝᇟᄝᄞᄠᄢᄣᄧᄩᄫᄬᄭᄮᄯᄲᄶᅀᅇᅌᇱᇲᅗᅘᅙᆄᆅᆈᆑᆒᆔᆞᆡ上中下甲丙丁天地問幼箏우秘男適優印注項写左右医宗夜テヌモヨヰヱヲꙁꙃꙅꙇꙉꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛꜣꜥꜧꜩꜫꜭꜯꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯꝺꝼᵹꝿꞁꞃꞅꞇꞌꞑꞓꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩɬʞʇꭓꞵꞷꬷꭒᎠᎡᎢᎣᎤᎥᎦᎧᎨᎩᎪᎫᎬᎭᎮᎯᎰᎱᎲᎳᎴᎵᎶᎷᎸᎹᎺᎻᎼᎽᎾᎿᏀᏁᏂᏃᏄᏅᏆᏇᏈᏉᏊᏋᏌᏍᏎᏏᏐᏑᏒᏓᏔᏕᏖᏗᏘᏙᏚᏛᏜᏝᏞᏟᏠᏡᏢᏣᏤᏥᏦᏧᏨᏩᏪᏫᏬᏭᏮᏯ豈更賈滑串句契喇奈懶癩羅蘿螺裸邏樂洛烙珞落酪駱亂卵欄爛蘭鸞嵐濫藍襤拉臘蠟廊朗浪狼郎來冷勞擄櫓爐盧蘆虜路露魯鷺碌祿綠菉錄論壟弄籠聾牢磊賂雷壘屢樓淚漏累縷陋勒肋凜凌稜綾菱陵讀拏諾丹寧怒率異北磻便復不泌數索參塞省葉說殺沈拾若掠略亮兩凉梁糧良諒量勵呂廬旅濾礪閭驪麗黎曆歷轢年憐戀撚漣煉璉秊練聯輦蓮連鍊列劣咽烈裂廉念捻殮簾獵令囹嶺怜玲瑩羚聆鈴零靈領例禮醴隸惡了僚寮尿料燎療蓼遼暈阮劉杻柳流溜琉留硫紐類戮陸倫崙淪輪律慄栗隆利吏履易李梨泥理痢罹裏裡離匿溺吝燐璘藺隣鱗麟林淋臨笠粒狀炙識什茶刺切度拓糖宅洞暴輻降廓兀嗀塚晴凞猪益礼神祥福靖精蘒諸逸都飯飼館鶴郞隷侮僧免勉勤卑喝嘆器塀墨層悔慨憎懲敏既暑梅海渚漢煮爫琢碑祉祈祐祖禍禎穀突節縉繁署者臭艹著褐視謁謹賓贈辶難響頻恵𤋮舘並况全侀充冀勇勺啕喙嗢墳奄奔婢嬨廒廙彩徭惘慎愈慠戴揄搜摒敖望杖滛滋瀞瞧爵犯瑱甆画瘝瘟盛直睊着磌窱类絛缾荒華蝹襁覆調請諭變輸遲醙鉶陼韛頋鬒𢡊𢡄𣏕㮝䀘䀹𥉉𥳐𧻓齃龎עםٱٻپڀٺٿٹڤڦڄڃچڇڍڌڎڈژڑکگڳڱںڻۀہھۓڭۋۅۉ、〖〗—–_{}【】《》「」『』[]#&*-<>\\$%@ءؤة\"'^|~⦅⦆・ゥャ¢£¬¦¥₩│←↑→↓■○𐐨𐐩𐐪𐐫𐐬𐐭𐐮𐐯𐐰𐐱𐐲𐐳𐐴𐐵𐐶𐐷𐐸𐐹𐐺𐐻𐐼𐐽𐐾𐐿𐑀𐑁𐑂𐑃𐑄𐑅𐑆𐑇𐑈𐑉𐑊𐑋𐑌𐑍𐑎𐑏𐓘𐓙𐓚𐓛𐓜𐓝𐓞𐓟𐓠𐓡𐓢𐓣𐓤𐓥𐓦𐓧𐓨𐓩𐓪𐓫𐓬𐓭𐓮𐓯𐓰𐓱𐓲𐓳𐓴𐓵𐓶𐓷𐓸𐓹𐓺𐓻𐳀𐳁𐳂𐳃𐳄𐳅𐳆𐳇𐳈𐳉𐳊𐳋𐳌𐳍𐳎𐳏𐳐𐳑𐳒𐳓𐳔𐳕𐳖𐳗𐳘𐳙𐳚𐳛𐳜𐳝𐳞𐳟𐳠𐳡𐳢𐳣𐳤𐳥𐳦𐳧𐳨𐳩𐳪𐳫𐳬𐳭𐳮𐳯𐳰𐳱𐳲𑣀𑣁𑣂𑣃𑣄𑣅𑣆𑣇𑣈𑣉𑣊𑣋𑣌𑣍𑣎𑣏𑣐𑣑𑣒𑣓𑣔𑣕𑣖𑣗𑣘𑣙𑣚𑣛𑣜𑣝𑣞𑣟ıȷ∇∂𞤢𞤣𞤤𞤥𞤦𞤧𞤨𞤩𞤪𞤫𞤬𞤭𞤮𞤯𞤰𞤱𞤲𞤳𞤴𞤵𞤶𞤷𞤸𞤹𞤺𞤻𞤼𞤽𞤾𞤿𞥀𞥁𞥂𞥃ٮڡٯ字双多解交映無前後再新初終販声吹演投捕遊指禁空合満申割営配得可丽丸乁𠄢你侻倂偺備像㒞𠘺兔兤具𠔜㒹內𠕋冗冤仌冬𩇟刃㓟刻剆剷㔕包匆卉博即卽卿𠨬灰及叟𠭣叫叱吆咞吸呈周咢哶唐啓啣善喫喳嗂圖圗噑噴壮城埴堍型堲報墬𡓤売壷夆夢奢𡚨𡛪姬娛娧姘婦㛮嬈嬾𡧈寃寘寳𡬘寿将㞁屠峀岍𡷤嵃𡷦嵮嵫嵼巡巢㠯巽帨帽幩㡢𢆃㡼庰庳庶𪎒𢌱舁弢㣇𣊸𦇚形彫㣣徚忍志忹悁㤺㤜𢛔惇慈慌慺憲憤憯懞戛扝抱拔捐𢬌挽拼捨掃揤𢯱搢揅掩㨮摩摾撝摷㩬敬𣀊旣書晉㬙㬈㫤冒冕最暜肭䏙朡杞杓𣏃㭉柺枅桒𣑭梎栟椔楂榣槪檨𣚣櫛㰘次𣢧歔㱎歲殟殻𣪍𡴋𣫺汎𣲼沿泍汧洖派浩浸涅𣴞洴港湮㴳滇𣻑淹潮𣽞𣾎濆瀹瀛㶖灊災灷炭𠔥煅𤉣熜爨牐𤘈犀犕𤜵𤠔獺王㺬玥㺸瑇瑜璅瓊㼛甤𤰶甾𤲒𢆟瘐𤾡𤾸𥁄㿼䀈𥃳𥃲𥄙𥄳眞真瞋䁆䂖𥐝硎䃣𥘦𥚚𥛅秫䄯穊穏𥥼𥪧䈂𥮫篆築䈧𥲀糒䊠糨糣紀𥾆絣䌁緇縂繅䌴𦈨𦉇䍙𦋙罺𦌾羕翺𦓚𦔣聠𦖨聰𣍟䏕育脃䐋脾媵𦞧𦞵𣎓𣎜舄辞䑫芑芋芝劳花芳芽苦𦬼茝荣莭茣莽菧荓菊菌菜𦰶𦵫𦳕䔫蓱蓳蔖𧏊蕤𦼬䕝䕡𦾱𧃒䕫虐虧虩蚩蚈蜎蛢蜨蝫螆蟡蠁䗹衠𧙧裗裞䘵裺㒻𧢮𧥦䚾䛇誠𧲨貫賁贛起𧼯𠠄跋趼跰𠣞軔𨗒𨗭邔郱鄑𨜮鄛鈸鋗鋘鉼鏹鐕𨯺開䦕閷𨵷䧦雃嶲霣𩅅𩈚䩮䩶韠𩐊䪲𩒖頩𩖶飢䬳餩馧駂駾䯎𩬰鱀鳽䳎䳭鵧𪃎䳸𪄅𪈎𪊑䵖黾鼅鼏鼖𪘀",mapChar:function(r){return r>=196608?r>=917760&&r<=917999?18874368:0:t[e[r>>4]][15&r]}};var t,e}.apply(e,[]))||(t.exports=n)},function(t,e,r){"use strict";t.exports=[{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"resolver",outputs:[{name:"",type:"address"}],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"owner",outputs:[{name:"",type:"address"}],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"label",type:"bytes32"},{name:"owner",type:"address"}],name:"setSubnodeOwner",outputs:[],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"ttl",type:"uint64"}],name:"setTTL",outputs:[],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"ttl",outputs:[{name:"",type:"uint64"}],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"resolver",type:"address"}],name:"setResolver",outputs:[],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"owner",type:"address"}],name:"setOwner",outputs:[],payable:!1,type:"function"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"owner",type:"address"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!0,name:"label",type:"bytes32"},{indexed:!1,name:"owner",type:"address"}],name:"NewOwner",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"resolver",type:"address"}],name:"NewResolver",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"ttl",type:"uint64"}],name:"NewTTL",type:"event"},{constant:!1,inputs:[{internalType:"bytes32",name:"node",type:"bytes32"},{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"resolver",type:"address"},{internalType:"uint64",name:"ttl",type:"uint64"}],name:"setRecord",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"operator",type:"address"},{internalType:"bool",name:"approved",type:"bool"}],name:"setApprovalForAll",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!1,internalType:"bool",name:"approved",type:"bool"}],name:"ApprovalForAll",type:"event"},{constant:!0,inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"operator",type:"address"}],name:"isApprovedForAll",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"bytes32",name:"node",type:"bytes32"}],name:"recordExists",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"bytes32",name:"node",type:"bytes32"},{internalType:"bytes32",name:"label",type:"bytes32"},{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"resolver",type:"address"},{internalType:"uint64",name:"ttl",type:"uint64"}],name:"setSubnodeRecord",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"}]},function(t,e,r){"use strict";t.exports=[{constant:!0,inputs:[{name:"interfaceID",type:"bytes4"}],name:"supportsInterface",outputs:[{name:"",type:"bool"}],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"},{name:"contentTypes",type:"uint256"}],name:"ABI",outputs:[{name:"contentType",type:"uint256"},{name:"data",type:"bytes"}],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"hash",type:"bytes"}],name:"setMultihash",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"multihash",outputs:[{name:"",type:"bytes"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"x",type:"bytes32"},{name:"y",type:"bytes32"}],name:"setPubkey",outputs:[],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"content",outputs:[{name:"ret",type:"bytes32"}],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"addr",outputs:[{name:"ret",type:"address"}],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"contentType",type:"uint256"},{name:"data",type:"bytes"}],name:"setABI",outputs:[],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"name",outputs:[{name:"ret",type:"string"}],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"name",type:"string"}],name:"setName",outputs:[],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"hash",type:"bytes32"}],name:"setContent",outputs:[],payable:!1,type:"function"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"pubkey",outputs:[{name:"x",type:"bytes32"},{name:"y",type:"bytes32"}],payable:!1,type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"addr",type:"address"}],name:"setAddr",outputs:[],payable:!1,type:"function"},{inputs:[{name:"ensAddr",type:"address"}],payable:!1,type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"a",type:"address"}],name:"AddrChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"hash",type:"bytes32"}],name:"ContentChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"name",type:"string"}],name:"NameChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!0,name:"contentType",type:"uint256"}],name:"ABIChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"x",type:"bytes32"},{indexed:!1,name:"y",type:"bytes32"}],name:"PubkeyChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"node",type:"bytes32"},{indexed:!1,name:"hash",type:"bytes"}],name:"ContenthashChanged",type:"event"},{constant:!0,inputs:[{name:"node",type:"bytes32"}],name:"contenthash",outputs:[{name:"",type:"bytes"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"node",type:"bytes32"},{name:"hash",type:"bytes"}],name:"setContenthash",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"}]},function(t,e,r){"use strict";var n=r(0),i=n(r(48)),o=n(r(78)),a=r(57),s=r(144),u=r(10).errors,f=r(132).interfaceIds;function c(t){this.registry=t}c.prototype.method=function(t,e,r,n,i){return{call:this.call.bind({ensName:t,methodName:e,methodArguments:r,callback:i,parent:this,outputFormatter:n}),send:this.send.bind({ensName:t,methodName:e,methodArguments:r,callback:i,parent:this})}},c.prototype.call=function(t){var e=this,r=new a,n=this.parent.prepareArguments(this.ensName,this.methodArguments),s=this.outputFormatter||null;return this.parent.registry.getResolver(this.ensName).then(function(){var a=(0,o.default)(i.default.mark((function o(a){return i.default.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,e.parent.checkInterfaceSupport(a,e.methodName);case 2:e.parent.handleCall(r,a.methods[e.methodName],n,s,t);case 3:case"end":return i.stop()}}),o)})));return function(t){return a.apply(this,arguments)}}()).catch((function(e){"function"!=typeof t?r.reject(e):t(e,null)})),r.eventEmitter},c.prototype.send=function(t,e){var r=this,n=new a,s=this.parent.prepareArguments(this.ensName,this.methodArguments);return this.parent.registry.getResolver(this.ensName).then(function(){var a=(0,o.default)(i.default.mark((function o(a){return i.default.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,r.parent.checkInterfaceSupport(a,r.methodName);case 2:r.parent.handleSend(n,a.methods[r.methodName],s,t,e);case 3:case"end":return i.stop()}}),o)})));return function(t){return a.apply(this,arguments)}}()).catch((function(t){"function"!=typeof e?n.reject(t):e(t,null)})),n.eventEmitter},c.prototype.handleCall=function(t,e,r,n,i){return e.apply(this,r).call().then((function(e){n&&(e=n(e)),"function"!=typeof i?t.resolve(e):i(e,e)})).catch((function(e){"function"!=typeof i?t.reject(e):i(e,null)})),t},c.prototype.handleSend=function(t,e,r,n,i){return e.apply(this,r).send(n).on("sending",(function(){t.eventEmitter.emit("sending")})).on("sent",(function(){t.eventEmitter.emit("sent")})).on("transactionHash",(function(e){t.eventEmitter.emit("transactionHash",e)})).on("confirmation",(function(e,r){t.eventEmitter.emit("confirmation",e,r)})).on("receipt",(function(e){t.eventEmitter.emit("receipt",e),t.resolve(e),"function"==typeof i&&i(e,e)})).on("error",(function(e){t.eventEmitter.emit("error",e),"function"!=typeof i?t.reject(e):i(e,null)})),t},c.prototype.prepareArguments=function(t,e){var r=s.hash(t);return e.length>0?(e.unshift(r),e):[r]},c.prototype.checkInterfaceSupport=function(){var t=(0,o.default)(i.default.mark((function t(e,r){var n;return i.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(f[r]){t.next=2;break}return t.abrupt("return");case 2:return n=!1,t.prev=3,t.next=6,e.methods.supportsInterface(f[r]).call();case 6:n=t.sent,t.next=12;break;case 9:t.prev=9,t.t0=t.catch(3),console.warn('Could not verify interface of resolver contract at "'+e.options.address+'". ');case 12:if(n){t.next=14;break}throw u.ResolverMethodMissingError(e.options.address,r);case 14:case"end":return t.stop()}}),t,null,[[3,9]])})));return function(e,r){return t.apply(this,arguments)}}(),t.exports=c},function(t,e,r){"use strict";var n=r(308);t.exports={decode:function(t){var e=null,r=null,i=null;if(t&&t.error)return{protocolType:null,decoded:t.error};if(t)try{e=n.decode(t);var o=n.getCodec(t);"ipfs-ns"===o?r="ipfs":"swarm-ns"===o?r="bzz":"onion"===o?r="onion":"onion3"===o?r="onion3":e=t}catch(t){i=t.message}return{protocolType:r,decoded:e,error:i}},encode:function(t){var e,r,i=!1;if(t){var o=t.match(/^(ipfs|bzz|onion|onion3):\/\/(.*)/)||t.match(/\/(ipfs)\/(.*)/);o&&(r=o[1],e=o[2]);try{if("ipfs"===r)e.length>=4&&(i="0x"+n.fromIpfs(e));else if("bzz"===r)e.length>=4&&(i="0x"+n.fromSwarm(e));else if("onion"===r)16===e.length&&(i="0x"+n.encode("onion",e));else{if("onion3"!==r)throw new Error("Could not encode content hash: unsupported content type");56===e.length&&(i="0x"+n.encode("onion3",e))}}catch(t){throw t}}return i}}},function(t,e,r){"use strict";var n=r(309),i=r(317),o=i.hexStringToBuffer,a=i.profiles,s=r(340).cidV0ToV1Base32;t.exports={helpers:{cidV0ToV1Base32:s},decode:function(t){var e=o(t),r=n.getCodec(e),i=n.rmPrefix(e),s=a[r];return s||(s=a.default),s.decode(i)},fromIpfs:function(t){return this.encode("ipfs-ns",t)},fromSwarm:function(t){return this.encode("swarm-ns",t)},encode:function(t,e){var r=a[t];r||(r=a.default);var i=r.encode(e);return n.addPrefix(t,i).toString("hex")},getCodec:function(t){var e=o(t);return n.getCodec(e)}}},function(t,e,r){"use strict";(function(n){var i=r(51),o=r(313),a=r(314),s=r(145);(e=t.exports).addPrefix=function(t,e){var r;if(n.isBuffer(t))r=s.varintBufferEncode(t);else{if(!a[t])throw new Error("multicodec not recognized");r=a[t]}return n.concat([r,e])},e.rmPrefix=function(t){return i.decode(t),t.slice(i.decode.bytes)},e.getCodec=function(t){var e=i.decode(t),r=o.get(e);if(void 0===r)throw new Error("Code ".concat(e," not found"));return r},e.getName=function(t){return o.get(t)},e.getNumber=function(t){var e=a[t];if(void 0===e)throw new Error("Codec `"+t+"` not found");return s.varintBufferDecode(e)[0]},e.getCode=function(t){return i.decode(t)},e.getCodeVarint=function(t){var e=a[t];if(void 0===e)throw new Error("Codec `"+t+"` not found");return e},e.getVarint=function(t){return i.encode(t)};var u=r(315);Object.assign(e,u),e.print=r(316)}).call(this,r(1).Buffer)},function(t,e,r){"use strict";t.exports=function t(e,r,i){r=r||[];var o=i=i||0;for(;e>=n;)r[i++]=255&e|128,e/=128;for(;-128&e;)r[i++]=255&e|128,e>>>=7;return r[i]=0|e,t.bytes=i-o+1,r};var n=Math.pow(2,31)},function(t,e,r){"use strict";t.exports=function t(e,r){var n,i=0,o=0,a=r=r||0,s=e.length;do{if(a>=s)throw t.bytes=0,new RangeError("Could not decode varint");n=e[a++],i+=o<28?(127&n)<=128);return t.bytes=a-r,i}},function(t,e,r){"use strict";var n=Math.pow(2,7),i=Math.pow(2,14),o=Math.pow(2,21),a=Math.pow(2,28),s=Math.pow(2,35),u=Math.pow(2,42),f=Math.pow(2,49),c=Math.pow(2,56),h=Math.pow(2,63);t.exports=function(t){return t=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=5;)s+=e[a>>>o-5&31],o-=5;if(o>0&&(s+=e[a<<5-o&31]),i)for(;s.length%8!=0;)s+="=";return s}t.exports=function(t){return{encode:function(e){return o("string"==typeof e?Uint8Array.from(e):e,t)},decode:function(e){var r,i=n(e);try{for(i.s();!(r=i.n()).done;){var o=r.value;if(t.indexOf(o)<0)throw new Error("invalid base32 character")}}catch(t){i.e(t)}finally{i.f()}return function(t,e){for(var r=(t=t.replace(new RegExp("=","g"),"")).length,n=0,i=0,o=0,a=new Uint8Array(5*r/8|0),s=0;s=8&&(a[o++]=i>>>n-8&255,n-=8);return a.buffer}(e,t)}}}},function(t,e,r){"use strict";function n(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return i(t,e)}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r-1,r=t.indexOf("-")>-1&&t.indexOf("_")>-1;return{encode:function(t){var n="";n="string"==typeof t?o.from(t).toString("base64"):t.toString("base64"),r&&(n=n.replace(/\+/g,"-").replace(/\//g,"_"));var i=n.indexOf("=");return i>0&&!e&&(n=n.substring(0,i)),n},decode:function(e){var r,i=n(e);try{for(i.s();!(r=i.n()).done;){var a=r.value;if(t.indexOf(a)<0)throw new Error("invalid base64 character")}}catch(t){i.e(t)}finally{i.f()}return o.from(e,"base64")}}}},function(t,e,r){"use strict";e.names=Object.freeze({identity:0,sha1:17,"sha2-256":18,"sha2-512":19,"dbl-sha2-256":86,"sha3-224":23,"sha3-256":22,"sha3-384":21,"sha3-512":20,"shake-128":24,"shake-256":25,"keccak-224":26,"keccak-256":27,"keccak-384":28,"keccak-512":29,"murmur3-128":34,"murmur3-32":35,md4:212,md5:213,"blake2b-8":45569,"blake2b-16":45570,"blake2b-24":45571,"blake2b-32":45572,"blake2b-40":45573,"blake2b-48":45574,"blake2b-56":45575,"blake2b-64":45576,"blake2b-72":45577,"blake2b-80":45578,"blake2b-88":45579,"blake2b-96":45580,"blake2b-104":45581,"blake2b-112":45582,"blake2b-120":45583,"blake2b-128":45584,"blake2b-136":45585,"blake2b-144":45586,"blake2b-152":45587,"blake2b-160":45588,"blake2b-168":45589,"blake2b-176":45590,"blake2b-184":45591,"blake2b-192":45592,"blake2b-200":45593,"blake2b-208":45594,"blake2b-216":45595,"blake2b-224":45596,"blake2b-232":45597,"blake2b-240":45598,"blake2b-248":45599,"blake2b-256":45600,"blake2b-264":45601,"blake2b-272":45602,"blake2b-280":45603,"blake2b-288":45604,"blake2b-296":45605,"blake2b-304":45606,"blake2b-312":45607,"blake2b-320":45608,"blake2b-328":45609,"blake2b-336":45610,"blake2b-344":45611,"blake2b-352":45612,"blake2b-360":45613,"blake2b-368":45614,"blake2b-376":45615,"blake2b-384":45616,"blake2b-392":45617,"blake2b-400":45618,"blake2b-408":45619,"blake2b-416":45620,"blake2b-424":45621,"blake2b-432":45622,"blake2b-440":45623,"blake2b-448":45624,"blake2b-456":45625,"blake2b-464":45626,"blake2b-472":45627,"blake2b-480":45628,"blake2b-488":45629,"blake2b-496":45630,"blake2b-504":45631,"blake2b-512":45632,"blake2s-8":45633,"blake2s-16":45634,"blake2s-24":45635,"blake2s-32":45636,"blake2s-40":45637,"blake2s-48":45638,"blake2s-56":45639,"blake2s-64":45640,"blake2s-72":45641,"blake2s-80":45642,"blake2s-88":45643,"blake2s-96":45644,"blake2s-104":45645,"blake2s-112":45646,"blake2s-120":45647,"blake2s-128":45648,"blake2s-136":45649,"blake2s-144":45650,"blake2s-152":45651,"blake2s-160":45652,"blake2s-168":45653,"blake2s-176":45654,"blake2s-184":45655,"blake2s-192":45656,"blake2s-200":45657,"blake2s-208":45658,"blake2s-216":45659,"blake2s-224":45660,"blake2s-232":45661,"blake2s-240":45662,"blake2s-248":45663,"blake2s-256":45664,"Skein256-8":45825,"Skein256-16":45826,"Skein256-24":45827,"Skein256-32":45828,"Skein256-40":45829,"Skein256-48":45830,"Skein256-56":45831,"Skein256-64":45832,"Skein256-72":45833,"Skein256-80":45834,"Skein256-88":45835,"Skein256-96":45836,"Skein256-104":45837,"Skein256-112":45838,"Skein256-120":45839,"Skein256-128":45840,"Skein256-136":45841,"Skein256-144":45842,"Skein256-152":45843,"Skein256-160":45844,"Skein256-168":45845,"Skein256-176":45846,"Skein256-184":45847,"Skein256-192":45848,"Skein256-200":45849,"Skein256-208":45850,"Skein256-216":45851,"Skein256-224":45852,"Skein256-232":45853,"Skein256-240":45854,"Skein256-248":45855,"Skein256-256":45856,"Skein512-8":45857,"Skein512-16":45858,"Skein512-24":45859,"Skein512-32":45860,"Skein512-40":45861,"Skein512-48":45862,"Skein512-56":45863,"Skein512-64":45864,"Skein512-72":45865,"Skein512-80":45866,"Skein512-88":45867,"Skein512-96":45868,"Skein512-104":45869,"Skein512-112":45870,"Skein512-120":45871,"Skein512-128":45872,"Skein512-136":45873,"Skein512-144":45874,"Skein512-152":45875,"Skein512-160":45876,"Skein512-168":45877,"Skein512-176":45878,"Skein512-184":45879,"Skein512-192":45880,"Skein512-200":45881,"Skein512-208":45882,"Skein512-216":45883,"Skein512-224":45884,"Skein512-232":45885,"Skein512-240":45886,"Skein512-248":45887,"Skein512-256":45888,"Skein512-264":45889,"Skein512-272":45890,"Skein512-280":45891,"Skein512-288":45892,"Skein512-296":45893,"Skein512-304":45894,"Skein512-312":45895,"Skein512-320":45896,"Skein512-328":45897,"Skein512-336":45898,"Skein512-344":45899,"Skein512-352":45900,"Skein512-360":45901,"Skein512-368":45902,"Skein512-376":45903,"Skein512-384":45904,"Skein512-392":45905,"Skein512-400":45906,"Skein512-408":45907,"Skein512-416":45908,"Skein512-424":45909,"Skein512-432":45910,"Skein512-440":45911,"Skein512-448":45912,"Skein512-456":45913,"Skein512-464":45914,"Skein512-472":45915,"Skein512-480":45916,"Skein512-488":45917,"Skein512-496":45918,"Skein512-504":45919,"Skein512-512":45920,"Skein1024-8":45921,"Skein1024-16":45922,"Skein1024-24":45923,"Skein1024-32":45924,"Skein1024-40":45925,"Skein1024-48":45926,"Skein1024-56":45927,"Skein1024-64":45928,"Skein1024-72":45929,"Skein1024-80":45930,"Skein1024-88":45931,"Skein1024-96":45932,"Skein1024-104":45933,"Skein1024-112":45934,"Skein1024-120":45935,"Skein1024-128":45936,"Skein1024-136":45937,"Skein1024-144":45938,"Skein1024-152":45939,"Skein1024-160":45940,"Skein1024-168":45941,"Skein1024-176":45942,"Skein1024-184":45943,"Skein1024-192":45944,"Skein1024-200":45945,"Skein1024-208":45946,"Skein1024-216":45947,"Skein1024-224":45948,"Skein1024-232":45949,"Skein1024-240":45950,"Skein1024-248":45951,"Skein1024-256":45952,"Skein1024-264":45953,"Skein1024-272":45954,"Skein1024-280":45955,"Skein1024-288":45956,"Skein1024-296":45957,"Skein1024-304":45958,"Skein1024-312":45959,"Skein1024-320":45960,"Skein1024-328":45961,"Skein1024-336":45962,"Skein1024-344":45963,"Skein1024-352":45964,"Skein1024-360":45965,"Skein1024-368":45966,"Skein1024-376":45967,"Skein1024-384":45968,"Skein1024-392":45969,"Skein1024-400":45970,"Skein1024-408":45971,"Skein1024-416":45972,"Skein1024-424":45973,"Skein1024-432":45974,"Skein1024-440":45975,"Skein1024-448":45976,"Skein1024-456":45977,"Skein1024-464":45978,"Skein1024-472":45979,"Skein1024-480":45980,"Skein1024-488":45981,"Skein1024-496":45982,"Skein1024-504":45983,"Skein1024-512":45984,"Skein1024-520":45985,"Skein1024-528":45986,"Skein1024-536":45987,"Skein1024-544":45988,"Skein1024-552":45989,"Skein1024-560":45990,"Skein1024-568":45991,"Skein1024-576":45992,"Skein1024-584":45993,"Skein1024-592":45994,"Skein1024-600":45995,"Skein1024-608":45996,"Skein1024-616":45997,"Skein1024-624":45998,"Skein1024-632":45999,"Skein1024-640":46e3,"Skein1024-648":46001,"Skein1024-656":46002,"Skein1024-664":46003,"Skein1024-672":46004,"Skein1024-680":46005,"Skein1024-688":46006,"Skein1024-696":46007,"Skein1024-704":46008,"Skein1024-712":46009,"Skein1024-720":46010,"Skein1024-728":46011,"Skein1024-736":46012,"Skein1024-744":46013,"Skein1024-752":46014,"Skein1024-760":46015,"Skein1024-768":46016,"Skein1024-776":46017,"Skein1024-784":46018,"Skein1024-792":46019,"Skein1024-800":46020,"Skein1024-808":46021,"Skein1024-816":46022,"Skein1024-824":46023,"Skein1024-832":46024,"Skein1024-840":46025,"Skein1024-848":46026,"Skein1024-856":46027,"Skein1024-864":46028,"Skein1024-872":46029,"Skein1024-880":46030,"Skein1024-888":46031,"Skein1024-896":46032,"Skein1024-904":46033,"Skein1024-912":46034,"Skein1024-920":46035,"Skein1024-928":46036,"Skein1024-936":46037,"Skein1024-944":46038,"Skein1024-952":46039,"Skein1024-960":46040,"Skein1024-968":46041,"Skein1024-976":46042,"Skein1024-984":46043,"Skein1024-992":46044,"Skein1024-1000":46045,"Skein1024-1008":46046,"Skein1024-1016":46047,"Skein1024-1024":46048}),e.codes=Object.freeze({0:"identity",17:"sha1",18:"sha2-256",19:"sha2-512",86:"dbl-sha2-256",23:"sha3-224",22:"sha3-256",21:"sha3-384",20:"sha3-512",24:"shake-128",25:"shake-256",26:"keccak-224",27:"keccak-256",28:"keccak-384",29:"keccak-512",34:"murmur3-128",35:"murmur3-32",212:"md4",213:"md5",45569:"blake2b-8",45570:"blake2b-16",45571:"blake2b-24",45572:"blake2b-32",45573:"blake2b-40",45574:"blake2b-48",45575:"blake2b-56",45576:"blake2b-64",45577:"blake2b-72",45578:"blake2b-80",45579:"blake2b-88",45580:"blake2b-96",45581:"blake2b-104",45582:"blake2b-112",45583:"blake2b-120",45584:"blake2b-128",45585:"blake2b-136",45586:"blake2b-144",45587:"blake2b-152",45588:"blake2b-160",45589:"blake2b-168",45590:"blake2b-176",45591:"blake2b-184",45592:"blake2b-192",45593:"blake2b-200",45594:"blake2b-208",45595:"blake2b-216",45596:"blake2b-224",45597:"blake2b-232",45598:"blake2b-240",45599:"blake2b-248",45600:"blake2b-256",45601:"blake2b-264",45602:"blake2b-272",45603:"blake2b-280",45604:"blake2b-288",45605:"blake2b-296",45606:"blake2b-304",45607:"blake2b-312",45608:"blake2b-320",45609:"blake2b-328",45610:"blake2b-336",45611:"blake2b-344",45612:"blake2b-352",45613:"blake2b-360",45614:"blake2b-368",45615:"blake2b-376",45616:"blake2b-384",45617:"blake2b-392",45618:"blake2b-400",45619:"blake2b-408",45620:"blake2b-416",45621:"blake2b-424",45622:"blake2b-432",45623:"blake2b-440",45624:"blake2b-448",45625:"blake2b-456",45626:"blake2b-464",45627:"blake2b-472",45628:"blake2b-480",45629:"blake2b-488",45630:"blake2b-496",45631:"blake2b-504",45632:"blake2b-512",45633:"blake2s-8",45634:"blake2s-16",45635:"blake2s-24",45636:"blake2s-32",45637:"blake2s-40",45638:"blake2s-48",45639:"blake2s-56",45640:"blake2s-64",45641:"blake2s-72",45642:"blake2s-80",45643:"blake2s-88",45644:"blake2s-96",45645:"blake2s-104",45646:"blake2s-112",45647:"blake2s-120",45648:"blake2s-128",45649:"blake2s-136",45650:"blake2s-144",45651:"blake2s-152",45652:"blake2s-160",45653:"blake2s-168",45654:"blake2s-176",45655:"blake2s-184",45656:"blake2s-192",45657:"blake2s-200",45658:"blake2s-208",45659:"blake2s-216",45660:"blake2s-224",45661:"blake2s-232",45662:"blake2s-240",45663:"blake2s-248",45664:"blake2s-256",45825:"Skein256-8",45826:"Skein256-16",45827:"Skein256-24",45828:"Skein256-32",45829:"Skein256-40",45830:"Skein256-48",45831:"Skein256-56",45832:"Skein256-64",45833:"Skein256-72",45834:"Skein256-80",45835:"Skein256-88",45836:"Skein256-96",45837:"Skein256-104",45838:"Skein256-112",45839:"Skein256-120",45840:"Skein256-128",45841:"Skein256-136",45842:"Skein256-144",45843:"Skein256-152",45844:"Skein256-160",45845:"Skein256-168",45846:"Skein256-176",45847:"Skein256-184",45848:"Skein256-192",45849:"Skein256-200",45850:"Skein256-208",45851:"Skein256-216",45852:"Skein256-224",45853:"Skein256-232",45854:"Skein256-240",45855:"Skein256-248",45856:"Skein256-256",45857:"Skein512-8",45858:"Skein512-16",45859:"Skein512-24",45860:"Skein512-32",45861:"Skein512-40",45862:"Skein512-48",45863:"Skein512-56",45864:"Skein512-64",45865:"Skein512-72",45866:"Skein512-80",45867:"Skein512-88",45868:"Skein512-96",45869:"Skein512-104",45870:"Skein512-112",45871:"Skein512-120",45872:"Skein512-128",45873:"Skein512-136",45874:"Skein512-144",45875:"Skein512-152",45876:"Skein512-160",45877:"Skein512-168",45878:"Skein512-176",45879:"Skein512-184",45880:"Skein512-192",45881:"Skein512-200",45882:"Skein512-208",45883:"Skein512-216",45884:"Skein512-224",45885:"Skein512-232",45886:"Skein512-240",45887:"Skein512-248",45888:"Skein512-256",45889:"Skein512-264",45890:"Skein512-272",45891:"Skein512-280",45892:"Skein512-288",45893:"Skein512-296",45894:"Skein512-304",45895:"Skein512-312",45896:"Skein512-320",45897:"Skein512-328",45898:"Skein512-336",45899:"Skein512-344",45900:"Skein512-352",45901:"Skein512-360",45902:"Skein512-368",45903:"Skein512-376",45904:"Skein512-384",45905:"Skein512-392",45906:"Skein512-400",45907:"Skein512-408",45908:"Skein512-416",45909:"Skein512-424",45910:"Skein512-432",45911:"Skein512-440",45912:"Skein512-448",45913:"Skein512-456",45914:"Skein512-464",45915:"Skein512-472",45916:"Skein512-480",45917:"Skein512-488",45918:"Skein512-496",45919:"Skein512-504",45920:"Skein512-512",45921:"Skein1024-8",45922:"Skein1024-16",45923:"Skein1024-24",45924:"Skein1024-32",45925:"Skein1024-40",45926:"Skein1024-48",45927:"Skein1024-56",45928:"Skein1024-64",45929:"Skein1024-72",45930:"Skein1024-80",45931:"Skein1024-88",45932:"Skein1024-96",45933:"Skein1024-104",45934:"Skein1024-112",45935:"Skein1024-120",45936:"Skein1024-128",45937:"Skein1024-136",45938:"Skein1024-144",45939:"Skein1024-152",45940:"Skein1024-160",45941:"Skein1024-168",45942:"Skein1024-176",45943:"Skein1024-184",45944:"Skein1024-192",45945:"Skein1024-200",45946:"Skein1024-208",45947:"Skein1024-216",45948:"Skein1024-224",45949:"Skein1024-232",45950:"Skein1024-240",45951:"Skein1024-248",45952:"Skein1024-256",45953:"Skein1024-264",45954:"Skein1024-272",45955:"Skein1024-280",45956:"Skein1024-288",45957:"Skein1024-296",45958:"Skein1024-304",45959:"Skein1024-312",45960:"Skein1024-320",45961:"Skein1024-328",45962:"Skein1024-336",45963:"Skein1024-344",45964:"Skein1024-352",45965:"Skein1024-360",45966:"Skein1024-368",45967:"Skein1024-376",45968:"Skein1024-384",45969:"Skein1024-392",45970:"Skein1024-400",45971:"Skein1024-408",45972:"Skein1024-416",45973:"Skein1024-424",45974:"Skein1024-432",45975:"Skein1024-440",45976:"Skein1024-448",45977:"Skein1024-456",45978:"Skein1024-464",45979:"Skein1024-472",45980:"Skein1024-480",45981:"Skein1024-488",45982:"Skein1024-496",45983:"Skein1024-504",45984:"Skein1024-512",45985:"Skein1024-520",45986:"Skein1024-528",45987:"Skein1024-536",45988:"Skein1024-544",45989:"Skein1024-552",45990:"Skein1024-560",45991:"Skein1024-568",45992:"Skein1024-576",45993:"Skein1024-584",45994:"Skein1024-592",45995:"Skein1024-600",45996:"Skein1024-608",45997:"Skein1024-616",45998:"Skein1024-624",45999:"Skein1024-632",46e3:"Skein1024-640",46001:"Skein1024-648",46002:"Skein1024-656",46003:"Skein1024-664",46004:"Skein1024-672",46005:"Skein1024-680",46006:"Skein1024-688",46007:"Skein1024-696",46008:"Skein1024-704",46009:"Skein1024-712",46010:"Skein1024-720",46011:"Skein1024-728",46012:"Skein1024-736",46013:"Skein1024-744",46014:"Skein1024-752",46015:"Skein1024-760",46016:"Skein1024-768",46017:"Skein1024-776",46018:"Skein1024-784",46019:"Skein1024-792",46020:"Skein1024-800",46021:"Skein1024-808",46022:"Skein1024-816",46023:"Skein1024-824",46024:"Skein1024-832",46025:"Skein1024-840",46026:"Skein1024-848",46027:"Skein1024-856",46028:"Skein1024-864",46029:"Skein1024-872",46030:"Skein1024-880",46031:"Skein1024-888",46032:"Skein1024-896",46033:"Skein1024-904",46034:"Skein1024-912",46035:"Skein1024-920",46036:"Skein1024-928",46037:"Skein1024-936",46038:"Skein1024-944",46039:"Skein1024-952",46040:"Skein1024-960",46041:"Skein1024-968",46042:"Skein1024-976",46043:"Skein1024-984",46044:"Skein1024-992",46045:"Skein1024-1000",46046:"Skein1024-1008",46047:"Skein1024-1016",46048:"Skein1024-1024"}),e.defaultLengths=Object.freeze({17:20,18:32,19:64,86:32,23:28,22:32,21:48,20:64,24:32,25:64,26:28,27:32,28:48,29:64,34:32,45569:1,45570:2,45571:3,45572:4,45573:5,45574:6,45575:7,45576:8,45577:9,45578:10,45579:11,45580:12,45581:13,45582:14,45583:15,45584:16,45585:17,45586:18,45587:19,45588:20,45589:21,45590:22,45591:23,45592:24,45593:25,45594:26,45595:27,45596:28,45597:29,45598:30,45599:31,45600:32,45601:33,45602:34,45603:35,45604:36,45605:37,45606:38,45607:39,45608:40,45609:41,45610:42,45611:43,45612:44,45613:45,45614:46,45615:47,45616:48,45617:49,45618:50,45619:51,45620:52,45621:53,45622:54,45623:55,45624:56,45625:57,45626:58,45627:59,45628:60,45629:61,45630:62,45631:63,45632:64,45633:1,45634:2,45635:3,45636:4,45637:5,45638:6,45639:7,45640:8,45641:9,45642:10,45643:11,45644:12,45645:13,45646:14,45647:15,45648:16,45649:17,45650:18,45651:19,45652:20,45653:21,45654:22,45655:23,45656:24,45657:25,45658:26,45659:27,45660:28,45661:29,45662:30,45663:31,45664:32,45825:1,45826:2,45827:3,45828:4,45829:5,45830:6,45831:7,45832:8,45833:9,45834:10,45835:11,45836:12,45837:13,45838:14,45839:15,45840:16,45841:17,45842:18,45843:19,45844:20,45845:21,45846:22,45847:23,45848:24,45849:25,45850:26,45851:27,45852:28,45853:29,45854:30,45855:31,45856:32,45857:1,45858:2,45859:3,45860:4,45861:5,45862:6,45863:7,45864:8,45865:9,45866:10,45867:11,45868:12,45869:13,45870:14,45871:15,45872:16,45873:17,45874:18,45875:19,45876:20,45877:21,45878:22,45879:23,45880:24,45881:25,45882:26,45883:27,45884:28,45885:29,45886:30,45887:31,45888:32,45889:33,45890:34,45891:35,45892:36,45893:37,45894:38,45895:39,45896:40,45897:41,45898:42,45899:43,45900:44,45901:45,45902:46,45903:47,45904:48,45905:49,45906:50,45907:51,45908:52,45909:53,45910:54,45911:55,45912:56,45913:57,45914:58,45915:59,45916:60,45917:61,45918:62,45919:63,45920:64,45921:1,45922:2,45923:3,45924:4,45925:5,45926:6,45927:7,45928:8,45929:9,45930:10,45931:11,45932:12,45933:13,45934:14,45935:15,45936:16,45937:17,45938:18,45939:19,45940:20,45941:21,45942:22,45943:23,45944:24,45945:25,45946:26,45947:27,45948:28,45949:29,45950:30,45951:31,45952:32,45953:33,45954:34,45955:35,45956:36,45957:37,45958:38,45959:39,45960:40,45961:41,45962:42,45963:43,45964:44,45965:45,45966:46,45967:47,45968:48,45969:49,45970:50,45971:51,45972:52,45973:53,45974:54,45975:55,45976:56,45977:57,45978:58,45979:59,45980:60,45981:61,45982:62,45983:63,45984:64,45985:65,45986:66,45987:67,45988:68,45989:69,45990:70,45991:71,45992:72,45993:73,45994:74,45995:75,45996:76,45997:77,45998:78,45999:79,46e3:80,46001:81,46002:82,46003:83,46004:84,46005:85,46006:86,46007:87,46008:88,46009:89,46010:90,46011:91,46012:92,46013:93,46014:94,46015:95,46016:96,46017:97,46018:98,46019:99,46020:100,46021:101,46022:102,46023:103,46024:104,46025:105,46026:106,46027:107,46028:108,46029:109,46030:110,46031:111,46032:112,46033:113,46034:114,46035:115,46036:116,46037:117,46038:118,46039:119,46040:120,46041:121,46042:122,46043:123,46044:124,46045:125,46046:126,46047:127,46048:128})},function(t,e,r){"use strict";var n=r(1).Buffer,i=r(326);(e=t.exports=a).encode=function(t,e){var r=s(t);return a(r.name,n.from(r.encode(e)))},e.decode=function(t){n.isBuffer(t)&&(t=t.toString());var e=t.substring(0,1);"string"==typeof(t=t.substring(1,t.length))&&(t=n.from(t));var r=s(e);return n.from(r.decode(t.toString()))},e.isEncoded=function(t){n.isBuffer(t)&&(t=t.toString());if("[object String]"!==Object.prototype.toString.call(t))return!1;var e=t.substring(0,1);try{return s(e).name}catch(t){return!1}},e.names=Object.freeze(Object.keys(i.names)),e.codes=Object.freeze(Object.keys(i.codes));var o=new Error("Unsupported encoding");function a(t,e){if(!e)throw new Error("requires an encoded buffer");var r=s(t),i=n.from(r.code);return function(t,e){s(t).decode(e.toString())}(r.name,e),n.concat([i,e])}function s(t){var e;if(i.names[t])e=i.names[t];else{if(!i.codes[t])throw o;e=i.codes[t]}if(!e.isImplemented())throw new Error("Base "+t+" is not implemented yet");return e}},function(t,e,r){"use strict";var n=r(327),i=r(147),o=r(328),a=r(329),s=r(330),u=[["base1","1","","1"],["base2","0",i,"01"],["base8","7",i,"01234567"],["base10","9",i,"0123456789"],["base16","f",o,"0123456789abcdef"],["base32","b",a,"abcdefghijklmnopqrstuvwxyz234567"],["base32pad","c",a,"abcdefghijklmnopqrstuvwxyz234567="],["base32hex","v",a,"0123456789abcdefghijklmnopqrstuv"],["base32hexpad","t",a,"0123456789abcdefghijklmnopqrstuv="],["base32z","h",a,"ybndrfg8ejkmcpqxot1uwisza345h769"],["base58flickr","Z",i,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base58btc","z",i,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base64","m",s,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",s,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",s,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",s,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],f=u.reduce((function(t,e){return t[e[0]]=new n(e[0],e[1],e[2],e[3]),t}),{}),c=u.reduce((function(t,e){return t[e[1]]=f[e[0]],t}),{});t.exports={names:f,codes:c}},function(t,e,r){"use strict";var n=r(0),i=n(r(5)),o=n(r(9)),a=function(){function t(e,r,n,o){(0,i.default)(this,t),this.name=e,this.code=r,this.alphabet=o,n&&o&&(this.engine=n(o))}return(0,o.default)(t,[{key:"encode",value:function(t){return this.engine.encode(t)}},{key:"decode",value:function(t){return this.engine.decode(t)}},{key:"isImplemented",value:function(){return this.engine}}]),t}();t.exports=a},function(t,e,r){"use strict";function n(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return i(t,e)}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=5;)s+=e[a>>>o-5&31],o-=5;if(o>0&&(s+=e[a<<5-o&31]),i)for(;s.length%8!=0;)s+="=";return s}t.exports=function(t){return{encode:function(e){return o("string"==typeof e?Uint8Array.from(e):e,t)},decode:function(e){var r,i=n(e);try{for(i.s();!(r=i.n()).done;){var o=r.value;if(t.indexOf(o)<0)throw new Error("invalid base32 character")}}catch(t){i.e(t)}finally{i.f()}return function(t,e){for(var r=(t=t.replace(new RegExp("=","g"),"")).length,n=0,i=0,o=0,a=new Uint8Array(5*r/8|0),s=0;s=8&&(a[o++]=i>>>n-8&255,n-=8);return a.buffer}(e,t)}}}},function(t,e,r){"use strict";function n(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return i(t,e)}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r-1,r=t.indexOf("-")>-1&&t.indexOf("_")>-1;return{encode:function(t){var n="";n="string"==typeof t?o.from(t).toString("base64"):t.toString("base64"),r&&(n=n.replace(/\+/g,"-").replace(/\//g,"_"));var i=n.indexOf("=");return i>0&&!e&&(n=n.substring(0,i)),n},decode:function(e){var r,i=n(e);try{for(i.s();!(r=i.n()).done;){var a=r.value;if(t.indexOf(a)<0)throw new Error("invalid base64 character")}}catch(t){i.e(t)}finally{i.f()}return o.from(e,"base64")}}}},function(t,e,r){"use strict";var n=r(1).Buffer,i=r(51),o=r(332),a=r(333),s=r(148);(e=t.exports).addPrefix=function(t,e){var r;if(n.isBuffer(t))r=s.varintBufferEncode(t);else{if(!a[t])throw new Error("multicodec not recognized");r=a[t]}return n.concat([r,e])},e.rmPrefix=function(t){return i.decode(t),t.slice(i.decode.bytes)},e.getCodec=function(t){var e=i.decode(t),r=o.get(e);if(void 0===r)throw new Error("Code ".concat(e," not found"));return r},e.getName=function(t){return o.get(t)},e.getNumber=function(t){var e=a[t];if(void 0===e)throw new Error("Codec `"+t+"` not found");return s.varintBufferDecode(e)[0]},e.getCode=function(t){return i.decode(t)},e.getCodeVarint=function(t){var e=a[t];if(void 0===e)throw new Error("Codec `"+t+"` not found");return e},e.getVarint=function(t){return i.encode(t)};var u=r(334);Object.assign(e,u),e.print=r(335)},function(t,e,r){"use strict";var n=r(52),i=new Map;for(var o in n){var a=n[o];i.set(a,o)}t.exports=Object.freeze(i)},function(t,e,r){"use strict";var n=r(52),i=r(148).varintEncode,o={};for(var a in n){var s=n[a];o[a]=i(s)}t.exports=Object.freeze(o)},function(t,e,r){"use strict";for(var n=r(0)(r(31)),i=r(52),o={},a=0,s=Object.entries(i);a=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){s=!0,o=t},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}function l(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r0){var c,l="Signer Error: ",d=h(f);try{for(d.s();!(c=d.n()).done;){var p=c.value;l+="".concat(l," ").concat(p,".")}}catch(t){d.e(t)}finally{d.f()}throw new Error(l)}var m="0x"+u.serialize().toString("hex"),b=w.keccak256(m),v={messageHash:"0x"+n.from(u.getMessageToSign(!0)).toString("hex"),v:"0x"+n.from(u.v).toString("hex"),r:"0x"+n.from(u.r).toString("hex"),s:"0x"+n.from(u.s).toString("hex"),rawTransaction:m,transactionHash:b};return r(null,v),v}catch(t){return r(t),Promise.reject(t)}}return t.type=function(t){var e,r=void 0!==t.maxFeePerGas||void 0!==t.maxPriorityFeePerGas;void 0!==t.type?e=w.toHex(t.type):void 0===t.type&&r&&(e="0x2");if(void 0!==t.gasPrice&&("0x2"===e||r))throw Error("eip-1559 transactions don't support gasPrice");if(("0x1"===e||"0x0"===e)&&r)throw Error("pre-eip-1559 transaction don't support maxFeePerGas/maxPriorityFeePerGas");r||t.common&&t.common.hardfork&&t.common.hardfork.toLowerCase()===S.London||t.hardfork&&t.hardfork.toLowerCase()===S.London?e="0x2":(t.accessList||t.common&&t.common.hardfork&&t.common.hardfork.toLowerCase()===S.Berlin||t.hardfork&&t.hardfork.toLowerCase()===S.Berlin)&&(e="0x1");return e}(t),void 0!==t.nonce&&void 0!==t.chainId&&(void 0!==t.gasPrice||void 0!==t.maxFeePerGas&&void 0!==t.maxPriorityFeePerGas)&&a?Promise.resolve(s(t)):Promise.all([A(t.chainId)?this._ethereumCall.getChainId():t.chainId,A(t.nonce)?this._ethereumCall.getTransactionCount(this.privateKeyToAccount(e).address):t.nonce,A(a)?this._ethereumCall.getNetworkId():1,E(this,t)]).then((function(e){if(A(e[0])||A(e[1])||A(e[2])||A(e[3]))throw new Error('One of the values "chainId", "networkId", "gasPrice", or "nonce" couldn\'t be fetched: '+JSON.stringify(e));return s(c(c({},t),{},{chainId:e[0],nonce:e[1],networkId:e[2]},e[3]))}))},x.prototype.recoverTransaction=function(t){var e=n.from(t.slice(2),"hex"),r=k.fromSerializedData(e);return w.toChecksumAddress(r.getSenderAddress().toString("hex"))},x.prototype.hashMessage=function(t){var e=w.isHexStrict(t)?t:w.utf8ToHex(t),r=w.hexToBytes(e),i=n.from(r),o="Ethereum Signed Message:\n"+r.length,a=n.from(o),s=n.concat([a,i]);return b.keccak256s(s)},x.prototype.sign=function(t,e){if(e.startsWith("0x")||(e="0x"+e),66!==e.length)throw new Error("Private key must be 32 bytes long");var r=this.hashMessage(t),n=m.sign(r,e),i=m.decodeSignature(n);return{message:t,messageHash:r,v:i[0],r:i[1],s:i[2],signature:n}},x.prototype.recover=function(t,e,r){var n=[].slice.apply(arguments);return t&&"object"===(0,a.default)(t)?this.recover(t.messageHash,m.encodeSignature([t.v,t.r,t.s]),!0):(r||(t=this.hashMessage(t)),n.length>=4?(r="boolean"==typeof(r=n.slice(-1)[0])&&!!r,this.recover(t,m.encodeSignature(n.slice(1,4)),r)):m.recover(t,e))},x.prototype.decrypt=function(t,e,r){if("string"!=typeof e)throw new Error("No password given.");var i,s,u=t&&"object"===(0,a.default)(t)?t:JSON.parse(r?t.toLowerCase():t);if(3!==u.version)throw new Error("Not a valid V3 wallet");if("scrypt"===u.crypto.kdf)s=u.crypto.kdfparams,i=y.syncScrypt(n.from(e),n.from(s.salt,"hex"),s.n,s.r,s.p,s.dklen);else{if("pbkdf2"!==u.crypto.kdf)throw new Error("Unsupported key derivation scheme");if("hmac-sha256"!==(s=u.crypto.kdfparams).prf)throw new Error("Unsupported parameters to PBKDF2");i=v.pbkdf2Sync(n.from(e),n.from(s.salt,"hex"),s.c,s.dklen,"sha256")}var f=n.from(u.crypto.ciphertext,"hex");if(w.sha3(n.from([].concat((0,o.default)(i.slice(16,32)),(0,o.default)(f)))).replace("0x","")!==u.crypto.mac)throw new Error("Key derivation failed - possibly wrong password");var c=v.createDecipheriv(u.crypto.cipher,i.slice(0,16),n.from(u.crypto.cipherparams.iv,"hex")),h="0x"+n.from([].concat((0,o.default)(c.update(f)),(0,o.default)(c.final()))).toString("hex");return this.privateKeyToAccount(h,!0)},x.prototype.encrypt=function(t,e,r){var i,a=this.privateKeyToAccount(t,!0),s=(r=r||{}).salt||v.randomBytes(32),u=r.iv||v.randomBytes(16),f=r.kdf||"scrypt",c={dklen:r.dklen||32,salt:s.toString("hex")};if("pbkdf2"===f)c.c=r.c||262144,c.prf="hmac-sha256",i=v.pbkdf2Sync(n.from(e),n.from(c.salt,"hex"),c.c,c.dklen,"sha256");else{if("scrypt"!==f)throw new Error("Unsupported kdf");c.n=r.n||8192,c.r=r.r||8,c.p=r.p||1,i=y.syncScrypt(n.from(e),n.from(c.salt,"hex"),c.n,c.r,c.p,c.dklen)}var h=v.createCipheriv(r.cipher||"aes-128-ctr",i.slice(0,16),u);if(!h)throw new Error("Unsupported cipher");var l=n.from([].concat((0,o.default)(h.update(n.from(a.privateKey.replace("0x",""),"hex"))),(0,o.default)(h.final()))),d=w.sha3(n.from([].concat((0,o.default)(i.slice(16,32)),(0,o.default)(l)))).replace("0x","");return{version:3,id:g.v4({random:r.uuid||v.randomBytes(16)}),address:a.address.toLowerCase().replace("0x",""),crypto:{ciphertext:l.toString("hex"),cipherparams:{iv:u.toString("hex")},cipher:r.cipher||"aes-128-ctr",kdf:f,kdfparams:c,mac:d.toString("hex")}}},O.prototype._findSafeIndex=function(t){return t=t||0,this.hasOwnProperty(t)?this._findSafeIndex(t+1):t},O.prototype._currentIndexes=function(){return Object.keys(this).map((function(t){return parseInt(t)})).filter((function(t){return t<9e20}))},O.prototype.create=function(t,e){for(var r=0;r7?t[n+2].toUpperCase():t[n+2];return r},l=function(t){var r=new e(t.slice(2),"hex"),n="0x"+s.keyFromPrivate(r).getPublic(!1,"hex").slice(2),i=f(n);return{address:h("0x"+i.slice(-40)),privateKey:t}},d=function(t){var e=(0,n.default)(t,3),r=e[0],o=e[1],a=e[2];return i.flatten([o,a,r])},p=function(t){return[i.slice(64,i.length(t),t),i.slice(0,32,t),i.slice(32,64,t)]},m=function(t){return function(r,n){var a=s.keyFromPrivate(new e(n.slice(2),"hex")).sign(new e(r.slice(2),"hex"),{canonical:!0});return d([o.fromString(i.fromNumber(t+a.recoveryParam)),i.pad(32,i.fromNat("0x"+a.r.toString(16))),i.pad(32,i.fromNat("0x"+a.s.toString(16)))])}},b=m(27);t.exports={create:function(t){var e=f(i.concat(i.random(32),t||i.random(32))),r=i.concat(i.concat(i.random(32),e),i.random(32)),n=f(r);return l(n)},toChecksum:h,fromPrivate:l,sign:b,makeSigner:m,recover:function(t,r){var n=p(r),o={v:i.toNumber(n[0]),r:n[1].slice(2),s:n[2].slice(2)},a="0x"+s.recoverPubKey(new e(t.slice(2),"hex"),o,o.v<2?o.v:1-o.v%2).encode("hex",!1).slice(2),u=f(a);return h("0x"+u.slice(-40))},encodeSignature:d,decodeSignature:p}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n=function(t,e){for(var r=[],n=0;n */var n=r(1),i=n.Buffer;function o(t,e){for(var r in t)e[r]=t[r]}function a(t,e,r){return i(t,e,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=n:(o(n,e),e.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,r)},a.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var n=i(t);return void 0!==e?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n.SlowBuffer(t)}},function(t,e,r){"use strict";(e=t.exports=r(152)).Stream=e,e.Readable=e,e.Writable=r(156),e.Duplex=r(38),e.Transform=r(157),e.PassThrough=r(355),e.finished=r(84),e.pipeline=r(356)},function(t,e){},function(t,e,r){"use strict";function n(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function o(t,e){for(var r=0;r0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r}},{key:"concat",value:function(t){if(0===this.length)return a.alloc(0);for(var e,r,n,i=a.allocUnsafe(t>>>0),o=this.head,s=0;o;)e=o.data,r=i,n=s,a.prototype.copy.call(e,r,n),s+=o.data.length,o=o.next;return i}},{key:"consume",value:function(t,e){var r;return ti.length?i.length:t;if(o===i.length?n+=i:n+=i.slice(0,t),0==(t-=o)){o===i.length?(++r,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(t){var e=a.allocUnsafe(t),r=this.head,n=1;for(r.data.copy(e),t-=r.data.length;r=r.next;){var i=r.data,o=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,o),0==(t-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,e}},{key:u,value:function(t,e){return s(this,function(t){for(var e=1;e0,(function(t){n||(n=t),t&&a.forEach(f),o||(a.forEach(f),i(n))}))}));return e.reduce(c)}},function(t,e,r){"use strict";var n=r(3),i=r(39),o=r(4).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function u(){this.init(),this._w=s,i.call(this,64,56)}function f(t){return t<<30|t>>>2}function c(t,e,r,n){return 0===t?e&r|~e&n:2===t?e&r|e&n|r&n:e^r^n}n(u,i),u.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},u.prototype._update=function(t){for(var e,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,h=0;h<16;++h)r[h]=t.readInt32BE(4*h);for(;h<80;++h)r[h]=r[h-3]^r[h-8]^r[h-14]^r[h-16];for(var l=0;l<80;++l){var d=~~(l/20),p=0|((e=n)<<5|e>>>27)+c(d,i,o,s)+u+r[l]+a[d];u=s,s=o,o=f(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0},u.prototype._hash=function(){var t=o.allocUnsafe(20);return t.writeInt32BE(0|this._a,0),t.writeInt32BE(0|this._b,4),t.writeInt32BE(0|this._c,8),t.writeInt32BE(0|this._d,12),t.writeInt32BE(0|this._e,16),t},t.exports=u},function(t,e,r){"use strict";var n=r(3),i=r(39),o=r(4).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function u(){this.init(),this._w=s,i.call(this,64,56)}function f(t){return t<<5|t>>>27}function c(t){return t<<30|t>>>2}function h(t,e,r,n){return 0===t?e&r|~e&n:2===t?e&r|e&n|r&n:e^r^n}n(u,i),u.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},u.prototype._update=function(t){for(var e,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,l=0;l<16;++l)r[l]=t.readInt32BE(4*l);for(;l<80;++l)r[l]=(e=r[l-3]^r[l-8]^r[l-14]^r[l-16])<<1|e>>>31;for(var d=0;d<80;++d){var p=~~(d/20),m=f(n)+h(p,i,o,s)+u+r[d]+a[p]|0;u=s,s=o,o=c(i),i=n,n=m}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0},u.prototype._hash=function(){var t=o.allocUnsafe(20);return t.writeInt32BE(0|this._a,0),t.writeInt32BE(0|this._b,4),t.writeInt32BE(0|this._c,8),t.writeInt32BE(0|this._d,12),t.writeInt32BE(0|this._e,16),t},t.exports=u},function(t,e,r){"use strict";var n=r(3),i=r(158),o=r(39),a=r(4).Buffer,s=new Array(64);function u(){this.init(),this._w=s,o.call(this,64,56)}n(u,i),u.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},u.prototype._hash=function(){var t=a.allocUnsafe(28);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t},t.exports=u},function(t,e,r){"use strict";var n=r(3),i=r(159),o=r(39),a=r(4).Buffer,s=new Array(160);function u(){this.init(),this._w=s,o.call(this,128,112)}n(u,i),u.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},u.prototype._hash=function(){var t=a.allocUnsafe(48);function e(e,r,n){t.writeInt32BE(e,n),t.writeInt32BE(r,n+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),t},t.exports=u},function(t,e,r){"use strict";t.exports=r(75)},function(t,e,r){"use strict";t.exports=r(28)},function(t,e,r){"use strict";t.exports=r(46).Transform},function(t,e,r){"use strict";t.exports=r(46).PassThrough},function(t,e,r){"use strict";var n=r(3),i=r(4).Buffer,o=r(25),a=i.alloc(128);function s(t,e){o.call(this,"digest"),"string"==typeof e&&(e=i.from(e)),this._alg=t,this._key=e,e.length>64?e=t(e):e.length<64&&(e=i.concat([e,a],64));for(var r=this._ipad=i.allocUnsafe(64),n=this._opad=i.allocUnsafe(64),s=0;s<64;s++)r[s]=54^e[s],n[s]=92^e[s];this._hash=[r]}n(s,o),s.prototype._update=function(t){this._hash.push(t)},s.prototype._final=function(){var t=this._alg(i.concat(this._hash));return this._alg(i.concat([this._opad,t]))},t.exports=s},function(t,e,r){"use strict";t.exports=r(162)},function(t,e,r){"use strict";(function(e){var n,i,o=r(4).Buffer,a=r(164),s=r(165),u=r(166),f=r(167),c=e.crypto&&e.crypto.subtle,h={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},l=[];function d(){return i||(i=e.process&&e.process.nextTick?e.process.nextTick:e.queueMicrotask?e.queueMicrotask:e.setImmediate?e.setImmediate:e.setTimeout)}function p(t,e,r,n,i){return c.importKey("raw",t,{name:"PBKDF2"},!1,["deriveBits"]).then((function(t){return c.deriveBits({name:"PBKDF2",salt:e,iterations:r,hash:{name:i}},t,n<<3)})).then((function(t){return o.from(t)}))}t.exports=function(t,r,i,m,b,v){"function"==typeof b&&(v=b,b=void 0);var y=h[(b=b||"sha1").toLowerCase()];if(y&&"function"==typeof e.Promise){if(a(i,m),t=f(t,s,"Password"),r=f(r,s,"Salt"),"function"!=typeof v)throw new Error("No callback provided to pbkdf2");!function(t,e){t.then((function(t){d()((function(){e(null,t)}))}),(function(t){d()((function(){e(t)}))}))}(function(t){if(e.process&&!e.process.browser)return Promise.resolve(!1);if(!c||!c.importKey||!c.deriveBits)return Promise.resolve(!1);if(void 0!==l[t])return l[t];var r=p(n=n||o.alloc(8),n,10,128,t).then((function(){return!0})).catch((function(){return!1}));return l[t]=r,r}(y).then((function(e){return e?p(t,r,i,m,y):u(t,r,i,m,b)})),v)}else d()((function(){var e;try{e=u(t,r,i,m,b)}catch(t){return v(t)}v(null,e)}))}}).call(this,r(7))},function(t,e,r){"use strict";var n=r(369),i=r(89),o=r(90),a=r(382),s=r(66);function u(t,e,r){if(t=t.toLowerCase(),o[t])return i.createCipheriv(t,e,r);if(a[t])return new n({key:e,iv:r,mode:t});throw new TypeError("invalid suite type")}function f(t,e,r){if(t=t.toLowerCase(),o[t])return i.createDecipheriv(t,e,r);if(a[t])return new n({key:e,iv:r,mode:t,decrypt:!0});throw new TypeError("invalid suite type")}e.createCipher=e.Cipher=function(t,e){var r,n;if(t=t.toLowerCase(),o[t])r=o[t].key,n=o[t].iv;else{if(!a[t])throw new TypeError("invalid suite type");r=8*a[t].key,n=a[t].iv}var i=s(e,!1,r,n);return u(t,i.key,i.iv)},e.createCipheriv=e.Cipheriv=u,e.createDecipher=e.Decipher=function(t,e){var r,n;if(t=t.toLowerCase(),o[t])r=o[t].key,n=o[t].iv;else{if(!a[t])throw new TypeError("invalid suite type");r=8*a[t].key,n=a[t].iv}var i=s(e,!1,r,n);return f(t,i.key,i.iv)},e.createDecipheriv=e.Decipheriv=f,e.listCiphers=e.getCiphers=function(){return Object.keys(a).concat(i.getCiphers())}},function(t,e,r){"use strict";var n=r(25),i=r(370),o=r(3),a=r(4).Buffer,s={"des-ede3-cbc":i.CBC.instantiate(i.EDE),"des-ede3":i.EDE,"des-ede-cbc":i.CBC.instantiate(i.EDE),"des-ede":i.EDE,"des-cbc":i.CBC.instantiate(i.DES),"des-ecb":i.DES};function u(t){n.call(this);var e,r=t.mode.toLowerCase(),i=s[r];e=t.decrypt?"decrypt":"encrypt";var o=t.key;a.isBuffer(o)||(o=a.from(o)),"des-ede"!==r&&"des-ede-cbc"!==r||(o=a.concat([o,o.slice(0,8)]));var u=t.iv;a.isBuffer(u)||(u=a.from(u)),this._des=i.create({key:o,iv:u,type:e})}s.des=s["des-cbc"],s.des3=s["des-ede3-cbc"],t.exports=u,o(u,n),u.prototype._update=function(t){return a.from(this._des.update(t))},u.prototype._final=function(){return a.from(this._des.final())}},function(t,e,r){"use strict";e.utils=r(168),e.Cipher=r(88),e.DES=r(169),e.CBC=r(371),e.EDE=r(372)},function(t,e,r){"use strict";var n=r(18),i=r(3),o={};function a(t){n.equal(t.length,8,"Invalid IV length"),this.iv=new Array(8);for(var e=0;e15){var t=this.cache.slice(0,16);return this.cache=this.cache.slice(16),t}return null},l.prototype.flush=function(){for(var t=16-this.cache.length,e=o.allocUnsafe(t),r=-1;++r>a%8,t._prev=o(t._prev,r?n:i);return s}function o(t,e){var r=t.length,i=-1,o=n.allocUnsafe(t.length);for(t=n.concat([t,n.from([e])]);++i>7;return o}e.encrypt=function(t,e,r){for(var o=e.length,a=n.allocUnsafe(o),s=-1;++s>>0,0),e.writeUInt32BE(t[1]>>>0,4),e.writeUInt32BE(t[2]>>>0,8),e.writeUInt32BE(t[3]>>>0,12),e}function a(t){this.h=t,this.state=n.alloc(16,0),this.cache=n.allocUnsafe(0)}a.prototype.ghash=function(t){for(var e=-1;++e0;e--)n[e]=n[e]>>>1|(1&n[e-1])<<31;n[0]=n[0]>>>1,r&&(n[0]=n[0]^225<<24)}this.state=o(i)},a.prototype.update=function(t){var e;for(this.cache=n.concat([this.cache,t]);this.cache.length>=16;)e=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(e)},a.prototype.final=function(t,e){return this.cache.length&&this.ghash(n.concat([this.cache,i],16)),this.ghash(o([0,t,0,e])),this.state},t.exports=a},function(t,e,r){"use strict";var n=r(173),i=r(4).Buffer,o=r(90),a=r(174),s=r(25),u=r(65),f=r(66);function c(t,e,r){s.call(this),this._cache=new h,this._last=void 0,this._cipher=new u.AES(e),this._prev=i.from(r),this._mode=t,this._autopadding=!0}function h(){this.cache=i.allocUnsafe(0)}function l(t,e,r){var s=o[t.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof r&&(r=i.from(r)),"GCM"!==s.mode&&r.length!==s.iv)throw new TypeError("invalid iv length "+r.length);if("string"==typeof e&&(e=i.from(e)),e.length!==s.key/8)throw new TypeError("invalid key length "+e.length);return"stream"===s.type?new a(s.module,e,r,!0):"auth"===s.type?new n(s.module,e,r,!0):new c(s.module,e,r)}r(3)(c,s),c.prototype._update=function(t){var e,r;this._cache.add(t);for(var n=[];e=this._cache.get(this._autopadding);)r=this._mode.decrypt(this,e),n.push(r);return i.concat(n)},c.prototype._final=function(){var t=this._cache.flush();if(this._autopadding)return function(t){var e=t[15];if(e<1||e>16)throw new Error("unable to decrypt data");var r=-1;for(;++r16)return e=this.cache.slice(0,16),this.cache=this.cache.slice(16),e}else if(this.cache.length>=16)return e=this.cache.slice(0,16),this.cache=this.cache.slice(16),e;return null},h.prototype.flush=function(){if(this.cache.length)return this.cache},e.createDecipher=function(t,e){var r=o[t.toLowerCase()];if(!r)throw new TypeError("invalid suite type");var n=f(e,!1,r.key,r.iv);return l(t,n.key,n.iv)},e.createDecipheriv=l},function(t,e,r){"use strict";e["des-ecb"]={key:8,iv:0},e["des-cbc"]=e.des={key:8,iv:8},e["des-ede3-cbc"]=e.des3={key:24,iv:8},e["des-ede3"]={key:24,iv:0},e["des-ede-cbc"]={key:16,iv:8},e["des-ede"]={key:16,iv:0}},function(t,e,r){"use strict";(function(t){var n=r(175),i=r(385),o=r(386);var a={binary:!0,hex:!0,base64:!0};e.DiffieHellmanGroup=e.createDiffieHellmanGroup=e.getDiffieHellman=function(e){var r=new t(i[e].prime,"hex"),n=new t(i[e].gen,"hex");return new o(r,n)},e.createDiffieHellman=e.DiffieHellman=function e(r,i,s,u){return t.isBuffer(i)||void 0===a[i]?e(r,"binary",i,s):(i=i||"binary",u=u||"binary",s=s||new t([2]),t.isBuffer(s)||(s=new t(s,u)),"number"==typeof r?new o(n(r,s),s,!0):(t.isBuffer(r)||(r=new t(r,i)),new o(r,s,!0)))}}).call(this,r(1).Buffer)},function(t,e){},function(t){t.exports=JSON.parse('{"modp1":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},"modp2":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},"modp5":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},"modp14":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},"modp15":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},"modp16":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},"modp17":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},"modp18":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}')},function(t,e,r){"use strict";(function(e){var n=r(8),i=new(r(176)),o=new n(24),a=new n(11),s=new n(10),u=new n(3),f=new n(7),c=r(175),h=r(22);function l(t,r){return r=r||"utf8",e.isBuffer(t)||(t=new e(t,r)),this._pub=new n(t),this}function d(t,r){return r=r||"utf8",e.isBuffer(t)||(t=new e(t,r)),this._priv=new n(t),this}t.exports=m;var p={};function m(t,e,r){this.setGenerator(e),this.__prime=new n(t),this._prime=n.mont(this.__prime),this._primeLen=t.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,r?(this.setPublicKey=l,this.setPrivateKey=d):this._primeCode=8}function b(t,r){var n=new e(t.toArray());return r?n.toString(r):n}Object.defineProperty(m.prototype,"verifyError",{enumerable:!0,get:function(){return"number"!=typeof this._primeCode&&(this._primeCode=function(t,e){var r=e.toString("hex"),n=[r,t.toString(16)].join("_");if(n in p)return p[n];var h,l=0;if(t.isEven()||!c.simpleSieve||!c.fermatTest(t)||!i.test(t))return l+=1,l+="02"===r||"05"===r?8:4,p[n]=l,l;switch(i.test(t.shrn(1))||(l+=2),r){case"02":t.mod(o).cmp(a)&&(l+=8);break;case"05":(h=t.mod(s)).cmp(u)&&h.cmp(f)&&(l+=8);break;default:l+=4}return p[n]=l,l}(this.__prime,this.__gen)),this._primeCode}}),m.prototype.generateKeys=function(){return this._priv||(this._priv=new n(h(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},m.prototype.computeSecret=function(t){var r=(t=(t=new n(t)).toRed(this._prime)).redPow(this._priv).fromRed(),i=new e(r.toArray()),o=this.getPrime();if(i.length0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r}},{key:"concat",value:function(t){if(0===this.length)return a.alloc(0);for(var e,r,n,i=a.allocUnsafe(t>>>0),o=this.head,s=0;o;)e=o.data,r=i,n=s,a.prototype.copy.call(e,r,n),s+=o.data.length,o=o.next;return i}},{key:"consume",value:function(t,e){var r;return ti.length?i.length:t;if(o===i.length?n+=i:n+=i.slice(0,t),0==(t-=o)){o===i.length?(++r,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(t){var e=a.allocUnsafe(t),r=this.head,n=1;for(r.data.copy(e),t-=r.data.length;r=r.next;){var i=r.data,o=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,o),0==(t-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,e}},{key:u,value:function(t,e){return s(this,function(t){for(var e=1;e0,(function(t){n||(n=t),t&&a.forEach(f),o||(a.forEach(f),i(n))}))}));return e.reduce(c)}},function(t,e,r){"use strict";var n=r(92).Buffer,i=r(160),o=r(94),a=r(54).ec,s=r(185),u=r(68),f=r(191);function c(t,e,r,o){if((t=n.from(t.toArray())).length0&&r.ishrn(n),r}function l(t,e,r){var o,a;do{for(o=n.alloc(0);8*o.length=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void i(!1,"Invalid character in "+t)}function f(t,e,r){var n=u(t,r);return r-1>=e&&(n|=u(t,r-1)<<4),n}function c(t,e,r,n){for(var o=0,a=0,s=Math.min(t.length,r),u=e;u=49?f-49+10:f>=17?f-17+10:f,i(f>=0&&a0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,r,n){if("number"==typeof t)return this._initNumber(t,r,n);if("object"===(0,e.default)(t))return this._initArray(t,r,n);"hex"===r&&(r=16),i(r===(0|r)&&r>=2&&r<=36);var o=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(o++,this.negative=1),o=0;n-=3)a=t[n]|t[n-1]<<8|t[n-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(n=0,o=0;n>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},a.prototype._parseHex=function(t,e,r){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=2)i=f(t,e,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(t.length-e)%2==0?e+1:e;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var o=t.length-r,a=o%n,s=Math.min(o,o-a)+r,u=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!=typeof Symbol&&"function"==typeof Symbol.for)try{a.prototype[Symbol.for("nodejs.util.inspect.custom")]=l}catch(t){a.prototype.inspect=l}else a.prototype.inspect=l;function l(){return(this.red?""}var d=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],p=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],m=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||"hex"===t){r="";for(var n=0,o=0,a=0;a>>24-n&16777215)||a!==this.length-1?d[6-u.length]+u+r:u+r,(n+=2)>=26&&(n-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=p[t],c=m[t];r="";var h=this.clone();for(h.negative=0;!h.isZero();){var l=h.modrn(c).toString(t);r=(h=h.idivn(c)).isZero()?l+r:d[f-l.length]+l+r}for(this.isZero()&&(r="0"+r);r.length%e!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}i(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16,2)},s&&(a.prototype.toBuffer=function(t,e){return this.toArrayLike(s,t,e)}),a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)};function b(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;r.words[0]=s;for(var f=1;f>>26,h=67108863&u,l=Math.min(f,e.length-1),d=Math.max(0,f-t.length+1);d<=l;d++){var p=f-d|0;c+=(a=(i=0|t.words[p])*(o=0|e.words[d])+h)/67108864|0,h=67108863&a}r.words[f]=0|h,u=0|c}return 0!==u?r.words[f]=0|u:r.length--,r._strip()}a.prototype.toArrayLike=function(t,e,r){this._strip();var n=this.byteLength(),o=r||Math.max(1,n);i(n<=o,"byte array longer than desired length"),i(o>0,"Requested array length <= 0");var a=function(t,e){return t.allocUnsafe?t.allocUnsafe(e):new t(e)}(t,o);return this["_toArrayLike"+("le"===e?"LE":"BE")](a,n),a},a.prototype._toArrayLikeLE=function(t,e){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(t[r--]=a>>8&255),r>=0&&(t[r--]=a>>16&255),6===o?(r>=0&&(t[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(t[r--]=n;r>=0;)t[r--]=0},Math.clz32?a.prototype._countBits=function(t){return 32-Math.clz32(t)}:a.prototype._countBits=function(t){var e=t,r=0;return e>=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){i("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var n=0;n0&&(this.words[n]=~this.words[n]&67108863>>26-r),this._strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){i("number"==typeof t&&t>=0);var r=t/26|0,n=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,m=d>>>13,b=0|a[2],v=8191&b,y=b>>>13,g=0|a[3],w=8191&g,_=g>>>13,k=0|a[4],M=8191&k,S=k>>>13,A=0|a[5],x=8191&A,E=A>>>13,O=0|a[6],P=8191&O,B=O>>>13,T=0|a[7],R=8191&T,I=T>>>13,C=0|a[8],U=8191&C,j=C>>>13,N=0|a[9],L=8191&N,F=N>>>13,D=0|s[0],q=8191&D,H=D>>>13,z=0|s[1],K=8191&z,G=z>>>13,V=0|s[2],W=8191&V,Z=V>>>13,J=0|s[3],X=8191&J,Y=J>>>13,$=0|s[4],Q=8191&$,tt=$>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ft=st>>>13,ct=0|s[8],ht=8191&ct,lt=ct>>>13,dt=0|s[9],pt=8191&dt,mt=dt>>>13;r.negative=t.negative^e.negative,r.length=19;var bt=(f+(n=Math.imul(h,q))|0)+((8191&(i=(i=Math.imul(h,H))+Math.imul(l,q)|0))<<13)|0;f=((o=Math.imul(l,H))+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(p,q),i=(i=Math.imul(p,H))+Math.imul(m,q)|0,o=Math.imul(m,H);var vt=(f+(n=n+Math.imul(h,K)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(l,K)|0))<<13)|0;f=((o=o+Math.imul(l,G)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,q),i=(i=Math.imul(v,H))+Math.imul(y,q)|0,o=Math.imul(y,H),n=n+Math.imul(p,K)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,G)|0;var yt=(f+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Z)|0)+Math.imul(l,W)|0))<<13)|0;f=((o=o+Math.imul(l,Z)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(w,q),i=(i=Math.imul(w,H))+Math.imul(_,q)|0,o=Math.imul(_,H),n=n+Math.imul(v,K)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,Z)|0;var gt=(f+(n=n+Math.imul(h,X)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(l,X)|0))<<13)|0;f=((o=o+Math.imul(l,Y)|0)+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(M,q),i=(i=Math.imul(M,H))+Math.imul(S,q)|0,o=Math.imul(S,H),n=n+Math.imul(w,K)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(_,K)|0,o=o+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,Z)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,Z)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var wt=(f+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(l,Q)|0))<<13)|0;f=((o=o+Math.imul(l,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(x,q),i=(i=Math.imul(x,H))+Math.imul(E,q)|0,o=Math.imul(E,H),n=n+Math.imul(M,K)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,K)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,Z)|0)+Math.imul(_,W)|0,o=o+Math.imul(_,Z)|0,n=n+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var _t=(f+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(l,rt)|0))<<13)|0;f=((o=o+Math.imul(l,nt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(P,q),i=(i=Math.imul(P,H))+Math.imul(B,q)|0,o=Math.imul(B,H),n=n+Math.imul(x,K)|0,i=(i=i+Math.imul(x,G)|0)+Math.imul(E,K)|0,o=o+Math.imul(E,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Z)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,Z)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(_,X)|0,o=o+Math.imul(_,Y)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,n=n+Math.imul(p,rt)|0,i=(i=i+Math.imul(p,nt)|0)+Math.imul(m,rt)|0,o=o+Math.imul(m,nt)|0;var kt=(f+(n=n+Math.imul(h,ot)|0)|0)+((8191&(i=(i=i+Math.imul(h,at)|0)+Math.imul(l,ot)|0))<<13)|0;f=((o=o+Math.imul(l,at)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(R,q),i=(i=Math.imul(R,H))+Math.imul(I,q)|0,o=Math.imul(I,H),n=n+Math.imul(P,K)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(B,K)|0,o=o+Math.imul(B,G)|0,n=n+Math.imul(x,W)|0,i=(i=i+Math.imul(x,Z)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,Z)|0,n=n+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,Y)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(_,Q)|0,o=o+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,i=(i=i+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,o=o+Math.imul(y,nt)|0,n=n+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var Mt=(f+(n=n+Math.imul(h,ut)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(l,ut)|0))<<13)|0;f=((o=o+Math.imul(l,ft)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(U,q),i=(i=Math.imul(U,H))+Math.imul(j,q)|0,o=Math.imul(j,H),n=n+Math.imul(R,K)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(B,W)|0,o=o+Math.imul(B,Z)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,tt)|0,n=n+Math.imul(w,rt)|0,i=(i=i+Math.imul(w,nt)|0)+Math.imul(_,rt)|0,o=o+Math.imul(_,nt)|0,n=n+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,n=n+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ft)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ft)|0;var St=(f+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,lt)|0)+Math.imul(l,ht)|0))<<13)|0;f=((o=o+Math.imul(l,lt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(L,q),i=(i=Math.imul(L,H))+Math.imul(F,q)|0,o=Math.imul(F,H),n=n+Math.imul(U,K)|0,i=(i=i+Math.imul(U,G)|0)+Math.imul(j,K)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,Z)|0,n=n+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(B,X)|0,o=o+Math.imul(B,Y)|0,n=n+Math.imul(x,Q)|0,i=(i=i+Math.imul(x,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,o=o+Math.imul(S,nt)|0,n=n+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(_,ot)|0,o=o+Math.imul(_,at)|0,n=n+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ft)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ft)|0,n=n+Math.imul(p,ht)|0,i=(i=i+Math.imul(p,lt)|0)+Math.imul(m,ht)|0,o=o+Math.imul(m,lt)|0;var At=(f+(n=n+Math.imul(h,pt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(l,pt)|0))<<13)|0;f=((o=o+Math.imul(l,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(L,K),i=(i=Math.imul(L,G))+Math.imul(F,K)|0,o=Math.imul(F,G),n=n+Math.imul(U,W)|0,i=(i=i+Math.imul(U,Z)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,Z)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(B,Q)|0,o=o+Math.imul(B,tt)|0,n=n+Math.imul(x,rt)|0,i=(i=i+Math.imul(x,nt)|0)+Math.imul(E,rt)|0,o=o+Math.imul(E,nt)|0,n=n+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(S,ot)|0,o=o+Math.imul(S,at)|0,n=n+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ft)|0)+Math.imul(_,ut)|0,o=o+Math.imul(_,ft)|0,n=n+Math.imul(v,ht)|0,i=(i=i+Math.imul(v,lt)|0)+Math.imul(y,ht)|0,o=o+Math.imul(y,lt)|0;var xt=(f+(n=n+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,mt)|0)+Math.imul(m,pt)|0))<<13)|0;f=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(L,W),i=(i=Math.imul(L,Z))+Math.imul(F,W)|0,o=Math.imul(F,Z),n=n+Math.imul(U,X)|0,i=(i=i+Math.imul(U,Y)|0)+Math.imul(j,X)|0,o=o+Math.imul(j,Y)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(B,rt)|0,o=o+Math.imul(B,nt)|0,n=n+Math.imul(x,ot)|0,i=(i=i+Math.imul(x,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,n=n+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ut)|0,o=o+Math.imul(S,ft)|0,n=n+Math.imul(w,ht)|0,i=(i=i+Math.imul(w,lt)|0)+Math.imul(_,ht)|0,o=o+Math.imul(_,lt)|0;var Et=(f+(n=n+Math.imul(v,pt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,pt)|0))<<13)|0;f=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(L,X),i=(i=Math.imul(L,Y))+Math.imul(F,X)|0,o=Math.imul(F,Y),n=n+Math.imul(U,Q)|0,i=(i=i+Math.imul(U,tt)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,tt)|0,n=n+Math.imul(R,rt)|0,i=(i=i+Math.imul(R,nt)|0)+Math.imul(I,rt)|0,o=o+Math.imul(I,nt)|0,n=n+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(B,ot)|0,o=o+Math.imul(B,at)|0,n=n+Math.imul(x,ut)|0,i=(i=i+Math.imul(x,ft)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ft)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,lt)|0)+Math.imul(S,ht)|0,o=o+Math.imul(S,lt)|0;var Ot=(f+(n=n+Math.imul(w,pt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(_,pt)|0))<<13)|0;f=((o=o+Math.imul(_,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,n=Math.imul(L,Q),i=(i=Math.imul(L,tt))+Math.imul(F,Q)|0,o=Math.imul(F,tt),n=n+Math.imul(U,rt)|0,i=(i=i+Math.imul(U,nt)|0)+Math.imul(j,rt)|0,o=o+Math.imul(j,nt)|0,n=n+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,n=n+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(B,ut)|0,o=o+Math.imul(B,ft)|0,n=n+Math.imul(x,ht)|0,i=(i=i+Math.imul(x,lt)|0)+Math.imul(E,ht)|0,o=o+Math.imul(E,lt)|0;var Pt=(f+(n=n+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,pt)|0))<<13)|0;f=((o=o+Math.imul(S,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(L,rt),i=(i=Math.imul(L,nt))+Math.imul(F,rt)|0,o=Math.imul(F,nt),n=n+Math.imul(U,ot)|0,i=(i=i+Math.imul(U,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,n=n+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ft)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ft)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,lt)|0)+Math.imul(B,ht)|0,o=o+Math.imul(B,lt)|0;var Bt=(f+(n=n+Math.imul(x,pt)|0)|0)+((8191&(i=(i=i+Math.imul(x,mt)|0)+Math.imul(E,pt)|0))<<13)|0;f=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,n=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),n=n+Math.imul(U,ut)|0,i=(i=i+Math.imul(U,ft)|0)+Math.imul(j,ut)|0,o=o+Math.imul(j,ft)|0,n=n+Math.imul(R,ht)|0,i=(i=i+Math.imul(R,lt)|0)+Math.imul(I,ht)|0,o=o+Math.imul(I,lt)|0;var Tt=(f+(n=n+Math.imul(P,pt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(B,pt)|0))<<13)|0;f=((o=o+Math.imul(B,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(L,ut),i=(i=Math.imul(L,ft))+Math.imul(F,ut)|0,o=Math.imul(F,ft),n=n+Math.imul(U,ht)|0,i=(i=i+Math.imul(U,lt)|0)+Math.imul(j,ht)|0,o=o+Math.imul(j,lt)|0;var Rt=(f+(n=n+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(I,pt)|0))<<13)|0;f=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,n=Math.imul(L,ht),i=(i=Math.imul(L,lt))+Math.imul(F,ht)|0,o=Math.imul(F,lt);var It=(f+(n=n+Math.imul(U,pt)|0)|0)+((8191&(i=(i=i+Math.imul(U,mt)|0)+Math.imul(j,pt)|0))<<13)|0;f=((o=o+Math.imul(j,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Ct=(f+(n=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,mt))+Math.imul(F,pt)|0))<<13)|0;return f=((o=Math.imul(F,mt))+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,u[0]=bt,u[1]=vt,u[2]=yt,u[3]=gt,u[4]=wt,u[5]=_t,u[6]=kt,u[7]=Mt,u[8]=St,u[9]=At,u[10]=xt,u[11]=Et,u[12]=Ot,u[13]=Pt,u[14]=Bt,u[15]=Tt,u[16]=Rt,u[17]=It,u[18]=Ct,0!==f&&(u[19]=f,r.length++),r};function y(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function g(t,e,r){return y(t,e,r)}function w(t,e){this.x=t,this.y=e}Math.imul||(v=b),a.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?v(this,t,e):r<63?b(this,t,e):r<1024?y(this,t,e):g(this,t,e)},w.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n>=1;return n},w.prototype.permute=function(t,e,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[n]=67108863&a}return 0!==r&&(this.words[n]=r,this.length++),e?this.ineg():this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>i&1}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=0);var e,r=t%26,n=(t-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(e=0;e>>26-r}a&&(this.words[e]=a,this.length++)}if(0!==n){for(e=this.length-1;e>=0;e--)this.words[e+n]=this.words[e];for(e=0;e=0),n=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,f=0;f=0&&(0!==c||f>=n);f--){var h=0|this.words[f];this.words[f]=c<<26-o|h>>>o,c=h&s}return u&&0!==c&&(u.words[u.length++]=c),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},a.prototype.ishrn=function(t,e,r){return i(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){i("number"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,n=1<=0);var e=t%26,r=(t-e)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var n=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(i("number"==typeof t),i(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[n+r]=67108863&o}for(;n>26,this.words[n+r]=67108863&o;if(0===s)return this._strip();for(i(-1===s),s=0,n=0;n>26,this.words[n]=67108863&o;return this.negative=1,this._strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,o=0|i.words[i.length-1];0!==(r=26-this._countBits(o))&&(i=i.ushln(r),n.iushln(r),o=0|i.words[i.length-1]);var s,u=n.length-i.length;if("mod"!==e){(s=new a(null)).length=u+1,s.words=new Array(s.length);for(var f=0;f=0;h--){var l=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(l=Math.min(l/o|0,67108863),n._ishlnsubmul(i,l,h);0!==n.negative;)l--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=l)}return s&&s._strip(),n._strip(),"div"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return i(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(n=s.div.neg()),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:n,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(n=s.div.neg()),{div:n,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new a(this.modrn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modrn(t.words[0]))}:this._wordDiv(t,e);var n,o,s},a.prototype.div=function(t){return this.divmod(t,"div",!1).div},a.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},a.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modrn=function(t){var e=t<0;e&&(t=-t),i(t<=67108863);for(var r=(1<<26)%t,n=0,o=this.length-1;o>=0;o--)n=(r*n+(0|this.words[o]))%t;return e?-n:n},a.prototype.modn=function(t){return this.modrn(t)},a.prototype.idivn=function(t){var e=t<0;e&&(t=-t),i(t<=67108863);for(var r=0,n=this.length-1;n>=0;n--){var o=(0|this.words[n])+67108864*r;this.words[n]=o/t|0,r=o%t}return this._strip(),e?this.ineg():this},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n=new a(1),o=new a(0),s=new a(0),u=new a(1),f=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++f;for(var c=r.clone(),h=e.clone();!e.isZero();){for(var l=0,d=1;0==(e.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(e.iushrn(l);l-- >0;)(n.isOdd()||o.isOdd())&&(n.iadd(c),o.isub(h)),n.iushrn(1),o.iushrn(1);for(var p=0,m=1;0==(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(c),u.isub(h)),s.iushrn(1),u.iushrn(1);e.cmp(r)>=0?(e.isub(r),n.isub(s),o.isub(u)):(r.isub(e),s.isub(n),u.isub(o))}return{a:s,b:u,gcd:r.iushln(f)}},a.prototype._invmp=function(t){i(0===t.negative),i(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var n,o=new a(1),s=new a(0),u=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var f=0,c=1;0==(e.words[0]&c)&&f<26;++f,c<<=1);if(f>0)for(e.iushrn(f);f-- >0;)o.isOdd()&&o.iadd(u),o.iushrn(1);for(var h=0,l=1;0==(r.words[0]&l)&&h<26;++h,l<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(n=0===e.cmpn(1)?o:s).cmpn(0)<0&&n.iadd(t),n},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var o=e;e=r,r=o}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){i("number"==typeof t);var e=t%26,r=(t-e)/26,n=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)e=1;else{r&&(t=-t),i(t<=67108863,"Number is too big");var n=0|this.words[0];e=n===t?0:nt.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new E(t)},a.prototype.toRed=function(t){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return i(!this.red,"Already a number in reduction context"),this._forceRed(t)},a.prototype.redAdd=function(t){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},a.prototype.redISub=function(t){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},a.prototype.redShl=function(t){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},a.prototype.redMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},a.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(t){return i(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var _={k256:null,p224:null,p192:null,p25519:null};function k(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function M(){k.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function S(){k.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function A(){k.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function x(){k.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function E(t){if("string"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else i(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function O(t){E.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}k.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},k.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},k.prototype.split=function(t,e){t.iushrn(this.n,0,e)},k.prototype.imulK=function(t){return t.imul(this.k)},o(M,k),M.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,i=o}i>>>=22,t.words[n-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},M.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(_[t])return _[t];var e;if("k256"===t)e=new M;else if("p224"===t)e=new S;else if("p192"===t)e=new A;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new x}return _[t]=e,e},E.prototype._verify1=function(t){i(0===t.negative,"red works only with positives"),i(t.red,"red works only with red numbers")},E.prototype._verify2=function(t,e){i(0==(t.negative|e.negative),"red works only with positives"),i(t.red&&t.red===e.red,"red works only with red numbers")},E.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):(h(t,t.umod(this.m)._forceRed(this)),t)},E.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},E.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},E.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},E.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},E.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},E.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},E.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},E.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},E.prototype.isqr=function(t){return this.imul(t,t.clone())},E.prototype.sqr=function(t){return this.mul(t,t)},E.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(i(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,r)}for(var n=this.m.subn(1),o=0;!n.isZero()&&0===n.andln(1);)o++,n.iushrn(1);i(!n.isZero());var s=new a(1).toRed(this),u=s.redNeg(),f=this.m.subn(1).iushrn(1),c=this.m.bitLength();for(c=new a(2*c*c).toRed(this);0!==this.pow(c,f).cmp(u);)c.redIAdd(u);for(var h=this.pow(c,n),l=this.pow(t,n.addn(1).iushrn(1)),d=this.pow(t,n),p=o;0!==d.cmp(s);){for(var m=d,b=0;0!==m.cmp(s);b++)m=m.redSqr();i(b=0;n--){for(var f=e.words[n],c=u-1;c>=0;c--){var h=f>>c&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===c)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}u=26}return i},E.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},E.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new O(t)},o(O,E),O.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},O.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},O.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t)}).call(this,r(17)(t))},function(t,e){},function(t){t.exports=JSON.parse('{"name":"elliptic","version":"6.5.4","description":"EC cryptography","main":"lib/elliptic.js","files":["lib"],"scripts":{"lint":"eslint lib test","lint:fix":"npm run lint -- --fix","unit":"istanbul test _mocha --reporter=spec test/index.js","test":"npm run lint && npm run unit","version":"grunt dist && git add dist/"},"repository":{"type":"git","url":"git@github.com:indutny/elliptic"},"keywords":["EC","Elliptic","curve","Cryptography"],"author":"Fedor Indutny ","license":"MIT","bugs":{"url":"https://github.com/indutny/elliptic/issues"},"homepage":"https://github.com/indutny/elliptic","devDependencies":{"brfs":"^2.0.2","coveralls":"^3.1.0","eslint":"^7.6.0","grunt":"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.5","mocha":"^8.0.1"},"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"}}')},function(t,e,r){"use strict";var n=r(19),i=r(8),o=r(3),a=r(67),s=n.assert;function u(t){a.call(this,"short",t),this.a=new i(t.a,16).toRed(this.red),this.b=new i(t.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(t),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function f(t,e,r,n){a.BasePoint.call(this,t,"affine"),null===e&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(e,16),this.y=new i(r,16),n&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function c(t,e,r,n){a.BasePoint.call(this,t,"jacobian"),null===e&&null===r&&null===n?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(e,16),this.y=new i(r,16),this.z=new i(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(u,a),t.exports=u,u.prototype._getEndomorphism=function(t){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var e,r;if(t.beta)e=new i(t.beta,16).toRed(this.red);else{var n=this._getEndoRoots(this.p);e=(e=n[0].cmp(n[1])<0?n[0]:n[1]).toRed(this.red)}if(t.lambda)r=new i(t.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(e))?r=o[0]:(r=o[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(e))))}return{beta:e,lambda:r,basis:t.basis?t.basis.map((function(t){return{a:new i(t.a,16),b:new i(t.b,16)}})):this._getEndoBasis(r)}}},u.prototype._getEndoRoots=function(t){var e=t===this.p?this.red:i.mont(t),r=new i(2).toRed(e).redInvm(),n=r.redNeg(),o=new i(3).toRed(e).redNeg().redSqrt().redMul(r);return[n.redAdd(o).fromRed(),n.redSub(o).fromRed()]},u.prototype._getEndoBasis=function(t){for(var e,r,n,o,a,s,u,f,c,h=this.n.ushrn(Math.floor(this.n.bitLength()/2)),l=t,d=this.n.clone(),p=new i(1),m=new i(0),b=new i(0),v=new i(1),y=0;0!==l.cmpn(0);){var g=d.div(l);f=d.sub(g.mul(l)),c=b.sub(g.mul(p));var w=v.sub(g.mul(m));if(!n&&f.cmp(h)<0)e=u.neg(),r=p,n=f.neg(),o=c;else if(n&&2==++y)break;u=f,d=l,l=f,b=p,p=c,v=m,m=w}a=f.neg(),s=c;var _=n.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(_)>=0&&(a=e,s=r),n.negative&&(n=n.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:o},{a:a,b:s}]},u.prototype._endoSplit=function(t){var e=this.endo.basis,r=e[0],n=e[1],i=n.b.mul(t).divRound(this.n),o=r.b.neg().mul(t).divRound(this.n),a=i.mul(r.a),s=o.mul(n.a),u=i.mul(r.b),f=o.mul(n.b);return{k1:t.sub(a).sub(s),k2:u.add(f).neg()}},u.prototype.pointFromX=function(t,e){(t=new i(t,16)).red||(t=t.toRed(this.red));var r=t.redSqr().redMul(t).redIAdd(t.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(e&&!o||!e&&o)&&(n=n.redNeg()),this.point(t,n)},u.prototype.validate=function(t){if(t.inf)return!0;var e=t.x,r=t.y,n=this.a.redMul(e),i=e.redSqr().redMul(e).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},u.prototype._endoWnafMulAdd=function(t,e,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},f.prototype.isInfinity=function(){return this.inf},f.prototype.add=function(t){if(this.inf)return t;if(t.inf)return this;if(this.eq(t))return this.dbl();if(this.neg().eq(t))return this.curve.point(null,null);if(0===this.x.cmp(t.x))return this.curve.point(null,null);var e=this.y.redSub(t.y);0!==e.cmpn(0)&&(e=e.redMul(this.x.redSub(t.x).redInvm()));var r=e.redSqr().redISub(this.x).redISub(t.x),n=e.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},f.prototype.dbl=function(){if(this.inf)return this;var t=this.y.redAdd(this.y);if(0===t.cmpn(0))return this.curve.point(null,null);var e=this.curve.a,r=this.x.redSqr(),n=t.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(e).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},f.prototype.getX=function(){return this.x.fromRed()},f.prototype.getY=function(){return this.y.fromRed()},f.prototype.mul=function(t){return t=new i(t,16),this.isInfinity()?this:this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve.endo?this.curve._endoWnafMulAdd([this],[t]):this.curve._wnafMul(this,t)},f.prototype.mulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},f.prototype.jmulAdd=function(t,e,r){var n=[this,e],i=[t,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},f.prototype.eq=function(t){return this===t||this.inf===t.inf&&(this.inf||0===this.x.cmp(t.x)&&0===this.y.cmp(t.y))},f.prototype.neg=function(t){if(this.inf)return this;var e=this.curve.point(this.x,this.y.redNeg());if(t&&this.precomputed){var r=this.precomputed,n=function(t){return t.neg()};e.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return e},f.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(c,a.BasePoint),u.prototype.jpoint=function(t,e,r){return new c(this,t,e,r)},c.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var t=this.z.redInvm(),e=t.redSqr(),r=this.x.redMul(e),n=this.y.redMul(e).redMul(t);return this.curve.point(r,n)},c.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},c.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(e),i=t.x.redMul(r),o=this.y.redMul(e.redMul(t.z)),a=t.y.redMul(r.redMul(this.z)),s=n.redSub(i),u=o.redSub(a);if(0===s.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var f=s.redSqr(),c=f.redMul(s),h=n.redMul(f),l=u.redSqr().redIAdd(c).redISub(h).redISub(h),d=u.redMul(h.redISub(l)).redISub(o.redMul(c)),p=this.z.redMul(t.z).redMul(s);return this.curve.jpoint(l,d,p)},c.prototype.mixedAdd=function(t){if(this.isInfinity())return t.toJ();if(t.isInfinity())return this;var e=this.z.redSqr(),r=this.x,n=t.x.redMul(e),i=this.y,o=t.y.redMul(e).redMul(this.z),a=r.redSub(n),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=a.redSqr(),f=u.redMul(a),c=r.redMul(u),h=s.redSqr().redIAdd(f).redISub(c).redISub(c),l=s.redMul(c.redISub(h)).redISub(i.redMul(f)),d=this.z.redMul(a);return this.curve.jpoint(h,l,d)},c.prototype.dblp=function(t){if(0===t)return this;if(this.isInfinity())return this;if(!t)return this.dbl();var e;if(this.curve.zeroA||this.curve.threeA){var r=this;for(e=0;e=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(t,e,r){"use strict";var n=r(8),i=r(3),o=r(67),a=r(19);function s(t){o.call(this,"mont",t),this.a=new n(t.a,16).toRed(this.red),this.b=new n(t.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function u(t,e,r){o.BasePoint.call(this,t,"projective"),null===e&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(e,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,o),t.exports=s,s.prototype.validate=function(t){var e=t.normalize().x,r=e.redSqr(),n=r.redMul(e).redAdd(r.redMul(this.a)).redAdd(e);return 0===n.redSqrt().redSqr().cmp(n)},i(u,o.BasePoint),s.prototype.decodePoint=function(t,e){return this.point(a.toArray(t,e),1)},s.prototype.point=function(t,e){return new u(this,t,e)},s.prototype.pointFromJSON=function(t){return u.fromJSON(this,t)},u.prototype.precompute=function(){},u.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},u.fromJSON=function(t,e){return new u(t,e[0],e[1]||t.one)},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},u.prototype.dbl=function(){var t=this.x.redAdd(this.z).redSqr(),e=this.x.redSub(this.z).redSqr(),r=t.redSub(e),n=t.redMul(e),i=r.redMul(e.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},u.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.diffAdd=function(t,e){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=t.x.redAdd(t.z),o=t.x.redSub(t.z).redMul(r),a=i.redMul(n),s=e.z.redMul(o.redAdd(a).redSqr()),u=e.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,u)},u.prototype.mul=function(t){for(var e=t.clone(),r=this,n=this.curve.point(null,null),i=[];0!==e.cmpn(0);e.iushrn(1))i.push(e.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},u.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.eq=function(t){return 0===this.getX().cmp(t.getX())},u.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(t,e,r){"use strict";var n=r(19),i=r(8),o=r(3),a=r(67),s=n.assert;function u(t){this.twisted=1!=(0|t.a),this.mOneA=this.twisted&&-1==(0|t.a),this.extended=this.mOneA,a.call(this,"edwards",t),this.a=new i(t.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(t.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(t.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|t.c)}function f(t,e,r,n,o){a.BasePoint.call(this,t,"projective"),null===e&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(e,16),this.y=new i(r,16),this.z=n?new i(n,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(u,a),t.exports=u,u.prototype._mulA=function(t){return this.mOneA?t.redNeg():this.a.redMul(t)},u.prototype._mulC=function(t){return this.oneC?t:this.c.redMul(t)},u.prototype.jpoint=function(t,e,r,n){return this.point(t,e,r,n)},u.prototype.pointFromX=function(t,e){(t=new i(t,16)).red||(t=t.toRed(this.red));var r=t.redSqr(),n=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var u=s.fromRed().isOdd();return(e&&!u||!e&&u)&&(s=s.redNeg()),this.point(t,s)},u.prototype.pointFromY=function(t,e){(t=new i(t,16)).red||(t=t.toRed(this.red));var r=t.redSqr(),n=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(e)throw new Error("invalid point");return this.point(this.zero,t)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==e&&(s=s.redNeg()),this.point(s,t)},u.prototype.validate=function(t){if(t.isInfinity())return!0;t.normalize();var e=t.x.redSqr(),r=t.y.redSqr(),n=e.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(e).redMul(r)));return 0===n.cmp(i)},o(f,a.BasePoint),u.prototype.pointFromJSON=function(t){return f.fromJSON(this,t)},u.prototype.point=function(t,e,r,n){return new f(this,t,e,r,n)},f.fromJSON=function(t,e){return new f(t,e[0],e[1],e[2])},f.prototype.inspect=function(){return this.isInfinity()?"":""},f.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},f.prototype._extDbl=function(){var t=this.x.redSqr(),e=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(t),i=this.x.redAdd(this.y).redSqr().redISub(t).redISub(e),o=n.redAdd(e),a=o.redSub(r),s=n.redSub(e),u=i.redMul(a),f=o.redMul(s),c=i.redMul(s),h=a.redMul(o);return this.curve.point(u,f,h,c)},f.prototype._projDbl=function(){var t,e,r,n,i,o,a=this.x.redAdd(this.y).redSqr(),s=this.x.redSqr(),u=this.y.redSqr();if(this.curve.twisted){var f=(n=this.curve._mulA(s)).redAdd(u);this.zOne?(t=a.redSub(s).redSub(u).redMul(f.redSub(this.curve.two)),e=f.redMul(n.redSub(u)),r=f.redSqr().redSub(f).redSub(f)):(i=this.z.redSqr(),o=f.redSub(i).redISub(i),t=a.redSub(s).redISub(u).redMul(o),e=f.redMul(n.redSub(u)),r=f.redMul(o))}else n=s.redAdd(u),i=this.curve._mulC(this.z).redSqr(),o=n.redSub(i).redSub(i),t=this.curve._mulC(a.redISub(n)).redMul(o),e=this.curve._mulC(n).redMul(s.redISub(u)),r=n.redMul(o);return this.curve.point(t,e,r)},f.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},f.prototype._extAdd=function(t){var e=this.y.redSub(this.x).redMul(t.y.redSub(t.x)),r=this.y.redAdd(this.x).redMul(t.y.redAdd(t.x)),n=this.t.redMul(this.curve.dd).redMul(t.t),i=this.z.redMul(t.z.redAdd(t.z)),o=r.redSub(e),a=i.redSub(n),s=i.redAdd(n),u=r.redAdd(e),f=o.redMul(a),c=s.redMul(u),h=o.redMul(u),l=a.redMul(s);return this.curve.point(f,c,l,h)},f.prototype._projAdd=function(t){var e,r,n=this.z.redMul(t.z),i=n.redSqr(),o=this.x.redMul(t.x),a=this.y.redMul(t.y),s=this.curve.d.redMul(o).redMul(a),u=i.redSub(s),f=i.redAdd(s),c=this.x.redAdd(this.y).redMul(t.x.redAdd(t.y)).redISub(o).redISub(a),h=n.redMul(u).redMul(c);return this.curve.twisted?(e=n.redMul(f).redMul(a.redSub(this.curve._mulA(o))),r=u.redMul(f)):(e=n.redMul(f).redMul(a.redSub(o)),r=this.curve._mulC(u).redMul(f)),this.curve.point(h,e,r)},f.prototype.add=function(t){return this.isInfinity()?t:t.isInfinity()?this:this.curve.extended?this._extAdd(t):this._projAdd(t)},f.prototype.mul=function(t){return this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve._wnafMul(this,t)},f.prototype.mulAdd=function(t,e,r){return this.curve._wnafMulAdd(1,[this,e],[t,r],2,!1)},f.prototype.jmulAdd=function(t,e,r){return this.curve._wnafMulAdd(1,[this,e],[t,r],2,!0)},f.prototype.normalize=function(){if(this.zOne)return this;var t=this.z.redInvm();return this.x=this.x.redMul(t),this.y=this.y.redMul(t),this.t&&(this.t=this.t.redMul(t)),this.z=this.curve.one,this.zOne=!0,this},f.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},f.prototype.getX=function(){return this.normalize(),this.x.fromRed()},f.prototype.getY=function(){return this.normalize(),this.y.fromRed()},f.prototype.eq=function(t){return this===t||0===this.getX().cmp(t.getX())&&0===this.getY().cmp(t.getY())},f.prototype.eqXToP=function(t){var e=t.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(e))return!0;for(var r=t.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(e.redIAdd(n),0===this.x.cmp(e))return!0}},f.prototype.toP=f.prototype.normalize,f.prototype.mixedAdd=f.prototype.add},function(t,e,r){"use strict";t.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(8),o=r(405),a=r(19),s=r(95),u=r(91),f=a.assert,c=r(406),h=r(407);function l(t){if(!(this instanceof l))return new l(t);"string"==typeof t&&(f(Object.prototype.hasOwnProperty.call(s,t),"Unknown curve "+t),t=s[t]),t instanceof s.PresetCurve&&(t={curve:t}),this.curve=t.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=t.curve.g,this.g.precompute(t.curve.n.bitLength()+1),this.hash=t.hash||t.curve.hash}t.exports=l,l.prototype.keyPair=function(t){return new c(this,t)},l.prototype.keyFromPrivate=function(t,e){return c.fromPrivate(this,t,e)},l.prototype.keyFromPublic=function(t,e){return c.fromPublic(this,t,e)},l.prototype.genKeyPair=function(t){t||(t={});for(var e=new o({hash:this.hash,pers:t.pers,persEnc:t.persEnc||"utf8",entropy:t.entropy||u(this.hash.hmacStrength),entropyEnc:t.entropy&&t.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),n=this.n.sub(new i(2));;){var a=new i(e.generate(r));if(!(a.cmp(n)>0))return a.iaddn(1),this.keyFromPrivate(a)}},l.prototype._truncateToN=function(t,e){var r=8*t.byteLength()-this.n.bitLength();return r>0&&(t=t.ushrn(r)),!e&&t.cmp(this.n)>=0?t.sub(this.n):t},l.prototype.sign=function(t,e,r,a){"object"===(0,n.default)(r)&&(a=r,r=null),a||(a={}),e=this.keyFromPrivate(e,r),t=this._truncateToN(new i(t,16));for(var s=this.n.byteLength(),u=e.getPrivate().toArray("be",s),f=t.toArray("be",s),c=new o({hash:this.hash,entropy:u,nonce:f,pers:a.pers,persEnc:a.persEnc||"utf8"}),l=this.n.sub(new i(1)),d=0;;d++){var p=a.k?a.k(d):new i(c.generate(this.n.byteLength()));if(!((p=this._truncateToN(p,!0)).cmpn(1)<=0||p.cmp(l)>=0)){var m=this.g.mul(p);if(!m.isInfinity()){var b=m.getX(),v=b.umod(this.n);if(0!==v.cmpn(0)){var y=p.invm(this.n).mul(v.mul(e.getPrivate()).iadd(t));if(0!==(y=y.umod(this.n)).cmpn(0)){var g=(m.getY().isOdd()?1:0)|(0!==b.cmp(v)?2:0);return a.canonical&&y.cmp(this.nh)>0&&(y=this.n.sub(y),g^=1),new h({r:v,s:y,recoveryParam:g})}}}}}},l.prototype.verify=function(t,e,r,n){t=this._truncateToN(new i(t,16)),r=this.keyFromPublic(r,n);var o=(e=new h(e,"hex")).r,a=e.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,u=a.invm(this.n),f=u.mul(t).umod(this.n),c=u.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(f,r.getPublic(),c)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(f,r.getPublic(),c)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},l.prototype.recoverPubKey=function(t,e,r,n){f((3&r)===r,"The recovery param is more than two bits"),e=new h(e,n);var o=this.n,a=new i(t),s=e.r,u=e.s,c=1&r,l=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&l)throw new Error("Unable to find sencond key candinate");s=l?this.curve.pointFromX(s.add(this.curve.n),c):this.curve.pointFromX(s,c);var d=e.r.invm(o),p=o.sub(a).mul(d).umod(o),m=u.mul(d).umod(o);return this.g.mulAdd(p,s,m)},l.prototype.getKeyRecoveryParam=function(t,e,r,n){if(null!==(e=new h(e,n)).recoveryParam)return e.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(t,e,i)}catch(t){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},function(t,e,r){"use strict";var n=r(60),i=r(183),o=r(18);function a(t){if(!(this instanceof a))return new a(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=i.toArray(t.entropy,t.entropyEnc||"hex"),r=i.toArray(t.nonce,t.nonceEnc||"hex"),n=i.toArray(t.pers,t.persEnc||"hex");o(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,r,n)}t.exports=a,a.prototype._init=function(t,e,r){var n=t.concat(e).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(t.concat(r||[])),this._reseed=1},a.prototype.generate=function(t,e,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof e&&(n=r,r=e,e=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length"}},function(t,e,r){"use strict";var n=r(8),i=r(19),o=i.assert;function a(t,e){if(t instanceof a)return t;this._importDER(t,e)||(o(t.r&&t.s,"Signature without r or s"),this.r=new n(t.r,16),this.s=new n(t.s,16),void 0===t.recoveryParam?this.recoveryParam=null:this.recoveryParam=t.recoveryParam)}function s(){this.place=0}function u(t,e){var r=t[e.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,a=e.place;o>>=0;return!(i<=127)&&(e.place=a,i)}function f(t){for(var e=0,r=t.length-1;!t[e]&&!(128&t[e+1])&&e>>3);for(t.push(128|r);--r;)t.push(e>>>(r<<3)&255);t.push(e)}}t.exports=a,a.prototype._importDER=function(t,e){t=i.toArray(t,e);var r=new s;if(48!==t[r.place++])return!1;var o=u(t,r);if(!1===o)return!1;if(o+r.place!==t.length)return!1;if(2!==t[r.place++])return!1;var a=u(t,r);if(!1===a)return!1;var f=t.slice(r.place,a+r.place);if(r.place+=a,2!==t[r.place++])return!1;var c=u(t,r);if(!1===c)return!1;if(t.length!==c+r.place)return!1;var h=t.slice(r.place,c+r.place);if(0===f[0]){if(!(128&f[1]))return!1;f=f.slice(1)}if(0===h[0]){if(!(128&h[1]))return!1;h=h.slice(1)}return this.r=new n(f),this.s=new n(h),this.recoveryParam=null,!0},a.prototype.toDER=function(t){var e=this.r.toArray(),r=this.s.toArray();for(128&e[0]&&(e=[0].concat(e)),128&r[0]&&(r=[0].concat(r)),e=f(e),r=f(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];c(n,e.length),(n=n.concat(e)).push(2),c(n,r.length);var o=n.concat(r),a=[48];return c(a,o.length),a=a.concat(o),i.encode(a,t)}},function(t,e,r){"use strict";var n=r(60),i=r(95),o=r(19),a=o.assert,s=o.parseBytes,u=r(409),f=r(410);function c(t){if(a("ed25519"===t,"only tested with ed25519 so far"),!(this instanceof c))return new c(t);t=i[t].curve,this.curve=t,this.g=t.g,this.g.precompute(t.n.bitLength()+1),this.pointClass=t.point().constructor,this.encodingLength=Math.ceil(t.n.bitLength()/8),this.hash=n.sha512}t.exports=c,c.prototype.sign=function(t,e){t=s(t);var r=this.keyFromSecret(e),n=this.hashInt(r.messagePrefix(),t),i=this.g.mul(n),o=this.encodePoint(i),a=this.hashInt(o,r.pubBytes(),t).mul(r.priv()),u=n.add(a).umod(this.curve.n);return this.makeSignature({R:i,S:u,Rencoded:o})},c.prototype.verify=function(t,e,r){t=s(t),e=this.makeSignature(e);var n=this.keyFromPublic(r),i=this.hashInt(e.Rencoded(),n.pubBytes(),t),o=this.g.mul(e.S());return e.R().add(n.pub().mul(i)).eq(o)},c.prototype.hashInt=function(){for(var t=this.hash(),e=0;e=e)throw new Error("invalid sig")}t.exports=function(t,e,r,f,c){var h=a(r);if("ec"===h.type){if("ecdsa"!==f&&"ecdsa/rsa"!==f)throw new Error("wrong public key type");return function(t,e,r){var n=s[r.data.algorithm.curve.join(".")];if(!n)throw new Error("unknown curve "+r.data.algorithm.curve.join("."));var i=new o(n),a=r.data.subjectPrivateKey.data;return i.verify(e,t,a)}(t,e,h)}if("dsa"===h.type){if("dsa"!==f)throw new Error("wrong public key type");return function(t,e,r){var n=r.data.p,o=r.data.q,s=r.data.g,f=r.data.pub_key,c=a.signature.decode(t,"der"),h=c.s,l=c.r;u(h,o),u(l,o);var d=i.mont(n),p=h.invm(o);return 0===s.toRed(d).redPow(new i(e).mul(p).mod(o)).fromRed().mul(f.toRed(d).redPow(l.mul(p).mod(o)).fromRed()).mod(n).mod(o).cmp(l)}(t,e,h)}if("rsa"!==f&&"ecdsa/rsa"!==f)throw new Error("wrong public key type");e=n.concat([c,e]);for(var l=h.modulus.byteLength(),d=[1],p=0;e.length+d.length+2r-l-2)throw new Error("message too long");var d=h.alloc(r-n-l-2),p=r-c-1,m=i(c),b=s(h.concat([f,d,h.alloc(1,1),e],p),a(m,p)),v=s(m,a(b,c));return new u(h.concat([h.alloc(1),v,b],r))}(p,e);else if(1===l)d=function(t,e,r){var n,o=e.length,a=t.modulus.byteLength();if(o>a-11)throw new Error("message too long");n=r?h.alloc(a-o-3,255):function(t){var e,r=h.allocUnsafe(t),n=0,o=i(2*t),a=0;for(;n=0)throw new Error("data too long for modulus")}return r?c(d,p):f(d,p)}},function(t,e,r){"use strict";var n=r(68),i=r(192),o=r(193),a=r(8),s=r(94),u=r(36),f=r(194),c=r(4).Buffer;t.exports=function(t,e,r){var h;h=t.padding?t.padding:r?1:4;var l,d=n(t),p=d.modulus.byteLength();if(e.length>p||new a(e).cmp(d.modulus)>=0)throw new Error("decryption error");l=r?f(new a(e),d):s(e,d);var m=c.alloc(p-l.length);if(l=c.concat([m,l],p),4===h)return function(t,e){var r=t.modulus.byteLength(),n=u("sha1").update(c.alloc(0)).digest(),a=n.length;if(0!==e[0])throw new Error("decryption error");var s=e.slice(1,a+1),f=e.slice(a+1),h=o(s,i(f,a)),l=o(f,i(h,r-a-1));if(function(t,e){t=c.from(t),e=c.from(e);var r=0,n=t.length;t.length!==e.length&&(r++,n=Math.min(t.length,e.length));var i=-1;for(;++i=e.length){o++;break}var a=e.slice(2,i-1);("0002"!==n.toString("hex")&&!r||"0001"!==n.toString("hex")&&r)&&o++;a.length<8&&o++;if(o)throw new Error("decryption error");return e.slice(i)}(0,l,r);if(3===h)return l;throw new Error("unknown padding")}},function(t,e,r){"use strict";(function(t,n){function i(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}var o=r(4),a=r(22),s=o.Buffer,u=o.kMaxLength,f=t.crypto||t.msCrypto,c=Math.pow(2,32)-1;function h(t,e){if("number"!=typeof t||t!=t)throw new TypeError("offset must be a number");if(t>c||t<0)throw new TypeError("offset must be a uint32");if(t>u||t>e)throw new RangeError("offset out of range")}function l(t,e,r){if("number"!=typeof t||t!=t)throw new TypeError("size must be a number");if(t>c||t<0)throw new TypeError("size must be a uint32");if(t+e>r||t>u)throw new RangeError("buffer too small")}function d(t,e,r,i){if(n.browser){var o=t.buffer,s=new Uint8Array(o,e,r);return f.getRandomValues(s),i?void n.nextTick((function(){i(null,t)})):t}if(!i)return a(r).copy(t,e),t;a(r,(function(r,n){if(r)return i(r);n.copy(t,e),i(null,t)}))}f&&f.getRandomValues||!n.browser?(e.randomFill=function(e,r,n,i){if(!(s.isBuffer(e)||e instanceof t.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if("function"==typeof r)i=r,r=0,n=e.length;else if("function"==typeof n)i=n,n=e.length-r;else if("function"!=typeof i)throw new TypeError('"cb" argument must be a function');return h(r,e.length),l(n,r,e.length),d(e,r,n,i)},e.randomFillSync=function(e,r,n){void 0===r&&(r=0);if(!(s.isBuffer(e)||e instanceof t.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');h(r,e.length),void 0===n&&(n=e.length-r);return l(n,r,e.length),d(e,r,n)}):(e.randomFill=i,e.randomFillSync=i)}).call(this,r(7),r(6))},function(t,e,r){"use strict";var n=r(8),i=r(150),o=function(t){return new n(t.slice(2),16)},a=function(t){var e="0x"+("0x"===t.slice(0,2)?new n(t.slice(2),16):new n(t,10)).toString("hex");return"0x0"===e?"0x":e},s=function(t){return"string"==typeof t?/^0x/.test(t)?t:"0x"+t:"0x"+new n(t).toString("hex")},u=function(t){return o(t).toNumber()},f=function(t){return function(e,r){return"0x"+o(e)[t](o(r)).toString("hex")}},c=f("add"),h=f("mul"),l=f("div"),d=f("sub");t.exports={toString:function(t){return o(t).toString(10)},fromString:a,toNumber:u,fromNumber:s,toEther:function(t){return u(l(t,a("10000000000")))/1e8},fromEther:function(t){return h(s(Math.floor(1e8*t)),a("10000000000"))},toUint256:function(t){return i.pad(32,t)},add:c,mul:h,div:l,sub:d}},function(t,e,r){"use strict";t.exports={encode:function(t){var e=function(t){return(e=t.toString(16)).length%2==0?e:"0"+e;var e},r=function(t,r){return t<56?e(r+t):e(r+e(t).length/2+55)+e(t)};return"0x"+function t(e){if("string"==typeof e){var n=e.slice(2);return(2!=n.length||n>="80"?r(n.length/2,128):"")+n}var i=e.map(t).join("");return r(i.length/2,192)+i}(t)},decode:function(t){var e=2,r=function(){if(e>=t.length)throw"";var r=t.slice(e,e+2);return r<"80"?(e+=2,"0x"+r):r<"c0"?i():o()},n=function(){var r=parseInt(t.slice(e,e+=2),16)%64;return r<56?r:parseInt(t.slice(e,e+=2*(r-55)),16)},i=function(){var r=n();return"0x"+t.slice(e,e+=2*r)},o=function(){for(var t=2*n()+e,i=[];e=64;){var d=r,p=n,m=i,b=o,v=a,y=s,g=u,w=f,_=void 0,k=void 0,M=void 0,S=void 0,A=void 0;for(k=0;k<16;k++)M=h+4*k,c[k]=(255&t[M])<<24|(255&t[M+1])<<16|(255&t[M+2])<<8|255&t[M+3];for(k=16;k<64;k++)S=((_=c[k-2])>>>17|_<<15)^(_>>>19|_<<13)^_>>>10,A=((_=c[k-15])>>>7|_<<25)^(_>>>18|_<<14)^_>>>3,c[k]=(S+c[k-7]|0)+(A+c[k-16]|0)|0;for(k=0;k<64;k++)S=(((v>>>6|v<<26)^(v>>>11|v<<21)^(v>>>25|v<<7))+(v&y^~v&g)|0)+(w+(e[k]+c[k]|0)|0)|0,A=((d>>>2|d<<30)^(d>>>13|d<<19)^(d>>>22|d<<10))+(d&p^d&m^p&m)|0,w=g,g=y,y=v,v=b+S|0,b=m,m=p,p=d,d=S+A|0;r=r+d|0,n=n+p|0,i=i+m|0,o=o+b|0,a=a+v|0,s=s+y|0,u=u+g|0,f=f+w|0,h+=64,l-=64}}h(t);var l,d=t.length%64,p=t.length/536870912|0,m=t.length<<3,b=d<56?56:120,v=t.slice(t.length-d,t.length);for(v.push(128),l=d+1;l>>24&255),v.push(p>>>16&255),v.push(p>>>8&255),v.push(p>>>0&255),v.push(m>>>24&255),v.push(m>>>16&255),v.push(m>>>8&255),v.push(m>>>0&255),h(v),[r>>>24&255,r>>>16&255,r>>>8&255,r>>>0&255,n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,u>>>24&255,u>>>16&255,u>>>8&255,u>>>0&255,f>>>24&255,f>>>16&255,f>>>8&255,f>>>0&255]}function i(t,e,r){t=t.length<=64?t:n(t);var i,o=64+e.length+4,a=new Array(o),s=new Array(64),u=[];for(i=0;i<64;i++)a[i]=54;for(i=0;i=o-4;t--){if(a[t]++,a[t]<=255)return;a[t]=0}}for(;r>=32;)f(),u=u.concat(n(s.concat(n(a)))),r-=32;return r>0&&(f(),u=u.concat(n(s.concat(n(a))).slice(0,r))),u}function o(t,e,r,n,i){var o;for(f(t,16*(2*r-1),i,0,16),o=0;o<2*r;o++)u(t,16*o,i,16),s(i,n),f(i,0,t,e+16*o,16);for(o=0;o>>32-e}function s(t,e){f(t,0,e,0,16);for(var r=8;r>0;r-=2)e[4]^=a(e[0]+e[12],7),e[8]^=a(e[4]+e[0],9),e[12]^=a(e[8]+e[4],13),e[0]^=a(e[12]+e[8],18),e[9]^=a(e[5]+e[1],7),e[13]^=a(e[9]+e[5],9),e[1]^=a(e[13]+e[9],13),e[5]^=a(e[1]+e[13],18),e[14]^=a(e[10]+e[6],7),e[2]^=a(e[14]+e[10],9),e[6]^=a(e[2]+e[14],13),e[10]^=a(e[6]+e[2],18),e[3]^=a(e[15]+e[11],7),e[7]^=a(e[3]+e[15],9),e[11]^=a(e[7]+e[3],13),e[15]^=a(e[11]+e[7],18),e[1]^=a(e[0]+e[3],7),e[2]^=a(e[1]+e[0],9),e[3]^=a(e[2]+e[1],13),e[0]^=a(e[3]+e[2],18),e[6]^=a(e[5]+e[4],7),e[7]^=a(e[6]+e[5],9),e[4]^=a(e[7]+e[6],13),e[5]^=a(e[4]+e[7],18),e[11]^=a(e[10]+e[9],7),e[8]^=a(e[11]+e[10],9),e[9]^=a(e[8]+e[11],13),e[10]^=a(e[9]+e[8],18),e[12]^=a(e[15]+e[14],7),e[13]^=a(e[12]+e[15],9),e[14]^=a(e[13]+e[12],13),e[15]^=a(e[14]+e[13],18);for(var n=0;n<16;++n)t[n]+=e[n]}function u(t,e,r,n){for(var i=0;i=256)return!1}return!0}function h(t,e){if("number"!=typeof t||t%1)throw new Error("invalid "+e);return t}function l(t,r,n,a,s,l,d){if(n=h(n,"N"),a=h(a,"r"),s=h(s,"p"),l=h(l,"dkLen"),0===n||0!=(n&n-1))throw new Error("N must be power of 2");if(n>2147483647/128/a)throw new Error("N too large");if(a>2147483647/128/s)throw new Error("r too large");if(!c(t))throw new Error("password must be an array or buffer");if(t=Array.prototype.slice.call(t),!c(r))throw new Error("salt must be an array or buffer");r=Array.prototype.slice.call(r);for(var p=i(t,r,128*s*a),m=new Uint32Array(32*s*a),b=0;bT&&(r=T);for(var c=0;cT&&(r=T);for(var b=0;b>0&255),p.push(m[C]>>8&255),p.push(m[C]>>16&255),p.push(m[C]>>24&255);var U=i(t,p,l);return d&&d(null,1,U),U}d&&R(e)};if(!d)for(;;){var C=I();if(null!=C)return C}I()}var d={scrypt:function(t,e,r,n,i,o,a){return new Promise((function(s,u){var f=0;a&&a(0),l(t,e,r,n,i,o,(function(t,e,r){if(t)u(t);else if(r)a&&1!==f&&a(1),s(new Uint8Array(r));else if(a&&e!==f)return f=e,a(e)}))}))},syncScrypt:function(t,e,r,n,i,o){return new Uint8Array(l(t,e,r,n,i,o))}};t.exports=d}()}).call(this,r(120).setImmediate)},function(t,e,r){"use strict";var n=r(431),i=r(432),o=i;o.v1=n,o.v4=i,t.exports=o},function(t,e,r){"use strict";var n,i,o=r(195),a=r(196),s=0,u=0;t.exports=function(t,e,r){var f=e&&r||0,c=e||[],h=(t=t||{}).node||n,l=void 0!==t.clockseq?t.clockseq:i;if(null==h||null==l){var d=o();null==h&&(h=n=[1|d[0],d[1],d[2],d[3],d[4],d[5]]),null==l&&(l=i=16383&(d[6]<<8|d[7]))}var p=void 0!==t.msecs?t.msecs:(new Date).getTime(),m=void 0!==t.nsecs?t.nsecs:u+1,b=p-s+(m-u)/1e4;if(b<0&&void 0===t.clockseq&&(l=l+1&16383),(b<0||p>s)&&void 0===t.nsecs&&(m=0),m>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");s=p,u=m,i=l;var v=(1e4*(268435455&(p+=122192928e5))+m)%4294967296;c[f++]=v>>>24&255,c[f++]=v>>>16&255,c[f++]=v>>>8&255,c[f++]=255&v;var y=p/4294967296*1e4&268435455;c[f++]=y>>>8&255,c[f++]=255&y,c[f++]=y>>>24&15|16,c[f++]=y>>>16&255,c[f++]=l>>>8|128,c[f++]=255&l;for(var g=0;g<6;++g)c[f+g]=h[g];return e||a(c)}},function(t,e,r){"use strict";var n=r(195),i=r(196);t.exports=function(t,e,r){var o=e&&r||0;"string"==typeof t&&(e="binary"===t?new Array(16):null,t=null);var a=(t=t||{}).random||(t.rng||n)();if(a[6]=15&a[6]|64,a[8]=63&a[8]|128,e)for(var s=0;s<16;++s)e[o+s]=a[s];return e||i(a)}},function(t,e,r){"use strict";(function(t){var n,i=(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=function(){return(o=Object.assign||function(t){for(var e,r=1,n=arguments.length;r0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var s=r(26),u=r(43),f=r(104),c=function(e){function r(t,r){var n;void 0===r&&(r={});var i=e.call(this,o(o({},t),{type:0}))||this;if(i.common=i._validateTxV(i.v,r.common),i.gasPrice=new s.BN(s.toBuffer(""===t.gasPrice?"0x":t.gasPrice)),i._validateCannotExceedMaxInteger({gasPrice:i.gasPrice}),i.common.gteHardfork("spuriousDragon"))if(i.isSigned()){var a=i.v,f=i.common.chainIdBN().muln(2);(a.eq(f.addn(35))||a.eq(f.addn(36)))&&i.activeCapabilities.push(u.Capability.EIP155ReplayProtection)}else i.activeCapabilities.push(u.Capability.EIP155ReplayProtection);return(null===(n=null==r?void 0:r.freeze)||void 0===n||n)&&Object.freeze(i),i}return i(r,e),r.fromTxData=function(t,e){return void 0===e&&(e={}),new r(t,e)},r.fromSerializedTx=function(t,e){void 0===e&&(e={});var r=s.rlp.decode(t);if(!Array.isArray(r))throw new Error("Invalid serialized tx input. Must be array");return this.fromValuesArray(r,e)},r.fromRlpSerializedTx=function(t,e){return void 0===e&&(e={}),r.fromSerializedTx(t,e)},r.fromValuesArray=function(t,e){if(void 0===e&&(e={}),6!==t.length&&9!==t.length)throw new Error("Invalid transaction. Only expecting 6 values (for unsigned tx) or 9 values (for signed tx).");var n=a(t,9);return new r({nonce:n[0],gasPrice:n[1],gasLimit:n[2],to:n[3],value:n[4],data:n[5],v:n[6],r:n[7],s:n[8]},e)},r.prototype.raw=function(){return[s.bnToUnpaddedBuffer(this.nonce),s.bnToUnpaddedBuffer(this.gasPrice),s.bnToUnpaddedBuffer(this.gasLimit),void 0!==this.to?this.to.buf:t.from([]),s.bnToUnpaddedBuffer(this.value),this.data,void 0!==this.v?s.bnToUnpaddedBuffer(this.v):t.from([]),void 0!==this.r?s.bnToUnpaddedBuffer(this.r):t.from([]),void 0!==this.s?s.bnToUnpaddedBuffer(this.s):t.from([])]},r.prototype.serialize=function(){return s.rlp.encode(this.raw())},r.prototype._getMessageToSign=function(){var e=[s.bnToUnpaddedBuffer(this.nonce),s.bnToUnpaddedBuffer(this.gasPrice),s.bnToUnpaddedBuffer(this.gasLimit),void 0!==this.to?this.to.buf:t.from([]),s.bnToUnpaddedBuffer(this.value),this.data];return this.supports(u.Capability.EIP155ReplayProtection)&&(e.push(s.toBuffer(this.common.chainIdBN())),e.push(s.unpadBuffer(s.toBuffer(0))),e.push(s.unpadBuffer(s.toBuffer(0)))),e},r.prototype.getMessageToSign=function(t){void 0===t&&(t=!0);var e=this._getMessageToSign();return t?s.rlphash(e):e},r.prototype.getUpfrontCost=function(){return this.gasLimit.mul(this.gasPrice).add(this.value)},r.prototype.hash=function(){return s.rlphash(this.raw())},r.prototype.getMessageToVerifySignature=function(){if(!this.isSigned())throw Error("This transaction is not signed");var t=this._getMessageToSign();return s.rlphash(t)},r.prototype.getSenderPublicKey=function(){var t,e=this.getMessageToVerifySignature();if(this.common.gteHardfork("homestead")&&(null===(t=this.s)||void 0===t?void 0:t.gt(u.N_DIV_2)))throw new Error("Invalid Signature: s-values greater than secp256k1n/2 are considered invalid");var r=this.v,n=this.r,i=this.s;try{return s.ecrecover(e,r,s.bnToUnpaddedBuffer(n),s.bnToUnpaddedBuffer(i),this.supports(u.Capability.EIP155ReplayProtection)?this.common.chainIdBN():void 0)}catch(t){throw new Error("Invalid Signature")}},r.prototype._processSignature=function(t,e,n){var i=new s.BN(t);this.supports(u.Capability.EIP155ReplayProtection)&&i.iadd(this.common.chainIdBN().muln(2).addn(8));var o={common:this.common};return r.fromTxData({nonce:this.nonce,gasPrice:this.gasPrice,gasLimit:this.gasLimit,to:this.to,value:this.value,data:this.data,v:i,r:new s.BN(e),s:new s.BN(n)},o)},r.prototype.toJSON=function(){return{nonce:s.bnToHex(this.nonce),gasPrice:s.bnToHex(this.gasPrice),gasLimit:s.bnToHex(this.gasLimit),to:void 0!==this.to?this.to.toString():void 0,value:s.bnToHex(this.value),data:"0x"+this.data.toString("hex"),v:void 0!==this.v?s.bnToHex(this.v):void 0,r:void 0!==this.r?s.bnToHex(this.r):void 0,s:void 0!==this.s?s.bnToHex(this.s):void 0}},r.prototype._validateTxV=function(t,e){var r;if(void 0!==t&&!t.eqn(0)&&(!e||e.gteHardfork("spuriousDragon"))&&!t.eqn(27)&&!t.eqn(28))if(e){var n=e.chainIdBN().muln(2);if(!(t.eq(n.addn(35))||t.eq(n.addn(36))))throw new Error("Incompatible EIP155-based V "+t.toString()+" and chain id "+e.chainIdBN().toString()+". See the Common parameter of the Transaction constructor to set the chain id.")}else{var i=void 0;i=t.subn(35).isEven()?35:36,r=t.subn(i).divn(2)}return this._getCommon(e,r)},r.prototype._unsignedTxImplementsEIP155=function(){return this.common.gteHardfork("spuriousDragon")},r.prototype._signedTxImplementsEIP155=function(){if(!this.isSigned())throw Error("This transaction is not signed");var t=this.common.gteHardfork("spuriousDragon"),e=this.v,r=this.common.chainIdBN().muln(2);return(e.eq(r.addn(35))||e.eq(r.addn(36)))&&t},r}(f.BaseTransaction);e.default=c}).call(this,r(1).Buffer)},function(t,e){},function(t,e,r){"use strict";function n(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);"Object"===r&&t.constructor&&(r=t.constructor.name);if("Map"===r||"Set"===r)return Array.from(t);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return i(t,e)}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==r.return||r.return()}finally{if(u)throw a}}}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&void 0!==arguments[0]?arguments[0]:function(t){return new Uint8Array(t)},e=arguments.length>1?arguments[1]:void 0;return"function"==typeof t&&(t=t(e)),y("output",t,e),t}function _(t){return Object.prototype.toString.call(t).slice(8,-1)}t.exports=function(t){return{contextRandomize:function(e){switch(v(null===e||e instanceof Uint8Array,"Expected seed to be an Uint8Array or null"),null!==e&&y("seed",e,32),t.contextRandomize(e)){case 1:throw new Error(u)}},privateKeyVerify:function(e){return y("private key",e,32),0===t.privateKeyVerify(e)},privateKeyNegate:function(e){switch(y("private key",e,32),t.privateKeyNegate(e)){case 0:return e;case 1:throw new Error(o)}},privateKeyTweakAdd:function(e,r){switch(y("private key",e,32),y("tweak",r,32),t.privateKeyTweakAdd(e,r)){case 0:return e;case 1:throw new Error(a)}},privateKeyTweakMul:function(e,r){switch(y("private key",e,32),y("tweak",r,32),t.privateKeyTweakMul(e,r)){case 0:return e;case 1:throw new Error(s)}},publicKeyVerify:function(e){return y("public key",e,[33,65]),0===t.publicKeyVerify(e)},publicKeyCreate:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0;switch(y("private key",e,32),g(r),n=w(n,r?33:65),t.publicKeyCreate(n,e)){case 0:return n;case 1:throw new Error(f);case 2:throw new Error(h)}},publicKeyConvert:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0;switch(y("public key",e,[33,65]),g(r),n=w(n,r?33:65),t.publicKeyConvert(n,e)){case 0:return n;case 1:throw new Error(c);case 2:throw new Error(h)}},publicKeyNegate:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0;switch(y("public key",e,[33,65]),g(r),n=w(n,r?33:65),t.publicKeyNegate(n,e)){case 0:return n;case 1:throw new Error(c);case 2:throw new Error(o);case 3:throw new Error(h)}},publicKeyCombine:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2?arguments[2]:void 0;v(Array.isArray(e),"Expected public keys to be an Array"),v(e.length>0,"Expected public keys array will have more than zero items");var o,a=n(e);try{for(a.s();!(o=a.n()).done;){var s=o.value;y("public key",s,[33,65])}}catch(t){a.e(t)}finally{a.f()}switch(g(r),i=w(i,r?33:65),t.publicKeyCombine(i,e)){case 0:return i;case 1:throw new Error(c);case 2:throw new Error(l);case 3:throw new Error(h)}},publicKeyTweakAdd:function(e,r){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=arguments.length>3?arguments[3]:void 0;switch(y("public key",e,[33,65]),y("tweak",r,32),g(n),i=w(i,n?33:65),t.publicKeyTweakAdd(i,e,r)){case 0:return i;case 1:throw new Error(c);case 2:throw new Error(a)}},publicKeyTweakMul:function(e,r){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=arguments.length>3?arguments[3]:void 0;switch(y("public key",e,[33,65]),y("tweak",r,32),g(n),i=w(i,n?33:65),t.publicKeyTweakMul(i,e,r)){case 0:return i;case 1:throw new Error(c);case 2:throw new Error(s)}},signatureNormalize:function(e){switch(y("signature",e,64),t.signatureNormalize(e)){case 0:return e;case 1:throw new Error(d)}},signatureExport:function(e,r){y("signature",e,64);var n={output:r=w(r,72),outputlen:72};switch(t.signatureExport(n,e)){case 0:return r.slice(0,n.outputlen);case 1:throw new Error(d);case 2:throw new Error(o)}},signatureImport:function(e,r){switch(y("signature",e),r=w(r,64),t.signatureImport(r,e)){case 0:return r;case 1:throw new Error(d);case 2:throw new Error(o)}},ecdsaSign:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;y("message",e,32),y("private key",r,32),v("Object"===_(n),"Expected options to be an Object"),void 0!==n.data&&y("options.data",n.data),void 0!==n.noncefn&&v("Function"===_(n.noncefn),"Expected options.noncefn to be a Function");var a={signature:i=w(i,64),recid:null};switch(t.ecdsaSign(a,e,r,n.data,n.noncefn)){case 0:return a;case 1:throw new Error(p);case 2:throw new Error(o)}},ecdsaVerify:function(e,r,n){switch(y("signature",e,64),y("message",r,32),y("public key",n,[33,65]),t.ecdsaVerify(e,r,n)){case 0:return!0;case 3:return!1;case 1:throw new Error(d);case 2:throw new Error(c)}},ecdsaRecover:function(e,r,n){var i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=arguments.length>4?arguments[4]:void 0;switch(y("signature",e,64),v("Number"===_(r)&&r>=0&&r<=3,"Expected recovery id to be a Number within interval [0, 3]"),y("message",n,32),g(i),a=w(a,i?33:65),t.ecdsaRecover(a,e,r,n)){case 0:return a;case 1:throw new Error(d);case 2:throw new Error(m);case 3:throw new Error(o)}},ecdh:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;switch(y("public key",e,[33,65]),y("private key",r,32),v("Object"===_(n),"Expected options to be an Object"),void 0!==n.data&&y("options.data",n.data),void 0!==n.hashfn?(v("Function"===_(n.hashfn),"Expected options.hashfn to be a Function"),void 0!==n.xbuf&&y("options.xbuf",n.xbuf,32),void 0!==n.ybuf&&y("options.ybuf",n.ybuf,32),y("output",i)):i=w(i,32),t.ecdh(i,e,r,n.data,n.hashfn,n.xbuf,n.ybuf)){case 0:return i;case 1:throw new Error(c);case 2:throw new Error(b)}}}}},function(t,e,r){"use strict";var n=new(0,r(54).ec)("secp256k1"),i=n.curve,o=i.n.constructor;function a(t){var e=t[0];switch(e){case 2:case 3:return 33!==t.length?null:function(t,e){var r=new o(e);if(r.cmp(i.p)>=0)return null;var a=(r=r.toRed(i.red)).redSqr().redIMul(r).redIAdd(i.b).redSqrt();return 3===t!==a.isOdd()&&(a=a.redNeg()),n.keyPair({pub:{x:r,y:a}})}(e,t.subarray(1,33));case 4:case 6:case 7:return 65!==t.length?null:function(t,e,r){var a=new o(e),s=new o(r);if(a.cmp(i.p)>=0||s.cmp(i.p)>=0)return null;if(a=a.toRed(i.red),s=s.toRed(i.red),(6===t||7===t)&&s.isOdd()!==(7===t))return null;var u=a.redSqr().redIMul(a);return s.redSqr().redISub(u.redIAdd(i.b)).isZero()?n.keyPair({pub:{x:a,y:s}}):null}(e,t.subarray(1,33),t.subarray(33,65));default:return null}}function s(t,e){for(var r=e.encode(null,33===t.length),n=0;n=0)return 1;if(r.iadd(new o(t)),r.cmp(i.n)>=0&&r.isub(i.n),r.isZero())return 1;var n=r.toArrayLike(Uint8Array,"be",32);return t.set(n),0},privateKeyTweakMul:function(t,e){var r=new o(e);if(r.cmp(i.n)>=0||r.isZero())return 1;r.imul(new o(t)),r.cmp(i.n)>=0&&(r=r.umod(i.n));var n=r.toArrayLike(Uint8Array,"be",32);return t.set(n),0},publicKeyVerify:function(t){return null===a(t)?1:0},publicKeyCreate:function(t,e){var r=new o(e);return r.cmp(i.n)>=0||r.isZero()?1:(s(t,n.keyFromPrivate(e).getPublic()),0)},publicKeyConvert:function(t,e){var r=a(e);return null===r?1:(s(t,r.getPublic()),0)},publicKeyNegate:function(t,e){var r=a(e);if(null===r)return 1;var n=r.getPublic();return n.y=n.y.redNeg(),s(t,n),0},publicKeyCombine:function(t,e){for(var r=new Array(e.length),n=0;n=0)return 2;var u=n.getPublic().add(i.g.mul(r));return u.isInfinity()?2:(s(t,u),0)},publicKeyTweakMul:function(t,e,r){var n=a(e);return null===n?1:(r=new o(r)).cmp(i.n)>=0||r.isZero()?2:(s(t,n.getPublic().mul(r)),0)},signatureNormalize:function(t){var e=new o(t.subarray(0,32)),r=new o(t.subarray(32,64));return e.cmp(i.n)>=0||r.cmp(i.n)>=0?1:(1===r.cmp(n.nh)&&t.set(i.n.sub(r).toArrayLike(Uint8Array,"be",32),32),0)},signatureExport:function(t,e){var r=e.subarray(0,32),n=e.subarray(32,64);if(new o(r).cmp(i.n)>=0)return 1;if(new o(n).cmp(i.n)>=0)return 1;var a=t.output,s=a.subarray(4,37);s[0]=0,s.set(r,1);for(var u=33,f=0;u>1&&0===s[f]&&!(128&s[f+1]);--u,++f);if(128&(s=s.subarray(f))[0])return 1;if(u>1&&0===s[0]&&!(128&s[1]))return 1;var c=a.subarray(39,72);c[0]=0,c.set(n,1);for(var h=33,l=0;h>1&&0===c[l]&&!(128&c[l+1]);--h,++l);return 128&(c=c.subarray(l))[0]||h>1&&0===c[0]&&!(128&c[1])?1:(t.outputlen=6+u+h,a[0]=48,a[1]=t.outputlen-2,a[2]=2,a[3]=s.length,a.set(s,4),a[4+u]=2,a[5+u]=c.length,a.set(c,6+u),0)},signatureImport:function(t,e){if(e.length<8)return 1;if(e.length>72)return 1;if(48!==e[0])return 1;if(e[1]!==e.length-2)return 1;if(2!==e[2])return 1;var r=e[3];if(0===r)return 1;if(5+r>=e.length)return 1;if(2!==e[4+r])return 1;var n=e[5+r];if(0===n)return 1;if(6+r+n!==e.length)return 1;if(128&e[4])return 1;if(r>1&&0===e[4]&&!(128&e[5]))return 1;if(128&e[r+6])return 1;if(n>1&&0===e[r+6]&&!(128&e[r+7]))return 1;var a=e.subarray(4,4+r);if(33===a.length&&0===a[0]&&(a=a.subarray(1)),a.length>32)return 1;var s=e.subarray(6+r);if(33===s.length&&0===s[0]&&(s=s.slice(1)),s.length>32)throw new Error("S length is too long");var u=new o(a);u.cmp(i.n)>=0&&(u=new o(0));var f=new o(e.subarray(6+r));return f.cmp(i.n)>=0&&(f=new o(0)),t.set(u.toArrayLike(Uint8Array,"be",32),0),t.set(f.toArrayLike(Uint8Array,"be",32),32),0},ecdsaSign:function(t,e,r,a,s){if(s){var u=s;s=function(t){var n=u(e,r,null,a,t);if(!(n instanceof Uint8Array&&32===n.length))throw new Error("This is the way");return new o(n)}}var f,c=new o(r);if(c.cmp(i.n)>=0||c.isZero())return 1;try{f=n.sign(e,r,{canonical:!0,k:s,pers:a})}catch(t){return 1}return t.signature.set(f.r.toArrayLike(Uint8Array,"be",32),0),t.signature.set(f.s.toArrayLike(Uint8Array,"be",32),32),t.recid=f.recoveryParam,0},ecdsaVerify:function(t,e,r){var s={r:t.subarray(0,32),s:t.subarray(32,64)},u=new o(s.r),f=new o(s.s);if(u.cmp(i.n)>=0||f.cmp(i.n)>=0)return 1;if(1===f.cmp(n.nh)||u.isZero()||f.isZero())return 3;var c=a(r);if(null===c)return 2;var h=c.getPublic();return n.verify(e,s,h)?0:3},ecdsaRecover:function(t,e,r,a){var u,f={r:e.slice(0,32),s:e.slice(32,64)},c=new o(f.r),h=new o(f.s);if(c.cmp(i.n)>=0||h.cmp(i.n)>=0)return 1;if(c.isZero()||h.isZero())return 2;try{u=n.recoverPubKey(a,f,r)}catch(t){return 2}return s(t,u),0},ecdh:function(t,e,r,s,u,f,c){var h=a(e);if(null===h)return 1;var l=new o(r);if(l.cmp(i.n)>=0||l.isZero())return 2;var d=h.getPublic().mul(l);if(void 0===u)for(var p=d.encode(null,!0),m=n.hash().update(p).digest(),b=0;b<32;++b)t[b]=m[b];else{f||(f=new Uint8Array(32));for(var v=d.getX().toArray("be",32),y=0;y<32;++y)f[y]=v[y];c||(c=new Uint8Array(32));for(var g=d.getY().toArray("be",32),w=0;w<32;++w)c[w]=g[w];var _=u(f,c,s);if(!(_ instanceof Uint8Array&&_.length===t.length))return 2;t.set(_)}return 0}}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(22);e.getRandomBytes=function(t){return new Promise((function(e,r){n(t,(function(t,n){t?r(t):e(n)}))}))},e.getRandomBytesSync=function(t){return n(t)}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(439),i=r(440);e.keccak224=n.createHashFunction((function(){return i("keccak224")})),e.keccak256=n.createHashFunction((function(){return i("keccak256")})),e.keccak384=n.createHashFunction((function(){return i("keccak384")})),e.keccak512=n.createHashFunction((function(){return i("keccak512")}))},function(t,e,r){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),e.createHashFunction=function(e){return function(r){var n=e();return n.update(r),t.from(n.digest())}}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";t.exports=r(441)(r(444))},function(t,e,r){"use strict";var n=r(442),i=r(443);t.exports=function(t){var e=n(t),r=i(t);return function(t,n){switch("string"==typeof t?t.toLowerCase():t){case"keccak224":return new e(1152,448,null,224,n);case"keccak256":return new e(1088,512,null,256,n);case"keccak384":return new e(832,768,null,384,n);case"keccak512":return new e(576,1024,null,512,n);case"sha3-224":return new e(1152,448,6,224,n);case"sha3-256":return new e(1088,512,6,256,n);case"sha3-384":return new e(832,768,6,384,n);case"sha3-512":return new e(576,1024,6,512,n);case"shake128":return new r(1344,256,31,n);case"shake256":return new r(1088,512,31,n);default:throw new Error("Invald algorithm: "+t)}}}},function(t,e,r){"use strict";(function(e){var n=r(0),i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13));function f(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var c=r(87).Transform;t.exports=function(t){return function(r){(0,a.default)(s,r);var n=f(s);function s(e,r,o,a,u){var f;return(0,i.default)(this,s),(f=n.call(this,u))._rate=e,f._capacity=r,f._delimitedSuffix=o,f._hashBitLength=a,f._options=u,f._state=new t,f._state.initialize(e,r),f._finalized=!1,f}return(0,o.default)(s,[{key:"_transform",value:function(t,e,r){var n=null;try{this.update(t,e)}catch(t){n=t}r(n)}},{key:"_flush",value:function(t){var e=null;try{this.push(this.digest())}catch(t){e=t}t(e)}},{key:"update",value:function(t,r){if(!e.isBuffer(t)&&"string"!=typeof t)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Digest already called");return e.isBuffer(t)||(t=e.from(t,r)),this._state.absorb(t),this}},{key:"digest",value:function(t){if(this._finalized)throw new Error("Digest already called");this._finalized=!0,this._delimitedSuffix&&this._state.absorbLastFewBits(this._delimitedSuffix);var e=this._state.squeeze(this._hashBitLength/8);return void 0!==t&&(e=e.toString(t)),this._resetState(),e}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var t=new s(this._rate,this._capacity,this._delimitedSuffix,this._hashBitLength,this._options);return this._state.copy(t._state),t._finalized=this._finalized,t}}]),s}(c)}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(e){var n=r(0),i=n(r(5)),o=n(r(9)),a=n(r(14)),s=n(r(15)),u=n(r(13));function f(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=(0,u.default)(t);if(e){var i=(0,u.default)(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return(0,s.default)(this,r)}}var c=r(87).Transform;t.exports=function(t){return function(r){(0,a.default)(s,r);var n=f(s);function s(e,r,o,a){var u;return(0,i.default)(this,s),(u=n.call(this,a))._rate=e,u._capacity=r,u._delimitedSuffix=o,u._options=a,u._state=new t,u._state.initialize(e,r),u._finalized=!1,u}return(0,o.default)(s,[{key:"_transform",value:function(t,e,r){var n=null;try{this.update(t,e)}catch(t){n=t}r(n)}},{key:"_flush",value:function(){}},{key:"_read",value:function(t){this.push(this.squeeze(t))}},{key:"update",value:function(t,r){if(!e.isBuffer(t)&&"string"!=typeof t)throw new TypeError("Data must be a string or a buffer");if(this._finalized)throw new Error("Squeeze already called");return e.isBuffer(t)||(t=e.from(t,r)),this._state.absorb(t),this}},{key:"squeeze",value:function(t,e){this._finalized||(this._finalized=!0,this._state.absorbLastFewBits(this._delimitedSuffix));var r=this._state.squeeze(t);return void 0!==e&&(r=r.toString(e)),r}},{key:"_resetState",value:function(){return this._state.initialize(this._rate,this._capacity),this}},{key:"_clone",value:function(){var t=new s(this._rate,this._capacity,this._delimitedSuffix,this._options);return this._state.copy(t._state),t._finalized=this._finalized,t}}]),s}(c)}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(e){var n=r(445);function i(){this.state=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.blockSize=null,this.count=0,this.squeezing=!1}i.prototype.initialize=function(t,e){for(var r=0;r<50;++r)this.state[r]=0;this.blockSize=t/8,this.count=0,this.squeezing=!1},i.prototype.absorb=function(t){for(var e=0;e>>this.count%4*8&255,this.count+=1,this.count===this.blockSize&&(n.p1600(this.state),this.count=0);return r},i.prototype.copy=function(t){for(var e=0;e<50;++e)t.state[e]=this.state[e];t.blockSize=this.blockSize,t.count=this.count,t.squeezing=this.squeezing},t.exports=i}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];e.p1600=function(t){for(var e=0;e<24;++e){var r=t[0]^t[10]^t[20]^t[30]^t[40],i=t[1]^t[11]^t[21]^t[31]^t[41],o=t[2]^t[12]^t[22]^t[32]^t[42],a=t[3]^t[13]^t[23]^t[33]^t[43],s=t[4]^t[14]^t[24]^t[34]^t[44],u=t[5]^t[15]^t[25]^t[35]^t[45],f=t[6]^t[16]^t[26]^t[36]^t[46],c=t[7]^t[17]^t[27]^t[37]^t[47],h=t[8]^t[18]^t[28]^t[38]^t[48],l=t[9]^t[19]^t[29]^t[39]^t[49],d=h^(o<<1|a>>>31),p=l^(a<<1|o>>>31),m=t[0]^d,b=t[1]^p,v=t[10]^d,y=t[11]^p,g=t[20]^d,w=t[21]^p,_=t[30]^d,k=t[31]^p,M=t[40]^d,S=t[41]^p;d=r^(s<<1|u>>>31),p=i^(u<<1|s>>>31);var A=t[2]^d,x=t[3]^p,E=t[12]^d,O=t[13]^p,P=t[22]^d,B=t[23]^p,T=t[32]^d,R=t[33]^p,I=t[42]^d,C=t[43]^p;d=o^(f<<1|c>>>31),p=a^(c<<1|f>>>31);var U=t[4]^d,j=t[5]^p,N=t[14]^d,L=t[15]^p,F=t[24]^d,D=t[25]^p,q=t[34]^d,H=t[35]^p,z=t[44]^d,K=t[45]^p;d=s^(h<<1|l>>>31),p=u^(l<<1|h>>>31);var G=t[6]^d,V=t[7]^p,W=t[16]^d,Z=t[17]^p,J=t[26]^d,X=t[27]^p,Y=t[36]^d,$=t[37]^p,Q=t[46]^d,tt=t[47]^p;d=f^(r<<1|i>>>31),p=c^(i<<1|r>>>31);var et=t[8]^d,rt=t[9]^p,nt=t[18]^d,it=t[19]^p,ot=t[28]^d,at=t[29]^p,st=t[38]^d,ut=t[39]^p,ft=t[48]^d,ct=t[49]^p,ht=m,lt=b,dt=y<<4|v>>>28,pt=v<<4|y>>>28,mt=g<<3|w>>>29,bt=w<<3|g>>>29,vt=k<<9|_>>>23,yt=_<<9|k>>>23,gt=M<<18|S>>>14,wt=S<<18|M>>>14,_t=A<<1|x>>>31,kt=x<<1|A>>>31,Mt=O<<12|E>>>20,St=E<<12|O>>>20,At=P<<10|B>>>22,xt=B<<10|P>>>22,Et=R<<13|T>>>19,Ot=T<<13|R>>>19,Pt=I<<2|C>>>30,Bt=C<<2|I>>>30,Tt=j<<30|U>>>2,Rt=U<<30|j>>>2,It=N<<6|L>>>26,Ct=L<<6|N>>>26,Ut=D<<11|F>>>21,jt=F<<11|D>>>21,Nt=q<<15|H>>>17,Lt=H<<15|q>>>17,Ft=K<<29|z>>>3,Dt=z<<29|K>>>3,qt=G<<28|V>>>4,Ht=V<<28|G>>>4,zt=Z<<23|W>>>9,Kt=W<<23|Z>>>9,Gt=J<<25|X>>>7,Vt=X<<25|J>>>7,Wt=Y<<21|$>>>11,Zt=$<<21|Y>>>11,Jt=tt<<24|Q>>>8,Xt=Q<<24|tt>>>8,Yt=et<<27|rt>>>5,$t=rt<<27|et>>>5,Qt=nt<<20|it>>>12,te=it<<20|nt>>>12,ee=at<<7|ot>>>25,re=ot<<7|at>>>25,ne=st<<8|ut>>>24,ie=ut<<8|st>>>24,oe=ft<<14|ct>>>18,ae=ct<<14|ft>>>18;t[0]=ht^~Mt&Ut,t[1]=lt^~St&jt,t[10]=qt^~Qt&mt,t[11]=Ht^~te&bt,t[20]=_t^~It&Gt,t[21]=kt^~Ct&Vt,t[30]=Yt^~dt&At,t[31]=$t^~pt&xt,t[40]=Tt^~zt&ee,t[41]=Rt^~Kt&re,t[2]=Mt^~Ut&Wt,t[3]=St^~jt&Zt,t[12]=Qt^~mt&Et,t[13]=te^~bt&Ot,t[22]=It^~Gt&ne,t[23]=Ct^~Vt&ie,t[32]=dt^~At&Nt,t[33]=pt^~xt&Lt,t[42]=zt^~ee&vt,t[43]=Kt^~re&yt,t[4]=Ut^~Wt&oe,t[5]=jt^~Zt&ae,t[14]=mt^~Et&Ft,t[15]=bt^~Ot&Dt,t[24]=Gt^~ne>,t[25]=Vt^~ie&wt,t[34]=At^~Nt&Jt,t[35]=xt^~Lt&Xt,t[44]=ee^~vt&Pt,t[45]=re^~yt&Bt,t[6]=Wt^~oe&ht,t[7]=Zt^~ae<,t[16]=Et^~Ft&qt,t[17]=Ot^~Dt&Ht,t[26]=ne^~gt&_t,t[27]=ie^~wt&kt,t[36]=Nt^~Jt&Yt,t[37]=Lt^~Xt&$t,t[46]=vt^~Pt&Tt,t[47]=yt^~Bt&Rt,t[8]=oe^~ht&Mt,t[9]=ae^~lt&St,t[18]=Ft^~qt&Qt,t[19]=Dt^~Ht&te,t[28]=gt^~_t&It,t[29]=wt^~kt&Ct,t[38]=Jt^~Yt&dt,t[39]=Xt^~$t&pt,t[48]=Pt^~Tt&zt,t[49]=Bt^~Rt&Kt,t[0]^=n[2*e],t[1]^=n[2*e+1]}}},function(t,e,r){"use strict";(function(t){var n=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.Address=void 0;var i=n(r(100)),o=n(r(34)),a=r(35),s=r(199),u=function(){function e(t){i.default(20===t.length,"Invalid address length"),this.buf=t}return e.zero=function(){return new e(a.zeros(20))},e.fromString=function(t){return i.default(s.isValidAddress(t),"Invalid address"),new e(a.toBuffer(t))},e.fromPublicKey=function(r){return i.default(t.isBuffer(r),"Public key should be Buffer"),new e(s.pubToAddress(r))},e.fromPrivateKey=function(r){return i.default(t.isBuffer(r),"Private key should be Buffer"),new e(s.privateToAddress(r))},e.generate=function(r,n){return i.default(o.default.isBN(n)),new e(s.generateAddress(r.buf,n.toArrayLike(t)))},e.generate2=function(r,n,o){return i.default(t.isBuffer(n)),i.default(t.isBuffer(o)),new e(s.generateAddress2(r.buf,n,o))},e.prototype.equals=function(t){return this.buf.equals(t.buf)},e.prototype.isZero=function(){return this.equals(e.zero())},e.prototype.isPrecompileOrSystemAddress=function(){var t=new o.default(this.buf),e=new o.default(0),r=new o.default("ffff","hex");return t.gte(e)&&t.lte(r)},e.prototype.toString=function(){return"0x"+this.buf.toString("hex")},e.prototype.toBuffer=function(){return t.from(this.buf)},e}();e.Address=u}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(t){var n=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.hashPersonalMessage=e.isValidSignature=e.fromRpcSig=e.toCompactSig=e.toRpcSig=e.ecrecover=e.ecsign=void 0;var i=r(200),o=n(r(34)),a=r(35),s=r(102),u=r(70),f=r(103);function c(t,e){var r=f.toType(t,f.TypeOutput.BN);if(!e)return r.subn(27);var n=f.toType(e,f.TypeOutput.BN);return r.sub(n.muln(2).addn(35))}function h(t){var e=new o.default(t);return e.eqn(0)||e.eqn(1)}e.ecsign=function(e,r,n){var o=i.ecdsaSign(e,r),a=o.signature,s=o.recid,u=t.from(a.slice(0,32)),c=t.from(a.slice(32,64));if(!n||"number"==typeof n){if(n&&!Number.isSafeInteger(n))throw new Error("The provided number is greater than MAX_SAFE_INTEGER (please use an alternative input type)");return{r:u,s:c,v:n?s+(2*n+35):s+27}}return{r:u,s:c,v:f.toType(n,f.TypeOutput.BN).muln(2).addn(35).addn(s).toArrayLike(t)}},e.ecrecover=function(e,r,n,o,s){var u=t.concat([a.setLengthLeft(n,32),a.setLengthLeft(o,32)],64),f=c(r,s);if(!h(f))throw new Error("Invalid signature v value");var l=i.ecdsaRecover(u,f.toNumber(),e);return t.from(i.publicKeyConvert(l,!1).slice(1))},e.toRpcSig=function(e,r,n,i){if(!h(c(e,i)))throw new Error("Invalid signature v value");return a.bufferToHex(t.concat([a.setLengthLeft(r,32),a.setLengthLeft(n,32),a.toBuffer(e)]))},e.toCompactSig=function(e,r,n,i){if(!h(c(e,i)))throw new Error("Invalid signature v value");var o=f.toType(e,f.TypeOutput.Number),s=n;return(o>28&&o%2==1||1===o||28===o)&&((s=t.from(n))[0]|=128),a.bufferToHex(t.concat([a.setLengthLeft(r,32),a.setLengthLeft(s,32)]))},e.fromRpcSig=function(t){var e,r,n,i=a.toBuffer(t);if(i.length>=65)e=i.slice(0,32),r=i.slice(32,64),n=a.bufferToInt(i.slice(64));else{if(64!==i.length)throw new Error("Invalid signature length");e=i.slice(0,32),r=i.slice(32,64),n=a.bufferToInt(i.slice(32,33))>>7,r[0]&=127}return n<27&&(n+=27),{v:n,r:e,s:r}},e.isValidSignature=function(t,e,r,n,i){void 0===n&&(n=!0);var a=new o.default("7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0",16),s=new o.default("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",16);if(32!==e.length||32!==r.length)return!1;if(!h(c(t,i)))return!1;var u=new o.default(e),f=new o.default(r);return!(u.isZero()||u.gt(s)||f.isZero()||f.gt(s))&&(!n||1!==f.cmp(a))},e.hashPersonalMessage=function(e){u.assertIsBuffer(e);var r=t.from("Ethereum Signed Message:\n"+e.length.toString(),"utf-8");return s.keccak(t.concat([r,e]))}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(t){var n=r(0)(r(2)),i=Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]},o=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e},a=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.hasOwnProperty.call(t,r)&&i(e,t,r);return o(e,t),e},s=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.defineProperties=void 0;var u=s(r(100)),f=a(r(42)),c=a(r(69)),h=r(35);e.defineProperties=function(e,r,i){if(e.raw=[],e._fields=[],e.toJSON=function(t){if(void 0===t&&(t=!1),t){var r={};return e._fields.forEach((function(t){r[t]="0x"+e[t].toString("hex")})),r}return h.baToJSON(e.raw)},e.serialize=function(){return c.encode(e.raw)},r.forEach((function(r,n){function i(){return e.raw[n]}function o(i){"00"!==(i=h.toBuffer(i)).toString("hex")||r.allowZero||(i=t.allocUnsafe(0)),r.allowLess&&r.length?(i=h.unpadBuffer(i),u.default(r.length>=i.length,"The field "+r.name+" must not have more "+r.length+" bytes")):r.allowZero&&0===i.length||!r.length||u.default(r.length===i.length,"The field "+r.name+" must have byte length of "+r.length),e.raw[n]=i}e._fields.push(r.name),Object.defineProperty(e,r.name,{enumerable:!0,configurable:!0,get:i,set:o}),r.default&&(e[r.name]=r.default),r.alias&&Object.defineProperty(e,r.alias,{enumerable:!1,configurable:!0,set:o,get:i})})),i)if("string"==typeof i&&(i=t.from(f.stripHexPrefix(i),"hex")),t.isBuffer(i)&&(i=c.decode(i)),Array.isArray(i)){if(i.length>e._fields.length)throw new Error("wrong number of fields in data");i.forEach((function(t,r){e[e._fields[r]]=h.toBuffer(t)}))}else{if("object"!==(0,n.default)(i))throw new Error("invalid data");var o=Object.keys(i);r.forEach((function(t){-1!==o.indexOf(t.name)&&(e[t.name]=i[t.name]),-1!==o.indexOf(t.alias)&&(e[t.alias]=i[t.alias])}))}}}).call(this,r(1).Buffer)},function(t,e,r){"use strict";var n=Object.create?function(t,e,r,n){void 0===n&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]},i=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e},o=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.hasOwnProperty.call(t,r)&&n(e,t,r);return i(e,t),e},a=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.rlp=e.BN=void 0;var s=a(r(34));e.BN=s.default;var u=o(r(69));e.rlp=u},function(t,e,r){"use strict";(function(t){var n,i,o=r(0)(r(2));i=function(t){t.version="1.2.0";var e=function(){for(var t=0,e=new Array(256),r=0;256!=r;++r)t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=r)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1,e[r]=t;return"undefined"!=typeof Int32Array?new Int32Array(e):e}();t.table=e,t.bstr=function(t,r){for(var n=-1^r,i=t.length-1,o=0;o>>8^e[255&(n^t.charCodeAt(o++))])>>>8^e[255&(n^t.charCodeAt(o++))];return o===i&&(n=n>>>8^e[255&(n^t.charCodeAt(o))]),-1^n},t.buf=function(t,r){if(t.length>1e4)return function(t,r){for(var n=-1^r,i=t.length-7,o=0;o>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])];for(;o>>8^e[255&(n^t[o++])];return-1^n}(t,r);for(var n=-1^r,i=t.length-3,o=0;o>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])])>>>8^e[255&(n^t[o++])];for(;o>>8^e[255&(n^t[o++])];return-1^n},t.str=function(t,r){for(var n,i,o=-1^r,a=0,s=t.length;a>>8^e[255&(o^n)]:n<2048?o=(o=o>>>8^e[255&(o^(192|n>>6&31))])>>>8^e[255&(o^(128|63&n))]:n>=55296&&n<57344?(n=64+(1023&n),i=1023&t.charCodeAt(a++),o=(o=(o=(o=o>>>8^e[255&(o^(240|n>>8&7))])>>>8^e[255&(o^(128|n>>2&63))])>>>8^e[255&(o^(128|i>>6&15|(3&n)<<4))])>>>8^e[255&(o^(128|63&i))]):o=(o=(o=o>>>8^e[255&(o^(224|n>>12&15))])>>>8^e[255&(o^(128|n>>6&63))])>>>8^e[255&(o^(128|63&n))];return-1^o}},"undefined"==typeof DO_NOT_EXPORT_CRC?"object"===(0,o.default)(e)?i(e):void 0===(n=function(){var t={};return i(t),t}.call(e,r,e,t))||(t.exports=n):i({})}).call(this,r(17)(t))},function(t,e,r){"use strict";var n=function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.chains=e._getInitializedChains=void 0;var o=i(r(452)),a=i(r(453)),s=i(r(454)),u=i(r(455)),f=i(r(456)),c=i(r(457));function h(t){var e,r,i={1:"mainnet",3:"ropsten",4:"rinkeby",42:"kovan",5:"goerli",123:"calaveras"},h={mainnet:o.default,ropsten:a.default,rinkeby:s.default,kovan:u.default,goerli:f.default,calaveras:c.default};if(t)try{for(var l=n(t),d=l.next();!d.done;d=l.next()){var p=d.value,m=p.name;i[p.chainId.toString()]=m,h[m]=p}}catch(t){e={error:t}}finally{try{d&&!d.done&&(r=l.return)&&r.call(l)}finally{if(e)throw e.error}}return h.names=i,h}e._getInitializedChains=h,e.chains=h()},function(t){t.exports=JSON.parse('{"name":"mainnet","chainId":1,"networkId":1,"defaultHardfork":"istanbul","consensus":{"type":"pow","algorithm":"ethash","ethash":{}},"comment":"The Ethereum main chain","url":"https://ethstats.net/","genesis":{"hash":"0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3","timestamp":null,"gasLimit":5000,"difficulty":17179869184,"nonce":"0x0000000000000042","extraData":"0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa","stateRoot":"0xd7f8974fb5ac78d9ac099b9ad5018bedc2ce0a72dad1827a1709da30580f0544"},"hardforks":[{"name":"chainstart","block":0,"forkHash":"0xfc64ec04"},{"name":"homestead","block":1150000,"forkHash":"0x97c2c34c"},{"name":"dao","block":1920000,"forkHash":"0x91d1f948"},{"name":"tangerineWhistle","block":2463000,"forkHash":"0x7a64da13"},{"name":"spuriousDragon","block":2675000,"forkHash":"0x3edd5b10"},{"name":"byzantium","block":4370000,"forkHash":"0xa00bc324"},{"name":"constantinople","block":7280000,"forkHash":"0x668db0af"},{"name":"petersburg","block":7280000,"forkHash":"0x668db0af"},{"name":"istanbul","block":9069000,"forkHash":"0x879d6e30"},{"name":"muirGlacier","block":9200000,"forkHash":"0xe029e991"},{"name":"berlin","block":12244000,"forkHash":"0x0eb440f6"},{"name":"london","block":12965000,"forkHash":"0xb715077d"}],"bootstrapNodes":[{"ip":"18.138.108.67","port":30303,"id":"d860a01f9722d78051619d1e2351aba3f43f943f6f00718d1b9baa4101932a1f5011f16bb2b1bb35db20d6fe28fa0bf09636d26a87d31de9ec6203eeedb1f666","location":"ap-southeast-1-001","comment":"bootnode-aws-ap-southeast-1-001"},{"ip":"3.209.45.79","port":30303,"id":"22a8232c3abc76a16ae9d6c3b164f98775fe226f0917b0ca871128a74a8e9630b458460865bab457221f1d448dd9791d24c4e5d88786180ac185df813a68d4de","location":"us-east-1-001","comment":"bootnode-aws-us-east-1-001"},{"ip":"34.255.23.113","port":30303,"id":"ca6de62fce278f96aea6ec5a2daadb877e51651247cb96ee310a318def462913b653963c155a0ef6c7d50048bba6e6cea881130857413d9f50a621546b590758","location":"eu-west-1-001","comment":"bootnode-aws-eu-west-1-001"},{"ip":"35.158.244.151","port":30303,"id":"279944d8dcd428dffaa7436f25ca0ca43ae19e7bcf94a8fb7d1641651f92d121e972ac2e8f381414b80cc8e5555811c2ec6e1a99bb009b3f53c4c69923e11bd8","location":"eu-central-1-001","comment":"bootnode-aws-eu-central-1-001"},{"ip":"52.187.207.27","port":30303,"id":"8499da03c47d637b20eee24eec3c356c9a2e6148d6fe25ca195c7949ab8ec2c03e3556126b0d7ed644675e78c4318b08691b7b57de10e5f0d40d05b09238fa0a","location":"australiaeast-001","comment":"bootnode-azure-australiaeast-001"},{"ip":"191.234.162.198","port":30303,"id":"103858bdb88756c71f15e9b5e09b56dc1be52f0a5021d46301dbbfb7e130029cc9d0d6f73f693bc29b665770fff7da4d34f3c6379fe12721b5d7a0bcb5ca1fc1","location":"brazilsouth-001","comment":"bootnode-azure-brazilsouth-001"},{"ip":"52.231.165.108","port":30303,"id":"715171f50508aba88aecd1250af392a45a330af91d7b90701c436b618c86aaa1589c9184561907bebbb56439b8f8787bc01f49a7c77276c58c1b09822d75e8e8","location":"koreasouth-001","comment":"bootnode-azure-koreasouth-001"},{"ip":"104.42.217.25","port":30303,"id":"5d6d7cd20d6da4bb83a1d28cadb5d409b64edf314c0335df658c1a54e32c7c4a7ab7823d57c39b6a757556e68ff1df17c748b698544a55cb488b52479a92b60f","location":"westus-001","comment":"bootnode-azure-westus-001"}],"dnsNetworks":["enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.mainnet.ethdisco.net"]}')},function(t){t.exports=JSON.parse('{"name":"ropsten","chainId":3,"networkId":3,"defaultHardfork":"istanbul","consensus":{"type":"pow","algorithm":"ethash","ethash":{}},"comment":"PoW test network","url":"https://github.com/ethereum/ropsten","genesis":{"hash":"0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d","timestamp":null,"gasLimit":16777216,"difficulty":1048576,"nonce":"0x0000000000000042","extraData":"0x3535353535353535353535353535353535353535353535353535353535353535","stateRoot":"0x217b0bbcfb72e2d57e28f33cb361b9983513177755dc3f33ce3e7022ed62b77b"},"hardforks":[{"name":"chainstart","block":0,"forkHash":"0x30c7ddbc"},{"name":"homestead","block":0,"forkHash":"0x30c7ddbc"},{"name":"dao","block":null,"forkHash":null},{"name":"tangerineWhistle","block":0,"forkHash":"0x30c7ddbc"},{"name":"spuriousDragon","block":10,"forkHash":"0x63760190"},{"name":"byzantium","block":1700000,"forkHash":"0x3ea159c7"},{"name":"constantinople","block":4230000,"forkHash":"0x97b544f3"},{"name":"petersburg","block":4939394,"forkHash":"0xd6e2149b"},{"name":"istanbul","block":6485846,"forkHash":"0x4bc66396"},{"name":"muirGlacier","block":7117117,"forkHash":"0x6727ef90"},{"name":"berlin","block":9812189,"forkHash":"0xa157d377"},{"name":"london","block":10499401,"forkHash":"0x7119b6b3"}],"bootstrapNodes":[{"ip":"52.176.7.10","port":30303,"id":"30b7ab30a01c124a6cceca36863ece12c4f5fa68e3ba9b0b51407ccc002eeed3b3102d20a88f1c1d3c3154e2449317b8ef95090e77b312d5cc39354f86d5d606","location":"","comment":"US-Azure geth"},{"ip":"52.176.100.77","port":30303,"id":"865a63255b3bb68023b6bffd5095118fcc13e79dcf014fe4e47e065c350c7cc72af2e53eff895f11ba1bbb6a2b33271c1116ee870f266618eadfc2e78aa7349c","location":"","comment":"US-Azure parity"},{"ip":"52.232.243.152","port":30303,"id":"6332792c4a00e3e4ee0926ed89e0d27ef985424d97b6a45bf0f23e51f0dcb5e66b875777506458aea7af6f9e4ffb69f43f3778ee73c81ed9d34c51c4b16b0b0f","location":"","comment":"Parity"},{"ip":"192.81.208.223","port":30303,"id":"94c15d1b9e2fe7ce56e458b9a3b672ef11894ddedd0c6f247e0f1d3487f52b66208fb4aeb8179fce6e3a749ea93ed147c37976d67af557508d199d9594c35f09","location":"","comment":"@gpip"}],"dnsNetworks":["enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.ropsten.ethdisco.net"]}')},function(t){t.exports=JSON.parse('{"name":"rinkeby","chainId":4,"networkId":4,"defaultHardfork":"istanbul","consensus":{"type":"poa","algorithm":"clique","clique":{"period":15,"epoch":30000}},"comment":"PoA test network","url":"https://www.rinkeby.io","genesis":{"hash":"0x6341fd3daf94b748c72ced5a5b26028f2474f5f00d824504e4fa37a75767e177","timestamp":"0x58ee40ba","gasLimit":4700000,"difficulty":1,"nonce":"0x0000000000000000","extraData":"0x52657370656374206d7920617574686f7269746168207e452e436172746d616e42eb768f2244c8811c63729a21a3569731535f067ffc57839b00206d1ad20c69a1981b489f772031b279182d99e65703f0076e4812653aab85fca0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","stateRoot":"0x53580584816f617295ea26c0e17641e0120cab2f0a8ffb53a866fd53aa8e8c2d"},"hardforks":[{"name":"chainstart","block":0,"forkHash":"0x3b8e0691"},{"name":"homestead","block":1,"forkHash":"0x60949295"},{"name":"dao","block":null,"forkHash":null},{"name":"tangerineWhistle","block":2,"forkHash":"0x8bde40dd"},{"name":"spuriousDragon","block":3,"forkHash":"0xcb3a64bb"},{"name":"byzantium","block":1035301,"forkHash":"0x8d748b57"},{"name":"constantinople","block":3660663,"forkHash":"0xe49cab14"},{"name":"petersburg","block":4321234,"forkHash":"0xafec6b27"},{"name":"istanbul","block":5435345,"forkHash":"0xcbdb8838"},{"name":"berlin","block":8290928,"forkHash":"0x6910c8bd"},{"name":"london","block":8897988,"forkHash":"0x8e29f2f3"}],"bootstrapNodes":[{"ip":"52.169.42.101","port":30303,"id":"a24ac7c5484ef4ed0c5eb2d36620ba4e4aa13b8c84684e1b4aab0cebea2ae45cb4d375b77eab56516d34bfbd3c1a833fc51296ff084b770b94fb9028c4d25ccf","location":"","comment":"IE"},{"ip":"52.3.158.184","port":30303,"id":"343149e4feefa15d882d9fe4ac7d88f885bd05ebb735e547f12e12080a9fa07c8014ca6fd7f373123488102fe5e34111f8509cf0b7de3f5b44339c9f25e87cb8","location":"","comment":"INFURA"},{"ip":"159.89.28.211","port":30303,"id":"b6b28890b006743680c52e64e0d16db57f28124885595fa03a562be1d2bf0f3a1da297d56b13da25fb992888fd556d4c1a27b1f39d531bde7de1921c90061cc6","location":"","comment":"AKASHA"}],"dnsNetworks":["enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.rinkeby.ethdisco.net"]}')},function(t){t.exports=JSON.parse('{"name":"kovan","chainId":42,"networkId":42,"defaultHardfork":"istanbul","consensus":{"type":"poa","algorithm":"aura","aura":{}},"comment":"Parity PoA test network","url":"https://kovan-testnet.github.io/website/","genesis":{"hash":"0xa3c565fc15c7478862d50ccd6561e3c06b24cc509bf388941c25ea985ce32cb9","timestamp":null,"gasLimit":6000000,"difficulty":131072,"nonce":"0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","extraData":"0x","stateRoot":"0x2480155b48a1cea17d67dbfdfaafe821c1d19cdd478c5358e8ec56dec24502b2"},"hardforks":[{"name":"chainstart","block":0,"forkHash":"0x010ffe56"},{"name":"homestead","block":0,"forkHash":"0x010ffe56"},{"name":"dao","block":null,"forkHash":"0x010ffe56"},{"name":"tangerineWhistle","block":0,"forkHash":"0x010ffe56"},{"name":"spuriousDragon","block":0,"forkHash":"0x010ffe56"},{"name":"byzantium","block":5067000,"forkHash":"0x7f83c620"},{"name":"constantinople","block":9200000,"forkHash":"0xa94e3dc4"},{"name":"petersburg","block":10255201,"forkHash":"0x186874aa"},{"name":"istanbul","block":14111141,"forkHash":"0x7f6599a6"},{"name":"berlin","block":null,"forkHash":null},{"name":"london","block":null,"forkHash":null}],"bootstrapNodes":[{"ip":"116.203.116.241","port":30303,"id":"16898006ba2cd4fa8bf9a3dfe32684c178fa861df144bfc21fe800dc4838a03e342056951fa9fd533dcb0be1219e306106442ff2cf1f7e9f8faa5f2fc1a3aa45","location":"","comment":"1"},{"ip":"3.217.96.11","port":30303,"id":"2909846f78c37510cc0e306f185323b83bb2209e5ff4fdd279d93c60e3f365e3c6e62ad1d2133ff11f9fd6d23ad9c3dad73bb974d53a22f7d1ac5b7dea79d0b0","location":"","comment":"2"},{"ip":"108.61.170.124","port":30303,"id":"740e1c8ea64e71762c71a463a04e2046070a0c9394fcab5891d41301dc473c0cff00ebab5a9bc87fbcb610ab98ac18225ff897bc8b7b38def5975d5ceb0a7d7c","location":"","comment":"3"},{"ip":"157.230.31.163","port":30303,"id":"2909846f78c37510cc0e306f185323b83bb2209e5ff4fdd279d93c60e3f365e3c6e62ad1d2133ff11f9fd6d23ad9c3dad73bb974d53a22f7d1ac5b7dea79d0b0","location":"","comment":"4"}]}')},function(t){t.exports=JSON.parse('{"name":"goerli","chainId":5,"networkId":5,"defaultHardfork":"istanbul","consensus":{"type":"poa","algorithm":"clique","clique":{"period":15,"epoch":30000}},"comment":"Cross-client PoA test network","url":"https://github.com/goerli/testnet","genesis":{"hash":"0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a","timestamp":"0x5c51a607","gasLimit":10485760,"difficulty":1,"nonce":"0x0000000000000000","extraData":"0x22466c6578692069732061207468696e6722202d204166726900000000000000e0a2bd4258d2768837baa26a28fe71dc079f84c70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","stateRoot":"0x5d6cded585e73c4e322c30c2f782a336316f17dd85a4863b9d838d2d4b8b3008"},"hardforks":[{"name":"chainstart","block":0,"forkHash":"0xa3f5ab08"},{"name":"homestead","block":0,"forkHash":"0xa3f5ab08"},{"name":"dao","block":null,"forkHash":"0xa3f5ab08"},{"name":"tangerineWhistle","block":0,"forkHash":"0xa3f5ab08"},{"name":"spuriousDragon","block":0,"forkHash":"0xa3f5ab08"},{"name":"byzantium","block":0,"forkHash":"0xa3f5ab08"},{"name":"constantinople","block":0,"forkHash":"0xa3f5ab08"},{"name":"petersburg","block":0,"forkHash":"0xa3f5ab08"},{"name":"istanbul","block":1561651,"forkHash":"0xc25efa5c"},{"name":"berlin","block":4460644,"forkHash":"0x757a1c47"},{"name":"london","block":5062605,"forkHash":"0xb8c6299d"}],"bootstrapNodes":[{"ip":"51.141.78.53","port":30303,"id":"011f758e6552d105183b1761c5e2dea0111bc20fd5f6422bc7f91e0fabbec9a6595caf6239b37feb773dddd3f87240d99d859431891e4a642cf2a0a9e6cbb98a","location":"","comment":"Upstream bootnode 1"},{"ip":"13.93.54.137","port":30303,"id":"176b9417f511d05b6b2cf3e34b756cf0a7096b3094572a8f6ef4cdcb9d1f9d00683bf0f83347eebdf3b81c3521c2332086d9592802230bf528eaf606a1d9677b","location":"","comment":"Upstream bootnode 2"},{"ip":"94.237.54.114","port":30313,"id":"46add44b9f13965f7b9875ac6b85f016f341012d84f975377573800a863526f4da19ae2c620ec73d11591fa9510e992ecc03ad0751f53cc02f7c7ed6d55c7291","location":"","comment":"Upstream bootnode 3"},{"ip":"18.218.250.66","port":30313,"id":"b5948a2d3e9d486c4d75bf32713221c2bd6cf86463302339299bd227dc2e276cd5a1c7ca4f43a0e9122fe9af884efed563bd2a1fd28661f3b5f5ad7bf1de5949","location":"","comment":"Upstream bootnode 4"},{"ip":"3.11.147.67","port":30303,"id":"a61215641fb8714a373c80edbfa0ea8878243193f57c96eeb44d0bc019ef295abd4e044fd619bfc4c59731a73fb79afe84e9ab6da0c743ceb479cbb6d263fa91","location":"","comment":"Ethereum Foundation bootnode"},{"ip":"51.15.116.226","port":30303,"id":"a869b02cec167211fb4815a82941db2e7ed2936fd90e78619c53eb17753fcf0207463e3419c264e2a1dd8786de0df7e68cf99571ab8aeb7c4e51367ef186b1dd","location":"","comment":"Goerli Initiative bootnode"},{"ip":"51.15.119.157","port":30303,"id":"807b37ee4816ecf407e9112224494b74dd5933625f655962d892f2f0f02d7fbbb3e2a94cf87a96609526f30c998fd71e93e2f53015c558ffc8b03eceaf30ee33","location":"","comment":"Goerli Initiative bootnode"},{"ip":"51.15.119.157","port":40303,"id":"a59e33ccd2b3e52d578f1fbd70c6f9babda2650f0760d6ff3b37742fdcdfdb3defba5d56d315b40c46b70198c7621e63ffa3f987389c7118634b0fefbbdfa7fd","location":"","comment":"Goerli Initiative bootnode"}],"dnsNetworks":["enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.goerli.ethdisco.net"]}')},function(t){t.exports=JSON.parse('{"name":"calaveras","chainId":123,"networkId":123,"defaultHardfork":"berlin","consensus":{"type":"poa","algorithm":"clique","clique":{"period":30,"epoch":30000}},"comment":"The Calaveras testnet chain","url":"https://github.com/ethereum/eth1.0-specs/blob/master/network-upgrades/client-integration-testnets/calaveras.md","genesis":{"hash":"0xeb9233d066c275efcdfed8037f4fc082770176aefdbcb7691c71da412a5670f2","gasLimit":"0x47b760","difficulty":"0x1","nonce":"0x0000000000000000","extraData":"0x00000000000000000000000000000000000000000000000000000000000000005211cea3870c7ba7c6c44b185e62eecdb864cd8c560228ce57d31efbf64c200b2c200aacec78cf17a7148e784fe95a7a750335f8b9572ee28d72e7650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","stateRoot":"0x664c93de37eb4a72953ea42b8c046cdb64c9f0b0bca5505ade8d970d49ebdb8c","timestamp":"0x60b3877f"},"hardforks":[{"name":"chainstart","block":0,"forkHash":"0xe34c4aff"},{"name":"homestead","block":0,"forkHash":"0xe34c4aff"},{"name":"dao","block":null,"forkHash":"0xe34c4aff"},{"name":"tangerineWhistle","block":0,"forkHash":"0xe34c4aff"},{"name":"spuriousDragon","block":0,"forkHash":"0xe34c4aff"},{"name":"byzantium","block":0,"forkHash":"0xe34c4aff"},{"name":"constantinople","block":0,"forkHash":"0xe34c4aff"},{"name":"petersburg","block":0,"forkHash":"0xe34c4aff"},{"name":"istanbul","block":0,"forkHash":"0xe34c4aff"},{"name":"berlin","block":0,"forkHash":"0xe34c4aff"},{"name":"london","block":500,"forkHash":"0x173783e4"}],"bootstrapNodes":[{"ip":"3.21.156.138","port":30303,"id":"39eb08bbfad87481553c471a63ff2a4b4885fffa4ff50f1cf46744d9ad6e2f764ede146fe4df563fa9ccda1a46b9b1a88fb08135e1bf1d71b320912499da773d","location":"","comment":"Calaveras bootnode 1"},{"ip":"3.9.20.133","port":30303,"id":"9e1096aa59862a6f164994cb5cb16f5124d6c992cdbf4535ff7dea43ea1512afe5448dca9df1b7ab0726129603f1a3336b631e4d7a1a44c94daddd03241587f9","location":"","comment":"Calaveras bootnode 2"}]}')},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.hardforks=void 0,e.hardforks=[["chainstart",r(459)],["homestead",r(460)],["dao",r(461)],["tangerineWhistle",r(462)],["spuriousDragon",r(463)],["byzantium",r(464)],["constantinople",r(465)],["petersburg",r(466)],["istanbul",r(467)],["muirGlacier",r(468)],["berlin",r(469)],["london",r(470)]]},function(t){t.exports=JSON.parse('{"name":"chainstart","comment":"Start of the Ethereum main chain","url":"","status":"","gasConfig":{"minGasLimit":{"v":5000,"d":"Minimum the gas limit may ever be"},"gasLimitBoundDivisor":{"v":1024,"d":"The bound divisor of the gas limit, used in update calculations"},"maxRefundQuotient":{"v":2,"d":"Maximum refund quotient; max tx refund is min(tx.gasUsed/maxRefundQuotient, tx.gasRefund)"}},"gasPrices":{"base":{"v":2,"d":"Gas base cost, used e.g. for ChainID opcode (Istanbul)"},"tierStep":{"v":[0,2,3,5,8,10,20],"d":"Once per operation, for a selection of them"},"exp":{"v":10,"d":"Base fee of the EXP opcode"},"expByte":{"v":10,"d":"Times ceil(log256(exponent)) for the EXP instruction"},"sha3":{"v":30,"d":"Base fee of the SHA3 opcode"},"sha3Word":{"v":6,"d":"Once per word of the SHA3 operation\'s data"},"sload":{"v":50,"d":"Base fee of the SLOAD opcode"},"sstoreSet":{"v":20000,"d":"Once per SSTORE operation if the zeroness changes from zero"},"sstoreReset":{"v":5000,"d":"Once per SSTORE operation if the zeroness does not change from zero"},"sstoreRefund":{"v":15000,"d":"Once per SSTORE operation if the zeroness changes to zero"},"jumpdest":{"v":1,"d":"Base fee of the JUMPDEST opcode"},"log":{"v":375,"d":"Base fee of the LOG opcode"},"logData":{"v":8,"d":"Per byte in a LOG* operation\'s data"},"logTopic":{"v":375,"d":"Multiplied by the * of the LOG*, per LOG transaction. e.g. LOG0 incurs 0 * c_txLogTopicGas, LOG4 incurs 4 * c_txLogTopicGas"},"create":{"v":32000,"d":"Base fee of the CREATE opcode"},"call":{"v":40,"d":"Base fee of the CALL opcode"},"callStipend":{"v":2300,"d":"Free gas given at beginning of call"},"callValueTransfer":{"v":9000,"d":"Paid for CALL when the value transfor is non-zero"},"callNewAccount":{"v":25000,"d":"Paid for CALL when the destination address didn\'t exist prior"},"selfdestructRefund":{"v":24000,"d":"Refunded following a selfdestruct operation"},"memory":{"v":3,"d":"Times the address of the (highest referenced byte in memory + 1). NOTE: referencing happens on read, write and in instructions such as RETURN and CALL"},"quadCoeffDiv":{"v":512,"d":"Divisor for the quadratic particle of the memory cost equation"},"createData":{"v":200,"d":""},"tx":{"v":21000,"d":"Per transaction. NOTE: Not payable on data of calls between transactions"},"txCreation":{"v":32000,"d":"The cost of creating a contract via tx"},"txDataZero":{"v":4,"d":"Per byte of data attached to a transaction that equals zero. NOTE: Not payable on data of calls between transactions"},"txDataNonZero":{"v":68,"d":"Per byte of data attached to a transaction that is not equal to zero. NOTE: Not payable on data of calls between transactions"},"copy":{"v":3,"d":"Multiplied by the number of 32-byte words that are copied (round up) for any *COPY operation and added"},"ecRecover":{"v":3000,"d":""},"sha256":{"v":60,"d":""},"sha256Word":{"v":12,"d":""},"ripemd160":{"v":600,"d":""},"ripemd160Word":{"v":120,"d":""},"identity":{"v":15,"d":""},"identityWord":{"v":3,"d":""},"stop":{"v":0,"d":"Base fee of the STOP opcode"},"add":{"v":3,"d":"Base fee of the ADD opcode"},"mul":{"v":5,"d":"Base fee of the MUL opcode"},"sub":{"v":3,"d":"Base fee of the SUB opcode"},"div":{"v":5,"d":"Base fee of the DIV opcode"},"sdiv":{"v":5,"d":"Base fee of the SDIV opcode"},"mod":{"v":5,"d":"Base fee of the MOD opcode"},"smod":{"v":5,"d":"Base fee of the SMOD opcode"},"addmod":{"v":8,"d":"Base fee of the ADDMOD opcode"},"mulmod":{"v":8,"d":"Base fee of the MULMOD opcode"},"signextend":{"v":5,"d":"Base fee of the SIGNEXTEND opcode"},"lt":{"v":3,"d":"Base fee of the LT opcode"},"gt":{"v":3,"d":"Base fee of the GT opcode"},"slt":{"v":3,"d":"Base fee of the SLT opcode"},"sgt":{"v":3,"d":"Base fee of the SGT opcode"},"eq":{"v":3,"d":"Base fee of the EQ opcode"},"iszero":{"v":3,"d":"Base fee of the ISZERO opcode"},"and":{"v":3,"d":"Base fee of the AND opcode"},"or":{"v":3,"d":"Base fee of the OR opcode"},"xor":{"v":3,"d":"Base fee of the XOR opcode"},"not":{"v":3,"d":"Base fee of the NOT opcode"},"byte":{"v":3,"d":"Base fee of the BYTE opcode"},"address":{"v":2,"d":"Base fee of the ADDRESS opcode"},"balance":{"v":20,"d":"Base fee of the BALANCE opcode"},"origin":{"v":2,"d":"Base fee of the ORIGIN opcode"},"caller":{"v":2,"d":"Base fee of the CALLER opcode"},"callvalue":{"v":2,"d":"Base fee of the CALLVALUE opcode"},"calldataload":{"v":3,"d":"Base fee of the CALLDATALOAD opcode"},"calldatasize":{"v":2,"d":"Base fee of the CALLDATASIZE opcode"},"calldatacopy":{"v":3,"d":"Base fee of the CALLDATACOPY opcode"},"codesize":{"v":2,"d":"Base fee of the CODESIZE opcode"},"codecopy":{"v":3,"d":"Base fee of the CODECOPY opcode"},"gasprice":{"v":2,"d":"Base fee of the GASPRICE opcode"},"extcodesize":{"v":20,"d":"Base fee of the EXTCODESIZE opcode"},"extcodecopy":{"v":20,"d":"Base fee of the EXTCODECOPY opcode"},"blockhash":{"v":20,"d":"Base fee of the BLOCKHASH opcode"},"coinbase":{"v":2,"d":"Base fee of the COINBASE opcode"},"timestamp":{"v":2,"d":"Base fee of the TIMESTAMP opcode"},"number":{"v":2,"d":"Base fee of the NUMBER opcode"},"difficulty":{"v":2,"d":"Base fee of the DIFFICULTY opcode"},"gaslimit":{"v":2,"d":"Base fee of the GASLIMIT opcode"},"pop":{"v":2,"d":"Base fee of the POP opcode"},"mload":{"v":3,"d":"Base fee of the MLOAD opcode"},"mstore":{"v":3,"d":"Base fee of the MSTORE opcode"},"mstore8":{"v":3,"d":"Base fee of the MSTORE8 opcode"},"sstore":{"v":0,"d":"Base fee of the SSTORE opcode"},"jump":{"v":8,"d":"Base fee of the JUMP opcode"},"jumpi":{"v":10,"d":"Base fee of the JUMPI opcode"},"pc":{"v":2,"d":"Base fee of the PC opcode"},"msize":{"v":2,"d":"Base fee of the MSIZE opcode"},"gas":{"v":2,"d":"Base fee of the GAS opcode"},"push":{"v":3,"d":"Base fee of the PUSH opcode"},"dup":{"v":3,"d":"Base fee of the DUP opcode"},"swap":{"v":3,"d":"Base fee of the SWAP opcode"},"callcode":{"v":40,"d":"Base fee of the CALLCODE opcode"},"return":{"v":0,"d":"Base fee of the RETURN opcode"},"invalid":{"v":0,"d":"Base fee of the INVALID opcode"},"selfdestruct":{"v":0,"d":"Base fee of the SELFDESTRUCT opcode"}},"vm":{"stackLimit":{"v":1024,"d":"Maximum size of VM stack allowed"},"callCreateDepth":{"v":1024,"d":"Maximum depth of call/create stack"},"maxExtraDataSize":{"v":32,"d":"Maximum size extra data may be after Genesis"}},"pow":{"minimumDifficulty":{"v":131072,"d":"The minimum that the difficulty may ever be"},"difficultyBoundDivisor":{"v":2048,"d":"The bound divisor of the difficulty, used in the update calculations"},"durationLimit":{"v":13,"d":"The decision boundary on the blocktime duration used to determine whether difficulty should go up or not"},"epochDuration":{"v":30000,"d":"Duration between proof-of-work epochs"},"timebombPeriod":{"v":100000,"d":"Exponential difficulty timebomb period"},"minerReward":{"v":"5000000000000000000","d":"the amount a miner get rewarded for mining a block"},"difficultyBombDelay":{"v":0,"d":"the amount of blocks to delay the difficulty bomb with"}}}')},function(t){t.exports=JSON.parse('{"name":"homestead","comment":"Homestead hardfork with protocol and network changes","url":"https://eips.ethereum.org/EIPS/eip-606","status":"Final","gasConfig":{},"gasPrices":{"delegatecall":{"v":40,"d":"Base fee of the DELEGATECALL opcode"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"dao","comment":"DAO rescue hardfork","url":"https://eips.ethereum.org/EIPS/eip-779","status":"Final","gasConfig":{},"gasPrices":{},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"tangerineWhistle","comment":"Hardfork with gas cost changes for IO-heavy operations","url":"https://eips.ethereum.org/EIPS/eip-608","status":"Final","gasConfig":{},"gasPrices":{"sload":{"v":200,"d":"Once per SLOAD operation"},"call":{"v":700,"d":"Once per CALL operation & message call transaction"},"extcodesize":{"v":700,"d":"Base fee of the EXTCODESIZE opcode"},"extcodecopy":{"v":700,"d":"Base fee of the EXTCODECOPY opcode"},"balance":{"v":400,"d":"Base fee of the BALANCE opcode"},"delegatecall":{"v":700,"d":"Base fee of the DELEGATECALL opcode"},"callcode":{"v":700,"d":"Base fee of the CALLCODE opcode"},"selfdestruct":{"v":5000,"d":"Base fee of the SELFDESTRUCT opcode"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"spuriousDragon","comment":"HF with EIPs for simple replay attack protection, EXP cost increase, state trie clearing, contract code size limit","url":"https://eips.ethereum.org/EIPS/eip-607","status":"Final","gasConfig":{},"gasPrices":{"expByte":{"v":50,"d":"Times ceil(log256(exponent)) for the EXP instruction"}},"vm":{"maxCodeSize":{"v":24576,"d":"Maximum length of contract code"}},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"byzantium","comment":"Hardfork with new precompiles, instructions and other protocol changes","url":"https://eips.ethereum.org/EIPS/eip-609","status":"Final","gasConfig":{},"gasPrices":{"modexpGquaddivisor":{"v":20,"d":"Gquaddivisor from modexp precompile for gas calculation"},"ecAdd":{"v":500,"d":"Gas costs for curve addition precompile"},"ecMul":{"v":40000,"d":"Gas costs for curve multiplication precompile"},"ecPairing":{"v":100000,"d":"Base gas costs for curve pairing precompile"},"ecPairingWord":{"v":80000,"d":"Gas costs regarding curve pairing precompile input length"},"revert":{"v":0,"d":"Base fee of the REVERT opcode"},"staticcall":{"v":700,"d":"Base fee of the STATICCALL opcode"},"returndatasize":{"v":2,"d":"Base fee of the RETURNDATASIZE opcode"},"returndatacopy":{"v":3,"d":"Base fee of the RETURNDATACOPY opcode"}},"vm":{},"pow":{"minerReward":{"v":"3000000000000000000","d":"the amount a miner get rewarded for mining a block"},"difficultyBombDelay":{"v":3000000,"d":"the amount of blocks to delay the difficulty bomb with"}}}')},function(t){t.exports=JSON.parse('{"name":"constantinople","comment":"Postponed hardfork including EIP-1283 (SSTORE gas metering changes)","url":"https://eips.ethereum.org/EIPS/eip-1013","status":"Final","gasConfig":{},"gasPrices":{"netSstoreNoopGas":{"v":200,"d":"Once per SSTORE operation if the value doesn\'t change"},"netSstoreInitGas":{"v":20000,"d":"Once per SSTORE operation from clean zero"},"netSstoreCleanGas":{"v":5000,"d":"Once per SSTORE operation from clean non-zero"},"netSstoreDirtyGas":{"v":200,"d":"Once per SSTORE operation from dirty"},"netSstoreClearRefund":{"v":15000,"d":"Once per SSTORE operation for clearing an originally existing storage slot"},"netSstoreResetRefund":{"v":4800,"d":"Once per SSTORE operation for resetting to the original non-zero value"},"netSstoreResetClearRefund":{"v":19800,"d":"Once per SSTORE operation for resetting to the original zero value"},"shl":{"v":3,"d":"Base fee of the SHL opcode"},"shr":{"v":3,"d":"Base fee of the SHR opcode"},"sar":{"v":3,"d":"Base fee of the SAR opcode"},"extcodehash":{"v":400,"d":"Base fee of the EXTCODEHASH opcode"},"create2":{"v":32000,"d":"Base fee of the CREATE2 opcode"}},"vm":{},"pow":{"minerReward":{"v":"2000000000000000000","d":"The amount a miner gets rewarded for mining a block"},"difficultyBombDelay":{"v":5000000,"d":"the amount of blocks to delay the difficulty bomb with"}}}')},function(t){t.exports=JSON.parse('{"name":"petersburg","comment":"Aka constantinopleFix, removes EIP-1283, activate together with or after constantinople","url":"https://eips.ethereum.org/EIPS/eip-1716","status":"Draft","gasConfig":{},"gasPrices":{"netSstoreNoopGas":{"v":null,"d":"Removed along EIP-1283"},"netSstoreInitGas":{"v":null,"d":"Removed along EIP-1283"},"netSstoreCleanGas":{"v":null,"d":"Removed along EIP-1283"},"netSstoreDirtyGas":{"v":null,"d":"Removed along EIP-1283"},"netSstoreClearRefund":{"v":null,"d":"Removed along EIP-1283"},"netSstoreResetRefund":{"v":null,"d":"Removed along EIP-1283"},"netSstoreResetClearRefund":{"v":null,"d":"Removed along EIP-1283"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"istanbul","comment":"HF targeted for December 2019 following the Constantinople/Petersburg HF","url":"https://eips.ethereum.org/EIPS/eip-1679","status":"Draft","gasConfig":{},"gasPrices":{"blake2Round":{"v":1,"d":"Gas cost per round for the Blake2 F precompile"},"ecAdd":{"v":150,"d":"Gas costs for curve addition precompile"},"ecMul":{"v":6000,"d":"Gas costs for curve multiplication precompile"},"ecPairing":{"v":45000,"d":"Base gas costs for curve pairing precompile"},"ecPairingWord":{"v":34000,"d":"Gas costs regarding curve pairing precompile input length"},"txDataNonZero":{"v":16,"d":"Per byte of data attached to a transaction that is not equal to zero. NOTE: Not payable on data of calls between transactions"},"sstoreSentryGasEIP2200":{"v":2300,"d":"Minimum gas required to be present for an SSTORE call, not consumed"},"sstoreNoopGasEIP2200":{"v":800,"d":"Once per SSTORE operation if the value doesn\'t change"},"sstoreDirtyGasEIP2200":{"v":800,"d":"Once per SSTORE operation if a dirty value is changed"},"sstoreInitGasEIP2200":{"v":20000,"d":"Once per SSTORE operation from clean zero to non-zero"},"sstoreInitRefundEIP2200":{"v":19200,"d":"Once per SSTORE operation for resetting to the original zero value"},"sstoreCleanGasEIP2200":{"v":5000,"d":"Once per SSTORE operation from clean non-zero to something else"},"sstoreCleanRefundEIP2200":{"v":4200,"d":"Once per SSTORE operation for resetting to the original non-zero value"},"sstoreClearRefundEIP2200":{"v":15000,"d":"Once per SSTORE operation for clearing an originally existing storage slot"},"balance":{"v":700,"d":"Base fee of the BALANCE opcode"},"extcodehash":{"v":700,"d":"Base fee of the EXTCODEHASH opcode"},"chainid":{"v":2,"d":"Base fee of the CHAINID opcode"},"selfbalance":{"v":5,"d":"Base fee of the SELFBALANCE opcode"},"sload":{"v":800,"d":"Base fee of the SLOAD opcode"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"muirGlacier","comment":"HF to delay the difficulty bomb","url":"https://eips.ethereum.org/EIPS/eip-2384","status":"Final","gasConfig":{},"gasPrices":{},"vm":{},"pow":{"difficultyBombDelay":{"v":9000000,"d":"the amount of blocks to delay the difficulty bomb with"}}}')},function(t){t.exports=JSON.parse('{"name":"berlin","comment":"HF targeted for July 2020 following the Muir Glacier HF","url":"https://eips.ethereum.org/EIPS/eip-2070","status":"Draft","eips":[2565,2929,2718,2930]}')},function(t){t.exports=JSON.parse('{"name":"london","comment":"HF targeted for July 2021 following the Berlin fork","url":"https://github.com/ethereum/eth1.0-specs/blob/master/network-upgrades/mainnet-upgrades/london.md","status":"Draft","eips":[1559,3198,3529,3541]}')},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EIPs=void 0,e.EIPs={1559:r(472),2315:r(473),2537:r(474),2565:r(475),2718:r(476),2929:r(477),2930:r(478),3198:r(479),3529:r(480),3541:r(481),3554:r(482)}},function(t){t.exports=JSON.parse('{"name":"EIP-1559","number":1559,"comment":"Fee market change for ETH 1.0 chain","url":"https://eips.ethereum.org/EIPS/eip-1559","status":"Review","minimumHardfork":"berlin","requiredEIPs":[2930],"gasConfig":{"baseFeeMaxChangeDenominator":{"v":8,"d":"Maximum base fee change denominator"},"elasticityMultiplier":{"v":2,"d":"Maximum block gas target elasticity"},"initialBaseFee":{"v":1000000000,"d":"Initial base fee on first EIP1559 block"}},"gasPrices":{},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-2315","number":2315,"comment":"Simple subroutines for the EVM","url":"https://eips.ethereum.org/EIPS/eip-2315","status":"Draft","minimumHardfork":"istanbul","gasConfig":{},"gasPrices":{"beginsub":{"v":2,"d":"Base fee of the BEGINSUB opcode"},"returnsub":{"v":5,"d":"Base fee of the RETURNSUB opcode"},"jumpsub":{"v":10,"d":"Base fee of the JUMPSUB opcode"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-2537","number":2537,"comment":"BLS12-381 precompiles","url":"https://eips.ethereum.org/EIPS/eip-2537","status":"Draft","minimumHardfork":"chainstart","gasConfig":{},"gasPrices":{"Bls12381G1AddGas":{"v":600,"d":"Gas cost of a single BLS12-381 G1 addition precompile-call"},"Bls12381G1MulGas":{"v":12000,"d":"Gas cost of a single BLS12-381 G1 multiplication precompile-call"},"Bls12381G2AddGas":{"v":4500,"d":"Gas cost of a single BLS12-381 G2 addition precompile-call"},"Bls12381G2MulGas":{"v":55000,"d":"Gas cost of a single BLS12-381 G2 multiplication precompile-call"},"Bls12381PairingBaseGas":{"v":115000,"d":"Base gas cost of BLS12-381 pairing check"},"Bls12381PairingPerPairGas":{"v":23000,"d":"Per-pair gas cost of BLS12-381 pairing check"},"Bls12381MapG1Gas":{"v":5500,"d":"Gas cost of BLS12-381 map field element to G1"},"Bls12381MapG2Gas":{"v":110000,"d":"Gas cost of BLS12-381 map field element to G2"},"Bls12381MultiExpGasDiscount":{"v":[[1,1200],[2,888],[3,764],[4,641],[5,594],[6,547],[7,500],[8,453],[9,438],[10,423],[11,408],[12,394],[13,379],[14,364],[15,349],[16,334],[17,330],[18,326],[19,322],[20,318],[21,314],[22,310],[23,306],[24,302],[25,298],[26,294],[27,289],[28,285],[29,281],[30,277],[31,273],[32,269],[33,268],[34,266],[35,265],[36,263],[37,262],[38,260],[39,259],[40,257],[41,256],[42,254],[43,253],[44,251],[45,250],[46,248],[47,247],[48,245],[49,244],[50,242],[51,241],[52,239],[53,238],[54,236],[55,235],[56,233],[57,232],[58,231],[59,229],[60,228],[61,226],[62,225],[63,223],[64,222],[65,221],[66,220],[67,219],[68,219],[69,218],[70,217],[71,216],[72,216],[73,215],[74,214],[75,213],[76,213],[77,212],[78,211],[79,211],[80,210],[81,209],[82,208],[83,208],[84,207],[85,206],[86,205],[87,205],[88,204],[89,203],[90,202],[91,202],[92,201],[93,200],[94,199],[95,199],[96,198],[97,197],[98,196],[99,196],[100,195],[101,194],[102,193],[103,193],[104,192],[105,191],[106,191],[107,190],[108,189],[109,188],[110,188],[111,187],[112,186],[113,185],[114,185],[115,184],[116,183],[117,182],[118,182],[119,181],[120,180],[121,179],[122,179],[123,178],[124,177],[125,176],[126,176],[127,175],[128,174]],"d":"Discount gas costs of calls to the MultiExp precompiles with `k` (point, scalar) pair"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-2565","number":2565,"comment":"ModExp gas cost","url":"https://eips.ethereum.org/EIPS/eip-2565","status":"Last call","minimumHardfork":"byzantium","gasConfig":{},"gasPrices":{"modexpGquaddivisor":{"v":3,"d":"Gquaddivisor from modexp precompile for gas calculation"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-2718","comment":"Typed Transaction Envelope","url":"https://eips.ethereum.org/EIPS/eip-2718","status":"Draft","minimumHardfork":"chainstart","gasConfig":{},"gasPrices":{},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-2929","comment":"Gas cost increases for state access opcodes","url":"https://eips.ethereum.org/EIPS/eip-2929","status":"Draft","minimumHardfork":"chainstart","gasConfig":{},"gasPrices":{"coldsload":{"v":2100,"d":"Gas cost of the first read of storage from a given location (per transaction)"},"coldaccountaccess":{"v":2600,"d":"Gas cost of the first read of a given address (per transaction)"},"warmstorageread":{"v":100,"d":"Gas cost of reading storage locations which have already loaded \'cold\'"},"sstoreCleanGasEIP2200":{"v":2900,"d":"Once per SSTORE operation from clean non-zero to something else"},"sstoreNoopGasEIP2200":{"v":100,"d":"Once per SSTORE operation if the value doesn\'t change"},"sstoreDirtyGasEIP2200":{"v":100,"d":"Once per SSTORE operation if a dirty value is changed"},"sstoreInitRefundEIP2200":{"v":19900,"d":"Once per SSTORE operation for resetting to the original zero value"},"sstoreCleanRefundEIP2200":{"v":4900,"d":"Once per SSTORE operation for resetting to the original non-zero value"},"call":{"v":0,"d":"Base fee of the CALL opcode"},"callcode":{"v":0,"d":"Base fee of the CALLCODE opcode"},"delegatecall":{"v":0,"d":"Base fee of the DELEGATECALL opcode"},"staticcall":{"v":0,"d":"Base fee of the STATICCALL opcode"},"balance":{"v":0,"d":"Base fee of the BALANCE opcode"},"extcodesize":{"v":0,"d":"Base fee of the EXTCODESIZE opcode"},"extcodecopy":{"v":0,"d":"Base fee of the EXTCODECOPY opcode"},"extcodehash":{"v":0,"d":"Base fee of the EXTCODEHASH opcode"},"sload":{"v":0,"d":"Base fee of the SLOAD opcode"},"sstore":{"v":0,"d":"Base fee of the SSTORE opcode"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-2930","comment":"Optional access lists","url":"https://eips.ethereum.org/EIPS/eip-2930","status":"Draft","minimumHardfork":"istanbul","requiredEIPs":[2718,2929],"gasConfig":{},"gasPrices":{"accessListStorageKeyCost":{"v":1900,"d":"Gas cost per storage key in an Access List transaction"},"accessListAddressCost":{"v":2400,"d":"Gas cost per storage key in an Access List transaction"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-3198","number":3198,"comment":"BASEFEE opcode","url":"https://eips.ethereum.org/EIPS/eip-3198","status":"Review","minimumHardfork":"london","gasConfig":{},"gasPrices":{"basefee":{"v":2,"d":"Gas cost of the BASEFEE opcode"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-3529","comment":"Reduction in refunds","url":"https://eips.ethereum.org/EIPS/eip-3529","status":"Draft","minimumHardfork":"berlin","requiredEIPs":[2929],"gasConfig":{"maxRefundQuotient":{"v":5,"d":"Maximum refund quotient; max tx refund is min(tx.gasUsed/maxRefundQuotient, tx.gasRefund)"}},"gasPrices":{"selfdestructRefund":{"v":0,"d":"Refunded following a selfdestruct operation"},"sstoreClearRefundEIP2200":{"v":4800,"d":"Once per SSTORE operation for clearing an originally existing storage slot"}},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-3541","comment":"Reject new contracts starting with the 0xEF byte","url":"https://eips.ethereum.org/EIPS/eip-3541","status":"Draft","minimumHardfork":"berlin","requiredEIPs":[],"gasConfig":{},"gasPrices":{},"vm":{},"pow":{}}')},function(t){t.exports=JSON.parse('{"name":"EIP-3554","comment":"Reduction in refunds","url":"Difficulty Bomb Delay to December 1st 2021","status":"Draft","minimumHardfork":"muirGlacier","requiredEIPs":[],"gasConfig":{},"gasPrices":{},"vm":{},"pow":{"difficultyBombDelay":{"v":9500000,"d":"the amount of blocks to delay the difficulty bomb with"}}}')},function(t,e,r){"use strict";(function(t){var n,i=(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=function(){return(o=Object.assign||function(t){for(var e,r=1,n=arguments.length;r0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var s=r(26),u=r(104),f=r(43),c=r(202),h=t.from(1..toString(16).padStart(2,"0"),"hex"),l=function(e){function r(t,r){var n,i;void 0===r&&(r={});var a=e.call(this,o(o({},t),{type:1}))||this;a.DEFAULT_HARDFORK="berlin";var u=t.chainId,h=t.accessList,l=t.gasPrice;if(a.common=a._getCommon(r.common,u),a.chainId=a.common.chainIdBN(),!a.common.isActivatedEIP(2930))throw new Error("EIP-2930 not enabled on Common");a.activeCapabilities=a.activeCapabilities.concat([2718,2930]);var d=c.AccessLists.getAccessListData(null!=h?h:[]);if(a.accessList=d.accessList,a.AccessListJSON=d.AccessListJSON,c.AccessLists.verifyAccessList(a.accessList),a.gasPrice=new s.BN(s.toBuffer(""===l?"0x":l)),a._validateCannotExceedMaxInteger({gasPrice:a.gasPrice}),a.v&&!a.v.eqn(0)&&!a.v.eqn(1))throw new Error("The y-parity of the transaction should either be 0 or 1");if(a.common.gteHardfork("homestead")&&(null===(n=a.s)||void 0===n?void 0:n.gt(f.N_DIV_2)))throw new Error("Invalid Signature: s-values greater than secp256k1n/2 are considered invalid");return(null===(i=null==r?void 0:r.freeze)||void 0===i||i)&&Object.freeze(a),a}return i(r,e),Object.defineProperty(r.prototype,"senderR",{get:function(){return this.r},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"senderS",{get:function(){return this.s},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"yParity",{get:function(){return this.v},enumerable:!1,configurable:!0}),r.fromTxData=function(t,e){return void 0===e&&(e={}),new r(t,e)},r.fromSerializedTx=function(t,e){if(void 0===e&&(e={}),!t.slice(0,1).equals(h))throw new Error("Invalid serialized tx input: not an EIP-2930 transaction (wrong tx type, expected: 1, received: "+t.slice(0,1).toString("hex"));var n=s.rlp.decode(t.slice(1));if(!Array.isArray(n))throw new Error("Invalid serialized tx input: must be array");return r.fromValuesArray(n,e)},r.fromRlpSerializedTx=function(t,e){return void 0===e&&(e={}),r.fromSerializedTx(t,e)},r.fromValuesArray=function(t,e){if(void 0===e&&(e={}),8!==t.length&&11!==t.length)throw new Error("Invalid EIP-2930 transaction. Only expecting 8 values (for unsigned tx) or 11 values (for signed tx).");var n=a(t,11),i=n[0],o=n[1],u=n[2],f=n[3],c=n[4],h=n[5],l=n[6],d=n[7],p=n[8],m=n[9],b=n[10];return new r({chainId:new s.BN(i),nonce:o,gasPrice:u,gasLimit:f,to:c,value:h,data:l,accessList:null!=d?d:[],v:void 0!==p?new s.BN(p):void 0,r:m,s:b},e)},r.prototype.getDataFee=function(){var t=e.prototype.getDataFee.call(this);return t.iaddn(c.AccessLists.getDataFeeEIP2930(this.accessList,this.common)),t},r.prototype.getUpfrontCost=function(){return this.gasLimit.mul(this.gasPrice).add(this.value)},r.prototype.raw=function(){return[s.bnToUnpaddedBuffer(this.chainId),s.bnToUnpaddedBuffer(this.nonce),s.bnToUnpaddedBuffer(this.gasPrice),s.bnToUnpaddedBuffer(this.gasLimit),void 0!==this.to?this.to.buf:t.from([]),s.bnToUnpaddedBuffer(this.value),this.data,this.accessList,void 0!==this.v?s.bnToUnpaddedBuffer(this.v):t.from([]),void 0!==this.r?s.bnToUnpaddedBuffer(this.r):t.from([]),void 0!==this.s?s.bnToUnpaddedBuffer(this.s):t.from([])]},r.prototype.serialize=function(){var e=this.raw();return t.concat([h,s.rlp.encode(e)])},r.prototype.getMessageToSign=function(e){void 0===e&&(e=!0);var r=this.raw().slice(0,8),n=t.concat([h,s.rlp.encode(r)]);return e?s.keccak256(n):n},r.prototype.hash=function(){if(!this.isSigned())throw new Error("Cannot call hash method if transaction is not signed");return s.keccak256(this.serialize())},r.prototype.getMessageToVerifySignature=function(){return this.getMessageToSign()},r.prototype.getSenderPublicKey=function(){var t;if(!this.isSigned())throw new Error("Cannot call this method if transaction is not signed");var e=this.getMessageToVerifySignature();if(this.common.gteHardfork("homestead")&&(null===(t=this.s)||void 0===t?void 0:t.gt(f.N_DIV_2)))throw new Error("Invalid Signature: s-values greater than secp256k1n/2 are considered invalid");var r=this.yParity,n=this.r,i=this.s;try{return s.ecrecover(e,r.addn(27),s.bnToUnpaddedBuffer(n),s.bnToUnpaddedBuffer(i))}catch(t){throw new Error("Invalid Signature")}},r.prototype._processSignature=function(t,e,n){var i={common:this.common};return r.fromTxData({chainId:this.chainId,nonce:this.nonce,gasPrice:this.gasPrice,gasLimit:this.gasLimit,to:this.to,value:this.value,data:this.data,accessList:this.accessList,v:new s.BN(t-27),r:new s.BN(e),s:new s.BN(n)},i)},r.prototype.toJSON=function(){var t=c.AccessLists.getAccessListJSON(this.accessList);return{chainId:s.bnToHex(this.chainId),nonce:s.bnToHex(this.nonce),gasPrice:s.bnToHex(this.gasPrice),gasLimit:s.bnToHex(this.gasLimit),to:void 0!==this.to?this.to.toString():void 0,value:s.bnToHex(this.value),data:"0x"+this.data.toString("hex"),accessList:t,v:void 0!==this.v?s.bnToHex(this.v):void 0,r:void 0!==this.r?s.bnToHex(this.r):void 0,s:void 0!==this.s?s.bnToHex(this.s):void 0}},r}(u.BaseTransaction);e.default=l}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var n=r(26),i=r(197),o=function(){function e(){}return e.fromTxData=function(t,e){if(void 0===e&&(e={}),"type"in t&&void 0!==t.type){var r=new n.BN(n.toBuffer(t.type)).toNumber();if(0===r)return i.Transaction.fromTxData(t,e);if(1===r)return i.AccessListEIP2930Transaction.fromTxData(t,e);if(2===r)return i.FeeMarketEIP1559Transaction.fromTxData(t,e);throw new Error("Tx instantiation with type "+r+" not supported")}return i.Transaction.fromTxData(t,e)},e.fromSerializedData=function(t,e){if(void 0===e&&(e={}),t[0]<=127){var r=void 0;switch(t[0]){case 1:r=2930;break;case 2:r=1559;break;default:throw new Error("TypedTransaction with ID "+t[0]+" unknown")}return 1559===r?i.FeeMarketEIP1559Transaction.fromSerializedTx(t,e):i.AccessListEIP2930Transaction.fromSerializedTx(t,e)}return i.Transaction.fromSerializedTx(t,e)},e.fromBlockBodyData=function(e,r){if(void 0===r&&(r={}),t.isBuffer(e))return this.fromSerializedData(e,r);if(Array.isArray(e))return i.Transaction.fromValuesArray(e,r);throw new Error("Cannot decode transaction: unknown type input")},e.getTransactionClass=function(t,e){if(void 0===t&&(t=0),0==t||t>=128&&t<=255)return i.Transaction;switch(t){case 1:return i.AccessListEIP2930Transaction;case 2:return i.FeeMarketEIP1559Transaction;default:throw new Error("TypedTransaction with ID "+t+" unknown")}},e}();e.default=o}).call(this,r(1).Buffer)},function(t,e,r){"use strict";(function(t){var n,i=(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=function(){return(o=Object.assign||function(t){for(var e,r=1,n=arguments.length;r0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var s=r(26),u=r(104),f=r(43),c=r(202),h=t.from(2..toString(16).padStart(2,"0"),"hex"),l=function(e){function r(t,r){var n,i;void 0===r&&(r={});var a=e.call(this,o(o({},t),{type:2}))||this;a.DEFAULT_HARDFORK="london";var u=t.chainId,h=t.accessList,l=t.maxFeePerGas,d=t.maxPriorityFeePerGas;if(a.common=a._getCommon(r.common,u),a.chainId=a.common.chainIdBN(),!a.common.isActivatedEIP(1559))throw new Error("EIP-1559 not enabled on Common");a.activeCapabilities=a.activeCapabilities.concat([1559,2718,2930]);var p=c.AccessLists.getAccessListData(null!=h?h:[]);if(a.accessList=p.accessList,a.AccessListJSON=p.AccessListJSON,c.AccessLists.verifyAccessList(a.accessList),a.maxFeePerGas=new s.BN(s.toBuffer(""===l?"0x":l)),a.maxPriorityFeePerGas=new s.BN(s.toBuffer(""===d?"0x":d)),a._validateCannotExceedMaxInteger({maxFeePerGas:a.maxFeePerGas,maxPriorityFeePerGas:a.maxPriorityFeePerGas},256),a.maxFeePerGas.lt(a.maxPriorityFeePerGas))throw new Error("maxFeePerGas cannot be less than maxPriorityFeePerGas (The total must be the larger of the two)");if(a.v&&!a.v.eqn(0)&&!a.v.eqn(1))throw new Error("The y-parity of the transaction should either be 0 or 1");if(a.common.gteHardfork("homestead")&&(null===(n=a.s)||void 0===n?void 0:n.gt(f.N_DIV_2)))throw new Error("Invalid Signature: s-values greater than secp256k1n/2 are considered invalid");return(null===(i=null==r?void 0:r.freeze)||void 0===i||i)&&Object.freeze(a),a}return i(r,e),Object.defineProperty(r.prototype,"senderR",{get:function(){return this.r},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"senderS",{get:function(){return this.s},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"yParity",{get:function(){return this.v},enumerable:!1,configurable:!0}),r.fromTxData=function(t,e){return void 0===e&&(e={}),new r(t,e)},r.fromSerializedTx=function(t,e){if(void 0===e&&(e={}),!t.slice(0,1).equals(h))throw new Error("Invalid serialized tx input: not an EIP-1559 transaction (wrong tx type, expected: 2, received: "+t.slice(0,1).toString("hex"));var n=s.rlp.decode(t.slice(1));if(!Array.isArray(n))throw new Error("Invalid serialized tx input: must be array");return r.fromValuesArray(n,e)},r.fromRlpSerializedTx=function(t,e){return void 0===e&&(e={}),r.fromSerializedTx(t,e)},r.fromValuesArray=function(t,e){if(void 0===e&&(e={}),9!==t.length&&12!==t.length)throw new Error("Invalid EIP-1559 transaction. Only expecting 9 values (for unsigned tx) or 12 values (for signed tx).");var n=a(t,12),i=n[0],o=n[1],u=n[2],f=n[3],c=n[4],h=n[5],l=n[6],d=n[7],p=n[8],m=n[9],b=n[10],v=n[11];return new r({chainId:new s.BN(i),nonce:o,maxPriorityFeePerGas:u,maxFeePerGas:f,gasLimit:c,to:h,value:l,data:d,accessList:null!=p?p:[],v:void 0!==m?new s.BN(m):void 0,r:b,s:v},e)},r.prototype.getDataFee=function(){var t=e.prototype.getDataFee.call(this);return t.iaddn(c.AccessLists.getDataFeeEIP2930(this.accessList,this.common)),t},r.prototype.getUpfrontCost=function(t){void 0===t&&(t=new s.BN(0));var e=s.BN.min(this.maxPriorityFeePerGas,this.maxFeePerGas.sub(t)).add(t);return this.gasLimit.mul(e).add(this.value)},r.prototype.raw=function(){return[s.bnToUnpaddedBuffer(this.chainId),s.bnToUnpaddedBuffer(this.nonce),s.bnToUnpaddedBuffer(this.maxPriorityFeePerGas),s.bnToUnpaddedBuffer(this.maxFeePerGas),s.bnToUnpaddedBuffer(this.gasLimit),void 0!==this.to?this.to.buf:t.from([]),s.bnToUnpaddedBuffer(this.value),this.data,this.accessList,void 0!==this.v?s.bnToUnpaddedBuffer(this.v):t.from([]),void 0!==this.r?s.bnToUnpaddedBuffer(this.r):t.from([]),void 0!==this.s?s.bnToUnpaddedBuffer(this.s):t.from([])]},r.prototype.serialize=function(){var e=this.raw();return t.concat([h,s.rlp.encode(e)])},r.prototype.getMessageToSign=function(e){void 0===e&&(e=!0);var r=this.raw().slice(0,9),n=t.concat([h,s.rlp.encode(r)]);return e?s.keccak256(n):n},r.prototype.hash=function(){if(!this.isSigned())throw new Error("Cannot call hash method if transaction is not signed");return s.keccak256(this.serialize())},r.prototype.getMessageToVerifySignature=function(){return this.getMessageToSign()},r.prototype.getSenderPublicKey=function(){var t;if(!this.isSigned())throw new Error("Cannot call this method if transaction is not signed");var e=this.getMessageToVerifySignature();if(this.common.gteHardfork("homestead")&&(null===(t=this.s)||void 0===t?void 0:t.gt(f.N_DIV_2)))throw new Error("Invalid Signature: s-values greater than secp256k1n/2 are considered invalid");var r=this.v,n=this.r,i=this.s;try{return s.ecrecover(e,r.addn(27),s.bnToUnpaddedBuffer(n),s.bnToUnpaddedBuffer(i))}catch(t){throw new Error("Invalid Signature")}},r.prototype._processSignature=function(t,e,n){var i={common:this.common};return r.fromTxData({chainId:this.chainId,nonce:this.nonce,maxPriorityFeePerGas:this.maxPriorityFeePerGas,maxFeePerGas:this.maxFeePerGas,gasLimit:this.gasLimit,to:this.to,value:this.value,data:this.data,accessList:this.accessList,v:new s.BN(t-27),r:new s.BN(e),s:new s.BN(n)},i)},r.prototype.toJSON=function(){var t=c.AccessLists.getAccessListJSON(this.accessList);return{chainId:s.bnToHex(this.chainId),nonce:s.bnToHex(this.nonce),maxPriorityFeePerGas:s.bnToHex(this.maxPriorityFeePerGas),maxFeePerGas:s.bnToHex(this.maxFeePerGas),gasLimit:s.bnToHex(this.gasLimit),to:void 0!==this.to?this.to.toString():void 0,value:s.bnToHex(this.value),data:"0x"+this.data.toString("hex"),accessList:t,v:void 0!==this.v?s.bnToHex(this.v):void 0,r:void 0!==this.r?s.bnToHex(this.r):void 0,s:void 0!==this.s?s.bnToHex(this.s):void 0}},r}(u.BaseTransaction);e.default=l}).call(this,r(1).Buffer)},function(t,e,r){"use strict";t.exports=function(t){var e,r=this;return this.net.getId().then((function(t){return e=t,r.getBlock(0)})).then((function(r){var n="private";return"0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3"===r.hash&&1===e&&(n="main"),"0cd786a2425d16f152c658316c423e6ce1181e15c3295826d7c9904cba9ce303"===r.hash&&2===e&&(n="morden"),"0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d"===r.hash&&3===e&&(n="ropsten"),"0x6341fd3daf94b748c72ced5a5b26028f2474f5f00d824504e4fa37a75767e177"===r.hash&&4===e&&(n="rinkeby"),"0xbf7e331f7f7c1dd2e05159666b3bf8bc7a8a3a9eb1d518969eab529dd9b88c1a"===r.hash&&5===e&&(n="goerli"),"0xa3c565fc15c7478862d50ccd6561e3c06b24cc509bf388941c25ea985ce32cb9"===r.hash&&42===e&&(n="kovan"),"function"==typeof t&&t(null,n),n})).catch((function(e){if("function"!=typeof t)throw e;t(e)}))}},function(t,e,r){"use strict";var n=r(27),i=r(58).subscriptions,o=r(30),a=r(61),s=function(){var t=this;n.packageInit(this,arguments);var e=this.setRequestManager;this.setRequestManager=function(r){return e(r),t.net.setRequestManager(r),!0};var r=this.setProvider;this.setProvider=function(){r.apply(t,arguments),t.setRequestManager(t._requestManager)},this.net=new a(this),[new i({name:"subscribe",type:"shh",subscriptions:{messages:{params:1}}}),new o({name:"getVersion",call:"shh_version",params:0}),new o({name:"getInfo",call:"shh_info",params:0}),new o({name:"setMaxMessageSize",call:"shh_setMaxMessageSize",params:1}),new o({name:"setMinPoW",call:"shh_setMinPoW",params:1}),new o({name:"markTrustedPeer",call:"shh_markTrustedPeer",params:1}),new o({name:"newKeyPair",call:"shh_newKeyPair",params:0}),new o({name:"addPrivateKey",call:"shh_addPrivateKey",params:1}),new o({name:"deleteKeyPair",call:"shh_deleteKeyPair",params:1}),new o({name:"hasKeyPair",call:"shh_hasKeyPair",params:1}),new o({name:"getPublicKey",call:"shh_getPublicKey",params:1}),new o({name:"getPrivateKey",call:"shh_getPrivateKey",params:1}),new o({name:"newSymKey",call:"shh_newSymKey",params:0}),new o({name:"addSymKey",call:"shh_addSymKey",params:1}),new o({name:"generateSymKeyFromPassword",call:"shh_generateSymKeyFromPassword",params:1}),new o({name:"hasSymKey",call:"shh_hasSymKey",params:1}),new o({name:"getSymKey",call:"shh_getSymKey",params:1}),new o({name:"deleteSymKey",call:"shh_deleteSymKey",params:1}),new o({name:"newMessageFilter",call:"shh_newMessageFilter",params:1}),new o({name:"getFilterMessages",call:"shh_getFilterMessages",params:1}),new o({name:"deleteMessageFilter",call:"shh_deleteMessageFilter",params:1}),new o({name:"post",call:"shh_post",params:1,inputFormatter:[null]}),new o({name:"unsubscribe",call:"shh_unsubscribe",params:1})].forEach((function(e){e.attachToObject(t),e.setRequestManager(t._requestManager)}))};s.prototype.clearSubscriptions=function(){this._requestManager.clearSubscriptions()},n.addProviders(s),t.exports=s},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(489),o=function t(e){this.givenProvider=t.givenProvider,e&&e._requestManager&&(e=e.currentProvider),"undefined"!=typeof document&&(this.pick=i.pick),this.setProvider(e)};o.givenProvider=null,"undefined"!=typeof ethereum&ðereum.bzz&&(o.givenProvider=ethereum.bzz),o.prototype.setProvider=function(t){if(t&&"object"===(0,n.default)(t)&&"string"==typeof t.bzz&&(t=t.bzz),"string"!=typeof t){this.currentProvider=null;var e=new Error("No provider set, please set one using bzz.setProvider().");return this.download=this.upload=this.isAvailable=function(){throw e},!1}return this.currentProvider=t,this.download=i.at(t).download,this.upload=i.at(t).upload,this.isAvailable=i.at(t).isAvailable,!0},t.exports=o},function(t,e,r){"use strict";var n=function(){throw"This swarm.js function isn't available on the browser."},i={readFile:n},o={download:n,safeDownloadArchived:n,directoryTree:n},a={platform:n,arch:n},s={join:n,slice:n},u={spawn:n},f={lookup:n},c=r(490),h=r(203),l=r(503),d=r(505),p=r(506);t.exports=p({fs:i,files:o,os:a,path:s,child_process:u,defaultArchives:{},mimetype:f,request:c,downloadUrl:null,bytes:h,hash:l,pick:d})},function(t,e,r){"use strict";var n=r(491),i=r(494),o=r(101),a=r(495),s=r(496),u=function(){};t.exports=function(t,e,r){if(!t||"string"!=typeof t)throw new TypeError("must specify a URL");"function"==typeof e&&(r=e,e={});if(r&&"function"!=typeof r)throw new TypeError("expected cb to be undefined or a function");r=r||u;var f=(e=e||{}).json?"json":"text",c=(e=o({responseType:f},e)).headers||{},h=(e.method||"GET").toUpperCase(),l=e.query;l&&("string"!=typeof l&&(l=n.stringify(l)),t=i(t,l));"json"===e.responseType&&a(c,"Accept","application/json");e.json&&"GET"!==h&&"HEAD"!==h&&(a(c,"Content-Type","application/json"),e.body=JSON.stringify(e.body));return e.method=h,e.url=t,e.headers=c,delete e.query,delete e.json,s(e,r)}},function(t,e,r){"use strict";var n=r(0)(r(2)),i=r(492),o=r(101),a=r(493);function s(t,e){return e.encode?e.strict?i(t):encodeURIComponent(t):t}function u(t){var e=t.indexOf("?");return-1===e?"":t.slice(e+1)}function f(t,e){var r=function(t){var e;switch(t.arrayFormat){case"index":return function(t,r,n){e=/\[(\d*)\]$/.exec(t),t=t.replace(/\[\d*\]$/,""),e?(void 0===n[t]&&(n[t]={}),n[t][e[1]]=r):n[t]=r};case"bracket":return function(t,r,n){e=/(\[\])$/.exec(t),t=t.replace(/\[\]$/,""),e?void 0!==n[t]?n[t]=[].concat(n[t],r):n[t]=[r]:n[t]=r};default:return function(t,e,r){void 0!==r[t]?r[t]=[].concat(r[t],e):r[t]=e}}}(e=o({arrayFormat:"none"},e)),i=Object.create(null);return"string"!=typeof t?i:(t=t.trim().replace(/^[?#&]/,""))?(t.split("&").forEach((function(t){var e=t.replace(/\+/g," ").split("="),n=e.shift(),o=e.length>0?e.join("="):void 0;o=void 0===o?null:a(o),r(a(n),o,i)})),Object.keys(i).sort().reduce((function(t,e){var r=i[e];return Boolean(r)&&"object"===(0,n.default)(r)&&!Array.isArray(r)?t[e]=function t(e){return Array.isArray(e)?e.sort():"object"===(0,n.default)(e)?t(Object.keys(e)).sort((function(t,e){return Number(t)-Number(e)})).map((function(t){return e[t]})):e}(r):t[e]=r,t}),Object.create(null))):i}e.extract=u,e.parse=f,e.stringify=function(t,e){!1===(e=o({encode:!0,strict:!0,arrayFormat:"none"},e)).sort&&(e.sort=function(){});var r=function(t){switch(t.arrayFormat){case"index":return function(e,r,n){return null===r?[s(e,t),"[",n,"]"].join(""):[s(e,t),"[",s(n,t),"]=",s(r,t)].join("")};case"bracket":return function(e,r){return null===r?s(e,t):[s(e,t),"[]=",s(r,t)].join("")};default:return function(e,r){return null===r?s(e,t):[s(e,t),"=",s(r,t)].join("")}}}(e);return t?Object.keys(t).sort(e.sort).map((function(n){var i=t[n];if(void 0===i)return"";if(null===i)return s(n,e);if(Array.isArray(i)){var o=[];return i.slice().forEach((function(t){void 0!==t&&o.push(r(n,t,o.length))})),o.join("&")}return s(n,e)+"="+s(i,e)})).filter((function(t){return t.length>0})).join("&"):""},e.parseUrl=function(t,e){return{url:t.split("?")[0]||"",query:f(u(t),e)}}},function(t,e,r){"use strict";t.exports=function(t){return encodeURIComponent(t).replace(/[!'()*]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()}))}},function(t,e,r){"use strict";var n=r(0)(r(2)),i=new RegExp("%[a-f0-9]{2}","gi"),o=new RegExp("(%[a-f0-9]{2})+","gi");function a(t,e){try{return decodeURIComponent(t.join(""))}catch(t){}if(1===t.length)return t;e=e||1;var r=t.slice(0,e),n=t.slice(e);return Array.prototype.concat.call([],a(r),a(n))}function s(t){try{return decodeURIComponent(t)}catch(n){for(var e=t.match(i),r=1;r0&&(h=setTimeout((function(){if(!f){f=!0,c.abort("timeout");var t=new Error("XMLHttpRequest timeout");t.code="ETIMEDOUT",i(t)}}),t.timeout)),c.setRequestHeader)for(s in m)m.hasOwnProperty(s)&&c.setRequestHeader(s,m[s]);else if(t.headers&&!function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0}(t.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in t&&(c.responseType=t.responseType),"beforeSend"in t&&"function"==typeof t.beforeSend&&t.beforeSend(c),c.send(p||null),c}t.exports=u,t.exports.default=u,u.XMLHttpRequest=n.XMLHttpRequest||function(){},u.XDomainRequest="withCredentials"in new u.XMLHttpRequest?u.XMLHttpRequest:n.XDomainRequest,function(t,e){for(var r=0;r>>31),r=(p=t[9]^t[19]^t[29]^t[39]^t[49])^(u<<1|s>>>31),t[0]^=e,t[1]^=r,t[10]^=e,t[11]^=r,t[20]^=e,t[21]^=r,t[30]^=e,t[31]^=r,t[40]^=e,t[41]^=r,e=i^(f<<1|c>>>31),r=o^(c<<1|f>>>31),t[2]^=e,t[3]^=r,t[12]^=e,t[13]^=r,t[22]^=e,t[23]^=r,t[32]^=e,t[33]^=r,t[42]^=e,t[43]^=r,e=s^(h<<1|l>>>31),r=u^(l<<1|h>>>31),t[4]^=e,t[5]^=r,t[14]^=e,t[15]^=r,t[24]^=e,t[25]^=r,t[34]^=e,t[35]^=r,t[44]^=e,t[45]^=r,e=f^(d<<1|p>>>31),r=c^(p<<1|d>>>31),t[6]^=e,t[7]^=r,t[16]^=e,t[17]^=r,t[26]^=e,t[27]^=r,t[36]^=e,t[37]^=r,t[46]^=e,t[47]^=r,e=h^(i<<1|o>>>31),r=l^(o<<1|i>>>31),t[8]^=e,t[9]^=r,t[18]^=e,t[19]^=r,t[28]^=e,t[29]^=r,t[38]^=e,t[39]^=r,t[48]^=e,t[49]^=r,m=t[0],b=t[1],W=t[11]<<4|t[10]>>>28,Z=t[10]<<4|t[11]>>>28,P=t[20]<<3|t[21]>>>29,B=t[21]<<3|t[20]>>>29,st=t[31]<<9|t[30]>>>23,ut=t[30]<<9|t[31]>>>23,z=t[40]<<18|t[41]>>>14,K=t[41]<<18|t[40]>>>14,U=t[2]<<1|t[3]>>>31,j=t[3]<<1|t[2]>>>31,v=t[13]<<12|t[12]>>>20,y=t[12]<<12|t[13]>>>20,J=t[22]<<10|t[23]>>>22,X=t[23]<<10|t[22]>>>22,T=t[33]<<13|t[32]>>>19,R=t[32]<<13|t[33]>>>19,ft=t[42]<<2|t[43]>>>30,ct=t[43]<<2|t[42]>>>30,et=t[5]<<30|t[4]>>>2,rt=t[4]<<30|t[5]>>>2,N=t[14]<<6|t[15]>>>26,L=t[15]<<6|t[14]>>>26,g=t[25]<<11|t[24]>>>21,w=t[24]<<11|t[25]>>>21,Y=t[34]<<15|t[35]>>>17,$=t[35]<<15|t[34]>>>17,I=t[45]<<29|t[44]>>>3,C=t[44]<<29|t[45]>>>3,A=t[6]<<28|t[7]>>>4,x=t[7]<<28|t[6]>>>4,nt=t[17]<<23|t[16]>>>9,it=t[16]<<23|t[17]>>>9,F=t[26]<<25|t[27]>>>7,D=t[27]<<25|t[26]>>>7,_=t[36]<<21|t[37]>>>11,k=t[37]<<21|t[36]>>>11,Q=t[47]<<24|t[46]>>>8,tt=t[46]<<24|t[47]>>>8,G=t[8]<<27|t[9]>>>5,V=t[9]<<27|t[8]>>>5,E=t[18]<<20|t[19]>>>12,O=t[19]<<20|t[18]>>>12,ot=t[29]<<7|t[28]>>>25,at=t[28]<<7|t[29]>>>25,q=t[38]<<8|t[39]>>>24,H=t[39]<<8|t[38]>>>24,M=t[48]<<14|t[49]>>>18,S=t[49]<<14|t[48]>>>18,t[0]=m^~v&g,t[1]=b^~y&w,t[10]=A^~E&P,t[11]=x^~O&B,t[20]=U^~N&F,t[21]=j^~L&D,t[30]=G^~W&J,t[31]=V^~Z&X,t[40]=et^~nt&ot,t[41]=rt^~it&at,t[2]=v^~g&_,t[3]=y^~w&k,t[12]=E^~P&T,t[13]=O^~B&R,t[22]=N^~F&q,t[23]=L^~D&H,t[32]=W^~J&Y,t[33]=Z^~X&$,t[42]=nt^~ot&st,t[43]=it^~at&ut,t[4]=g^~_&M,t[5]=w^~k&S,t[14]=P^~T&I,t[15]=B^~R&C,t[24]=F^~q&z,t[25]=D^~H&K,t[34]=J^~Y&Q,t[35]=X^~$&tt,t[44]=ot^~st&ft,t[45]=at^~ut&ct,t[6]=_^~M&m,t[7]=k^~S&b,t[16]=T^~I&A,t[17]=R^~C&x,t[26]=q^~z&U,t[27]=H^~K&j,t[36]=Y^~Q&G,t[37]=$^~tt&V,t[46]=st^~ft&et,t[47]=ut^~ct&rt,t[8]=M^~m&v,t[9]=S^~b&y,t[18]=I^~A&E,t[19]=C^~x&O,t[28]=z^~U&N,t[29]=K^~j&L,t[38]=Q^~G&W,t[39]=tt^~V&Z,t[48]=ft^~et&nt,t[49]=ct^~rt&it,t[0]^=a[n],t[1]^=a[n+1]},u=function(t){return function(e){var r;if("0x"===e.slice(0,2)){r=[];for(var a=2,u=e.length;a>2]|=e[d]<>2]|=r<>2]|=(192|r>>6)<>2]|=(128|63&r)<=57344?(u[b>>2]|=(224|r>>12)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<>2]|=(240|r>>18)<>2]|=(128|r>>12&63)<>2]|=(128|r>>6&63)<>2]|=(128|63&r)<=f){for(t.start=b-f,t.block=u[c],b=0;b>2]|=i[3&b],t.lastByteIndex===f)for(u[0]=u[c],b=1;b>4&15]+n[15&p]+n[p>>12&15]+n[p>>8&15]+n[p>>20&15]+n[p>>16&15]+n[p>>28&15]+n[p>>24&15];v%c==0&&(s(l),b=0)}return"0x"+m}(function(t){return{blocks:[],reset:!0,block:0,start:0,blockCount:1600-(t<<1)>>5,outputBlocks:t>>5,s:(e=[0,0,0,0,0,0,0,0,0,0],[].concat(e,e,e,e,e))};var e}(t),r)}};t.exports={keccak256:u(256),keccak512:u(512),keccak256s:u(256),keccak512s:u(512)}},function(t,e,r){"use strict";var n=function(t){return function(){return new Promise((function(e,r){var n,i=function(r){var n={},i=r.target.files.length,o=0;[].map.call(r.target.files,(function(r){var a=new FileReader;a.onload=function(a){var s=new Uint8Array(a.target.result);if("directory"===t){var u=r.webkitRelativePath;n[u.slice(u.indexOf("/")+1)]={type:"text/plain",data:s},++o===i&&e(n)}else if("file"===t){var f=r.webkitRelativePath;e({type:mimetype.lookup(f),data:s})}else e(s)},a.readAsArrayBuffer(r)}))};"directory"===t?((n=document.createElement("input")).addEventListener("change",i),n.type="file",n.webkitdirectory=!0,n.mozdirectory=!0,n.msdirectory=!0,n.odirectory=!0,n.directory=!0):((n=document.createElement("input")).addEventListener("change",i),n.type="file");var o=document.createEvent("MouseEvents");o.initEvent("click",!0,!1),n.dispatchEvent(o)}))}};t.exports={data:n("data"),file:n("file"),directory:n("directory")}},function(t,e,r){"use strict";t.exports=function(t){var e=t.fs,r=t.files,n=t.os,i=t.path,o=t.child_process,a=t.mimetype,s=t.defaultArchives,u=t.request,f=t.downloadUrl,c=t.bytes,h=t.hash,l=t.pick,d=function(t){return function(e){for(var r={},n=0,i=t.length;n=400?n(new Error("Error ".concat(i.statusCode,"."))):r(new Uint8Array(e))}))}))}},b=function(t){return function(e){return function e(r){return function(n){return function(i){var o=function(t){return void 0===t.path?Promise.resolve():"application/bzz-manifest+json"===t.contentType?e(t.hash)(n+t.path)(i):Promise.resolve((r=n+t.path,function(t){return function(e){return e[r]=t,e}})(function(t){return{type:t.contentType,hash:t.hash}}(t))(i));var r};return m(t)(r).then((function(t){return JSON.parse(j(t)).entries})).then((function(t){return Promise.all(t.map(o))})).then((function(){return i}))}}}(e)("")({})}},v=function(t){return function(e){return b(t)(e).then((function(t){return d(Object.keys(t))(Object.keys(t).map((function(e){return t[e].hash})))}))}},y=function(t){return function(e){return b(t)(e).then((function(e){var r=Object.keys(e),n=r.map((function(t){return e[t].hash})),i=r.map((function(t){return e[t].type})),o=n.map(m(t));return Promise.all(o).then((function(t){return d(r)(function(t){return t.map((function(t,e){return{type:i[e],data:t}}))}(t))}))}))}},g=function(t){return function(e){return function(n){return r.download(p(t)(e))(n)}}},w=function(t){return function(e){return function(r){return v(t)(e).then((function(e){var n=[];for(var o in e)if(o.length>0){var a=i.join(r,o);n.push(g(t)(e[o])(a))}return Promise.all(n).then((function(){return r}))}))}}},_=function(t){return function(e){return new Promise((function(r,n){var i={body:"string"==typeof e?N(e):e,method:"POST"};u("".concat(t,"/bzz-raw:/"),i,(function(t,e){return t?n(t):r(e)}))}))}},k=function(t){return function(e){return function(r){return function(n){return function i(o){var a="/"===r[0]?r:"/"+r,s="".concat(t,"/bzz:/").concat(e).concat(a),f={method:"PUT",headers:{"Content-Type":n.type},body:n.data};return new Promise((function(t,e){u(s,f,(function(r,n){return r?e(r):-1!==n.indexOf("error")?e(n):t(n)}))})).catch((function(t){return o>0&&i(o-1)}))}(3)}}}},M=function(t){return function(e){return A(t)({"":e})}},S=function(t){return function(r){return e.readFile(r).then((function(e){return M(t)({type:a.lookup(r),data:e})}))}},A=function(t){return function(e){return _(t)("{}").then((function(r){return Object.keys(e).reduce((function(r,n){return r.then(function(r){return function(n){return k(t)(n)(r)(e[r])}}(n))}),Promise.resolve(r))}))}},x=function(t){return function(r){return e.readFile(r).then(_(t))}},E=function(t){return function(n){return function(i){return r.directoryTree(i).then((function(t){return Promise.all(t.map((function(t){return e.readFile(t)}))).then((function(e){var r=t.map((function(t){return t.slice(i.length)})),n=t.map((function(t){return a.lookup(t)||"text/plain"}));return d(r)(e.map((function(t,e){return{type:n[e],data:t}})))}))})).then((function(t){return(e=n?{"":t[n]}:{},function(t){var r={};for(var n in e)r[n]=e[n];for(var i in t)r[i]=t[i];return r})(t);var e})).then(A(t))}}},O=function(t){return function(e){if("data"===e.pick)return l.data().then(_(t));if("file"===e.pick)return l.file().then(M(t));if("directory"===e.pick)return l.directory().then(A(t));if(e.path)switch(e.kind){case"data":return x(t)(e.path);case"file":return S(t)(e.path);case"directory":return E(t)(e.defaultFile)(e.path)}else{if(e.length||"string"==typeof e)return _(t)(e);if(e instanceof Object)return A(t)(e)}return Promise.reject(new Error("Bad arguments"))}},P=function(t){return function(e){return function(r){return C(t)(e).then((function(n){return n?r?w(t)(e)(r):y(t)(e):r?g(t)(e)(r):m(t)(e)}))}}},B=function(t,e){var i=n.platform().replace("win32","windows")+"-"+("x64"===n.arch()?"amd64":"386"),o=(e||s)[i],a=f+o.archive+".tar.gz",u=o.archiveMD5,c=o.binaryMD5;return r.safeDownloadArchived(a)(u)(c)(t)},T=function(t){return new Promise((function(e,r){var n=o.spawn,i=function(t){return function(e){return-1!==(""+e).indexOf(t)}},a=t.account,s=t.password,u=t.dataDir,f=t.ensApi,c=t.privateKey,h=0,l=n(t.binPath,["--bzzaccount",a||c,"--datadir",u,"--ens-api",f]),d=function(t){0===h&&i("Passphrase")(t)?setTimeout((function(){h=1,l.stdin.write(s+"\n")}),500):i("Swarm http proxy started")(t)&&(h=2,clearTimeout(p),e(l))};l.stdout.on("data",d),l.stderr.on("data",d);var p=setTimeout((function(){return r(new Error("Couldn't start swarm process."))}),2e4)}))},R=function(t){return new Promise((function(e,r){t.stderr.removeAllListeners("data"),t.stdout.removeAllListeners("data"),t.stdin.removeAllListeners("error"),t.removeAllListeners("error"),t.removeAllListeners("exit"),t.kill("SIGINT");var n=setTimeout((function(){return t.kill("SIGKILL")}),8e3);t.once("close",(function(){clearTimeout(n),e()}))}))},I=function(t){return _(t)("test").then((function(t){return"c9a99c7d326dcc6316f32fe2625b311f6dc49a175e6877681ded93137d3569e7"===t})).catch((function(){return!1}))},C=function(t){return function(e){return m(t)(e).then((function(t){try{return!!JSON.parse(j(t)).entries}catch(t){return!1}}))}},U=function(t){return function(e,r,n,i,o){var a;return void 0!==e&&(a=t(e)),void 0!==r&&(a=t(r)),void 0!==n&&(a=t(n)),void 0!==i&&(a=t(i)),void 0!==o&&(a=t(o)),a}},j=function(t){return c.toString(c.fromUint8Array(t))},N=function(t){return c.toUint8Array(c.fromString(t))},L=function(t){return{download:function(e,r){return P(t)(e)(r)},downloadData:U(m(t)),downloadDataToDisk:U(g(t)),downloadDirectory:U(y(t)),downloadDirectoryToDisk:U(w(t)),downloadEntries:U(b(t)),downloadRoutes:U(v(t)),isAvailable:function(){return I(t)},upload:function(e){return O(t)(e)},uploadData:U(_(t)),uploadFile:U(M(t)),uploadFileFromDisk:U(M(t)),uploadDataFromDisk:U(x(t)),uploadDirectory:U(A(t)),uploadDirectoryFromDisk:U(E(t)),uploadToManifest:U(k(t)),pick:l,hash:h,fromString:N,toString:j}};return{at:L,local:function(t){return function(e){return I("http://localhost:8500").then((function(r){return r?e(L("http://localhost:8500")).then((function(){})):B(t.binPath,t.archives).onData((function(e){return(t.onProgress||function(){})(e.length)})).then((function(){return T(t)})).then((function(t){return e(L("http://localhost:8500")).then((function(){return t}))})).then(R)}))}},download:P,downloadBinary:B,downloadData:m,downloadDataToDisk:g,downloadDirectory:y,downloadDirectoryToDisk:w,downloadEntries:b,downloadRoutes:v,isAvailable:I,startProcess:T,stopProcess:R,upload:O,uploadData:_,uploadDataFromDisk:x,uploadFile:M,uploadFileFromDisk:S,uploadDirectory:A,uploadDirectoryFromDisk:E,uploadToManifest:k,pick:l,hash:h,fromString:N,toString:j}}}])})); - //# sourceMappingURL=web3.min.js.map \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js.meta deleted file mode 100644 index 27d342f00..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3.min.js.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 170f1759f9a5fac468f925185c9fb186 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3modal.js b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3modal.js deleted file mode 100644 index 04b6b04a8..000000000 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplates/Web3GL-MetaMask/web3/lib/web3modal.js +++ /dev/null @@ -1,54 +0,0 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("Web3Modal",[],t):"object"==typeof exports?exports.Web3Modal=t():e.Web3Modal=t()}(this,function(){return function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=20)}([function(e,t,n){"use strict";e.exports=n(22)},function(e,t,n){"use strict";n.r(t),n.d(t,"__extends",function(){return r}),n.d(t,"__assign",function(){return o}),n.d(t,"__rest",function(){return u}),n.d(t,"__decorate",function(){return a}),n.d(t,"__param",function(){return l}),n.d(t,"__metadata",function(){return c}),n.d(t,"__awaiter",function(){return A}),n.d(t,"__generator",function(){return s}),n.d(t,"__createBinding",function(){return M}),n.d(t,"__exportStar",function(){return I}),n.d(t,"__values",function(){return g}),n.d(t,"__read",function(){return d}),n.d(t,"__spread",function(){return f}),n.d(t,"__spreadArrays",function(){return N}),n.d(t,"__await",function(){return j}),n.d(t,"__asyncGenerator",function(){return y}),n.d(t,"__asyncDelegator",function(){return p}),n.d(t,"__asyncValues",function(){return D}),n.d(t,"__makeTemplateObject",function(){return v}),n.d(t,"__importStar",function(){return w}),n.d(t,"__importDefault",function(){return C}),n.d(t,"__classPrivateFieldGet",function(){return T}),n.d(t,"__classPrivateFieldSet",function(){return m}); -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ -var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function r(e,t){function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var o=function(){return(o=Object.assign||function(e){for(var t,n=1,i=arguments.length;n=0;a--)(r=e[a])&&(u=(o<3?r(u):o>3?r(t,n,u):r(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}function l(e,t){return function(n,i){t(n,i,e)}}function c(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function A(e,t,n,i){return new(n||(n=Promise))(function(r,o){function u(e){try{l(i.next(e))}catch(e){o(e)}}function a(e){try{l(i.throw(e))}catch(e){o(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(u,a)}l((i=i.apply(e,t||[])).next())})}function s(e,t){var n,i,r,o,u={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;u;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return u.label++,{value:o[1],done:!1};case 5:u.label++,i=o[1],o=[0];continue;case 7:o=u.ops.pop(),u.trys.pop();continue;default:if(!(r=(r=u.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){u=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function d(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,o=n.call(e),u=[];try{for(;(void 0===t||t-- >0)&&!(i=o.next()).done;)u.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return u}function f(){for(var e=[],t=0;t1||a(e,t)})})}function a(e,t){try{!function(e){e.value instanceof j?Promise.resolve(e.value.v).then(l,c):A(o[0][2],e)}(r[e](t))}catch(e){A(o[0][3],e)}}function l(e){a("next",e)}function c(e){a("throw",e)}function A(e,t){e(t),o.shift(),o.length&&a(o[0][0],o[0][1])}}function p(e){var t,n;return t={},i("next"),i("throw",function(e){throw e}),i("return"),t[Symbol.iterator]=function(){return this},t;function i(i,r){t[i]=e[i]?function(t){return(n=!n)?{value:j(e[i](t)),done:"return"===i}:r?r(t):t}:r}}function D(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=g(e),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(n){t[n]=e[n]&&function(t){return new Promise(function(i,r){(function(e,t,n,i){Promise.resolve(i).then(function(t){e({value:t,done:n})},t)})(i,r,(t=e[n](t)).done,t.value)})}}}function v(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function w(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function C(e){return e&&e.__esModule?e:{default:e}}function T(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function m(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(1);i.__exportStar(n(31),t),i.__exportStar(n(32),t),i.__exportStar(n(33),t),i.__exportStar(n(34),t)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(1);i.__exportStar(n(27),t),i.__exportStar(n(28),t),i.__exportStar(n(29),t)},function(e,t,n){"use strict";e.exports=n(78)},function(e,t,n){"use strict";var i;Object.defineProperty(t,"__esModule",{value:!0}),t.themesList=void 0;var r=n(1),o=r.__importDefault(n(35)),u=r.__importDefault(n(36));t.themesList=((i={default:o.default})[o.default.name]=o.default,i[u.default.name]=u.default,i)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.providers=t.injected=t.connectors=void 0;var i=n(1),r=i.__importStar(n(37));t.connectors=r;var o=i.__importStar(n(11));t.injected=o;var u=i.__importStar(n(62));t.providers=u},function(e,t,n){"use strict";var i=n(4),r={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},u={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},a={};function l(e){return i.isMemo(e)?u:a[e.$$typeof]||r}a[i.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},a[i.Memo]=u;var c=Object.defineProperty,A=Object.getOwnPropertyNames,s=Object.getOwnPropertySymbols,M=Object.getOwnPropertyDescriptor,I=Object.getPrototypeOf,g=Object.prototype;e.exports=function e(t,n,i){if("string"!=typeof n){if(g){var r=I(n);r&&r!==g&&e(t,r,i)}var u=A(n);s&&(u=u.concat(s(n)));for(var a=l(t),d=l(n),f=0;f1)for(var n=1;n1?t-1:0),i=1;i0?" Additional arguments: "+n.join(", "):""))}var z=function(e){var t=document.head,n=e||t,i=document.createElement("style"),r=function(e){for(var t=e.childNodes,n=t.length;n>=0;n--){var i=t[n];if(i&&1===i.nodeType&&i.hasAttribute(D))return i}}(n),o=void 0!==r?r.nextSibling:null;i.setAttribute(D,"active"),i.setAttribute(v,w);var u=E();return u&&i.setAttribute("nonce",u),n.insertBefore(i,o),i},h=function(e){if(e.sheet)return e.sheet;for(var t=document.styleSheets,n=0,i=t.length;n=0){var n=document.createTextNode(t),i=this.nodes[e];return this.element.insertBefore(n,i||null),this.length++,!0}return!1},t.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},t.getRule=function(e){return e=this.groupSizes.length){for(var n=this.groupSizes,i=n.length,r=i;e>=r;)(r<<=1)<0&&b(16,""+e);this.groupSizes=new Uint32Array(r),this.groupSizes.set(n),this.length=r;for(var o=i;o=this.length||0===this.groupSizes[e])return t;for(var n=this.groupSizes[e],i=this.indexOfGroup(e),r=i+n,o=i;o=P&&(P=t+1),k.set(e,t),B.set(t,e)},Z="style["+D+"]["+v+'="'+w+'"]',R=new RegExp("^"+D+'\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'),H=function(e,t,n){for(var i,r=n.split(","),o=0,u=r.length;o0&&(c+=e+",")}),i+=""+a+l+'{content:"'+c+'"}/*!sc*/\n'}}}return i}(this)},e}(),K=5381,q=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},_=function(e){return q(K,e)};var $=/^\s*\/\/.*$/gm;function ee(e){var t,n,i,r=void 0===e?N:e,o=r.options,u=void 0===o?N:o,a=r.plugins,c=void 0===a?f:a,A=new l.a(u),s=[],M=function(e){function t(t){if(t)try{e(t+"}")}catch(e){}}return function(n,i,r,o,u,a,l,c,A,s){switch(n){case 1:if(0===A&&64===i.charCodeAt(0))return e(i+";"),"";break;case 2:if(0===c)return i+"/*|*/";break;case 3:switch(c){case 102:case 112:return e(r[0]+i),"";default:return i+(0===s?"/*|*/":"")}case-2:i.split("/*|*/}").forEach(t)}}}(function(e){s.push(e)}),I=function(e,i,r){return i>0&&-1!==r.slice(0,i).indexOf(n)&&r.slice(i-n.length,i)!==n?"."+t:e};function g(e,r,o,u){void 0===u&&(u="&");var a=e.replace($,""),l=r&&o?o+" "+r+" { "+a+" }":a;return t=u,n=r,i=new RegExp("\\"+n+"\\b","g"),A(o||!r?"":r,l)}return A.use([].concat(c,[function(e,t,r){2===e&&r.length&&r[0].lastIndexOf(n)>0&&(r[0]=r[0].replace(i,I))},M,function(e){if(-2===e){var t=s;return s=[],t}}])),g.hash=c.length?c.reduce(function(e,t){return t.name||b(15),q(e,t.name)},K).toString():"",g}var te=o.a.createContext(),ne=te.Consumer,ie=o.a.createContext(),re=(ie.Consumer,new J),oe=ee();function ue(){return Object(r.useContext)(te)||re}function ae(){return Object(r.useContext)(ie)||oe}function le(e){var t=Object(r.useState)(e.stylisPlugins),n=t[0],i=t[1],u=ue(),l=Object(r.useMemo)(function(){var t=u;return e.sheet?t=e.sheet:e.target&&(t=t.reconstructWithOptions({target:e.target})),e.disableCSSOMInjection&&(t=t.reconstructWithOptions({useCSSOMInjection:!1})),t},[e.disableCSSOMInjection,e.sheet,e.target]),c=Object(r.useMemo)(function(){return ee({options:{prefix:!e.disableVendorPrefixes},plugins:n})},[e.disableVendorPrefixes,n]);return Object(r.useEffect)(function(){a()(n,e.stylisPlugins)||i(e.stylisPlugins)},[e.stylisPlugins]),o.a.createElement(te.Provider,{value:l},o.a.createElement(ie.Provider,{value:c},e.children))}var ce=function(){function e(e,t){var n=this;this.inject=function(e){e.hasNameForId(n.id,n.name)||e.insertRules(n.id,n.name,oe.apply(void 0,n.stringifyArgs))},this.toString=function(){return b(12,String(n.name))},this.name=e,this.id="sc-keyframes-"+e,this.stringifyArgs=t}return e.prototype.getName=function(){return this.name},e}(),Ae=/([A-Z])/g,se=/^ms-/;function Me(e){return e.replace(Ae,"-$1").toLowerCase().replace(se,"-ms-")}var Ie=function(e){return void 0===e||null===e||!1===e||""===e},ge=function e(t,n){var i=[];return Object.keys(t).forEach(function(n){if(!Ie(t[n])){if(d(t[n]))return i.push.apply(i,e(t[n],n)),i;if(j(t[n]))return i.push(Me(n)+":",t[n],";"),i;i.push(Me(n)+": "+function(e,t){return null==t||"boolean"==typeof t||""===t?"":"number"!=typeof t||0===t||e in c.a?String(t).trim():t+"px"}(n,t[n])+";")}return i}),n?[n+" {"].concat(i,["}"]):i};function de(e,t,n){if(Array.isArray(e)){for(var i,r=[],o=0,u=e.length;o1?t-1:0),i=1;i1?t-1:0),i=1;i25?39:97))};function Ce(e){var t,n="";for(t=Math.abs(e);t>ve;t=t/ve|0)n=we(t%ve)+n;return(we(t%ve)+n).replace(De,"$1-$2")}function Te(e){for(var t=0;t>>0);if(!t.hasNameForId(i,o)){var u=n(r,"."+o,void 0,i);t.insertRules(i,o,u)}return this.staticRulesId=o,o}for(var a=this.rules.length,l=q(this.baseHash,n.hash),c="",A=0;A>>0);if(!t.hasNameForId(i,g)){var d=n(c,"."+g,void 0,i);t.insertRules(i,g,d)}return g},e}(),Ee=(new Set,function(e,t,n){return void 0===n&&(n=N),e.theme!==n.theme&&e.theme||t||n.theme}),be=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,ze=/(^-|-$)/g;function he(e){return e.replace(be,"-").replace(ze,"")}function xe(e){return"string"==typeof e&&!0}var Le=function(e){return Ce(_(e)>>>0)};function Se(e,t){return e&&t?e+" "+t:e||t}var Qe=o.a.createContext(),Oe=Qe.Consumer;function ke(e){var t=Object(r.useContext)(Qe),n=Object(r.useMemo)(function(){return function(e,t){return e?j(e)?e(t):Array.isArray(e)||"object"!=typeof e?b(8):t?I({},t,{},e):e:b(14)}(e.theme,t)},[e.theme,t]);return e.children?o.a.createElement(Qe.Provider,{value:n},e.children):null}var Be={};function Pe(e,t,n){var i=e.attrs,o=e.componentStyle,u=e.defaultProps,a=e.foldedComponentIds,l=e.shouldForwardProp,c=e.styledComponentId,s=e.target;Object(r.useDebugValue)(c);var M=function(e,t,n){void 0===e&&(e=N);var i=I({},t,{theme:e}),r={};return n.forEach(function(e){var t,n=e;for(t in j(n)&&(n=n(i)),n)i[t]=r[t]="className"===t?Se(r[t],n[t]):n[t]}),[i,r]}(Ee(t,Object(r.useContext)(Qe),u)||N,t,i),g=M[0],d=M[1],f=function(e,t,n,i){var o=ue(),u=ae(),a=e.isStatic&&!t?e.generateAndInjectStyles(N,o,u):e.generateAndInjectStyles(n,o,u);return Object(r.useDebugValue)(a),a}(o,i.length>0,g),y=n,p=d.$as||t.$as||d.as||t.as||s,D=xe(p),v=d!==t?I({},t,{},d):t,w=l||D&&A.a,C={};for(var T in v)"$"!==T[0]&&"as"!==T&&("forwardedAs"===T?C.as=v[T]:w&&!w(T,A.a)||(C[T]=v[T]));return t.style&&d.style!==t.style&&(C.style=I({},t.style,{},d.style)),C.className=Array.prototype.concat(a,c,f!==c?f:null,t.className,d.className).filter(Boolean).join(" "),C.ref=y,Object(r.createElement)(p,C)}function Ye(e,t,n){var i=p(e),r=!xe(e),u=t.displayName,a=void 0===u?function(e){return xe(e)?"styled."+e:"Styled("+y(e)+")"}(e):u,l=t.componentId,c=void 0===l?function(e,t){var n="string"!=typeof e?"sc":he(e);Be[n]=(Be[n]||0)+1;var i=n+"-"+Le(n+Be[n]);return t?t+"-"+i:i}(t.displayName,t.parentComponentId):l,A=t.attrs,s=void 0===A?f:A,g=t.displayName&&t.componentId?he(t.displayName)+"-"+t.componentId:t.componentId||c,d=i&&e.attrs?Array.prototype.concat(e.attrs,s).filter(Boolean):s,N=t.shouldForwardProp;i&&e.shouldForwardProp&&(N=N?function(n,i){return e.shouldForwardProp(n,i)&&t.shouldForwardProp(n,i)}:e.shouldForwardProp);var j,D=new me(i?e.componentStyle.rules.concat(n):n,g),v=function(e,t){return Pe(j,e,t)};return v.displayName=a,(j=o.a.forwardRef(v)).attrs=d,j.componentStyle=D,j.displayName=a,j.shouldForwardProp=N,j.foldedComponentIds=i?Array.prototype.concat(e.foldedComponentIds,e.styledComponentId):f,j.styledComponentId=g,j.target=i?e.target:e,j.withComponent=function(e){var i=t.componentId,r=function(e,t){if(null==e)return{};var n,i,r={},o=Object.keys(e);for(i=0;i=0||(r[n]=e[n]);return r}(t,["componentId"]),o=i&&i+"-"+(xe(e)?e:he(y(e)));return Ye(e,I({},r,{attrs:d,componentId:o}),n)},Object.defineProperty(j,"defaultProps",{get:function(){return this._foldedDefaultProps},set:function(t){this._foldedDefaultProps=i?pe({},e.defaultProps,t):t}}),j.toString=function(){return"."+j.styledComponentId},r&&M()(j,e,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,self:!0,styledComponentId:!0,target:!0,withComponent:!0}),j}var Ue=function(e){return function e(t,n,r){if(void 0===r&&(r=N),!Object(i.isValidElementType)(n))return b(1,String(n));var o=function(){return t(n,r,fe.apply(void 0,arguments))};return o.withConfig=function(i){return e(t,n,I({},r,{},i))},o.attrs=function(i){return e(t,n,I({},r,{attrs:Array.prototype.concat(r.attrs,i).filter(Boolean)}))},o}(Ye,e)};["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"].forEach(function(e){Ue[e]=Ue(e)});var Ge=function(){function e(e,t){this.rules=e,this.componentId=t,this.isStatic=Te(e)}var t=e.prototype;return t.createStyles=function(e,t,n,i){var r=i(de(this.rules,t,n).join(""),""),o=this.componentId+e;n.insertRules(o,o,r)},t.removeStyles=function(e,t){t.clearRules(this.componentId+e)},t.renderStyles=function(e,t,n,i){J.registerId(this.componentId+e),this.removeStyles(e,n),this.createStyles(e,t,n,i)},e}();function Ze(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i1?t-1:0),i=1;i"+t+""},this.getStyleTags=function(){return e.sealed?b(2):e._emitSheetCSS()},this.getStyleElement=function(){var t;if(e.sealed)return b(2);var n=((t={})[D]="",t[v]=w,t.dangerouslySetInnerHTML={__html:e.instance.toString()},t),i=E();return i&&(n.nonce=i),[o.a.createElement("style",I({},n,{key:"sc-0-0"}))]},this.seal=function(){e.sealed=!0},this.instance=new J({isServer:!0}),this.sealed=!1}var t=e.prototype;return t.collectStyles=function(e){return this.sealed?b(2):o.a.createElement(le,{sheet:this.instance},e)},t.interleaveWithNodeStream=function(e){return b(3)},e}(),Fe=function(e){var t=o.a.forwardRef(function(t,n){var i=Object(r.useContext)(Qe),u=e.defaultProps,a=Ee(t,i,u);return o.a.createElement(e,I({},t,{theme:a,ref:n}))});return M()(t,e),t.displayName="WithTheme("+y(e)+")",t},We=function(){return Object(r.useContext)(Qe)},Ve={StyleSheet:J,masterSheet:re},Xe="5.1.1";t.default=Ue}.call(this,n(10))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Provider=void 0;var i,r,o,u,a,l=n(1),c=l.__importStar(n(0)),A=l.__importDefault(n(13)),s=n(2),M=A.default.div(i||(i=l.__makeTemplateObject(["\n width: 45px;\n height: 45px;\n display: flex;\n border-radius: 50%;\n overflow: visible;\n box-shadow: none;\n justify-content: center;\n align-items: center;\n & img {\n width: 100%;\n height: 100%;\n }\n\n @media screen and (max-width: 768px) {\n width: 8.5vw;\n height: 8.5vw;\n }\n"],["\n width: 45px;\n height: 45px;\n display: flex;\n border-radius: 50%;\n overflow: visible;\n box-shadow: none;\n justify-content: center;\n align-items: center;\n & img {\n width: 100%;\n height: 100%;\n }\n\n @media screen and (max-width: 768px) {\n width: 8.5vw;\n height: 8.5vw;\n }\n"]))),I=A.default.div(r||(r=l.__makeTemplateObject(["\n width: 100%;\n font-size: 24px;\n font-weight: 700;\n margin-top: 0.5em;\n color: ",";\n @media screen and (max-width: 768px) {\n font-size: 5vw;\n }\n"],["\n width: 100%;\n font-size: 24px;\n font-weight: 700;\n margin-top: 0.5em;\n color: ",";\n @media screen and (max-width: 768px) {\n font-size: 5vw;\n }\n"])),function(e){return e.themeColors.main}),g=A.default.div(o||(o=l.__makeTemplateObject(["\n width: 100%;\n font-size: 18px;\n margin: 0.333em 0;\n color: ",";\n @media screen and (max-width: 768px) {\n font-size: 4vw;\n }\n"],["\n width: 100%;\n font-size: 18px;\n margin: 0.333em 0;\n color: ",";\n @media screen and (max-width: 768px) {\n font-size: 4vw;\n }\n"])),function(e){return e.themeColors.secondary}),d=A.default.div(u||(u=l.__makeTemplateObject(["\n transition: background-color 0.2s ease-in-out;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n background-color: ",";\n border-radius: 12px;\n padding: 24px 16px;\n @media screen and (max-width: 768px) {\n padding: 1vw;\n }\n"],["\n transition: background-color 0.2s ease-in-out;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n background-color: ",";\n border-radius: 12px;\n padding: 24px 16px;\n @media screen and (max-width: 768px) {\n padding: 1vw;\n }\n"])),function(e){return e.themeColors.background}),f=A.default.div(a||(a=l.__makeTemplateObject(["\n width: 100%;\n padding: 8px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n cursor: pointer;\n border-radius: 0;\n border: ",";\n @media (hover: hover) {\n &:hover "," {\n background-color: ",";\n }\n }\n"],["\n width: 100%;\n padding: 8px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n cursor: pointer;\n border-radius: 0;\n border: ",";\n @media (hover: hover) {\n &:hover "," {\n background-color: ",";\n }\n }\n"])),function(e){return"1px solid "+e.themeColors.border},d,function(e){return e.themeColors.hover});t.Provider=function(e){var t=e.name,n=e.logo,i=e.description,r=e.themeColors,o=e.onClick,u=l.__rest(e,["name","logo","description","themeColors","onClick"]);return c.createElement(f,l.__assign({themeColors:r,className:s.PROVIDER_WRAPPER_CLASSNAME,onClick:o},u),c.createElement(d,{themeColors:r,className:s.PROVIDER_CONTAINER_CLASSNAME},c.createElement(M,{className:s.PROVIDER_ICON_CLASSNAME},c.createElement("img",{src:n,alt:t})),c.createElement(I,{themeColors:r,className:s.PROVIDER_NAME_CLASSNAME},t),c.createElement(g,{themeColors:r,className:s.PROVIDER_DESCRIPTION_CLASSNAME},i)))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(1);i.__exportStar(n(16),t),i.__exportStar(n(79),t)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EventController=void 0;var i=function(){function e(){this._eventCallbacks=[]}return e.prototype.on=function(e){this._eventCallbacks.push(e)},e.prototype.off=function(e){e?e.callback?this._eventCallbacks=this._eventCallbacks.filter(function(t){return t.event!==e.event||t.callback!==e.callback}):this._eventCallbacks=this._eventCallbacks.filter(function(t){return t.event!==e.event}):this._eventCallbacks=[]},e.prototype.trigger=function(e,t){var n=this._eventCallbacks.filter(function(t){return t.event===e});n&&n.length&&n.forEach(function(e){e.callback(t)})},e}();t.EventController=i},function(e,t){e.exports=function(e,t,n,i){var r=n?n.call(i,e,t):void 0;if(void 0!==r)return!!r;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var o=Object.keys(e),u=Object.keys(t);if(o.length!==u.length)return!1;for(var a=Object.prototype.hasOwnProperty.bind(t),l=0;li&&(i=(t=t.trim()).charCodeAt(0)),i){case 38:return t.replace(d,"$1"+e.trim());case 58:return e.trim()+t.replace(d,"$1"+e.trim());default:if(0<1*n&&0l.charCodeAt(8))break;case 115:u=u.replace(l,"-webkit-"+l)+";"+u;break;case 207:case 102:u=u.replace(l,"-webkit-"+(102a.charCodeAt(0)&&(a=a.trim()),a=[a],0I)&&(Y=(Z=Z.replace(" ",":")).length),0h.length&&h.push(e)}function S(e,t,n){return null==e?0:function e(t,n,i,r){var a=typeof t;"undefined"!==a&&"boolean"!==a||(t=null);var l=!1;if(null===t)l=!0;else switch(a){case"string":case"number":l=!0;break;case"object":switch(t.$$typeof){case o:case u:l=!0}}if(l)return i(r,t,""===n?"."+Q(t,0):n),1;if(l=0,n=""===n?".":n+":",Array.isArray(t))for(var c=0;c
+public class HyperPlayLoginProvider : LoginProvider, IWeb3BuilderServiceAdapter +{ + [SerializeField] private Button loginButton; + + protected override void Initialize() + { + base.Initialize(); + + loginButton.onClick.AddListener(OnLoginClicked); + } + + public Web3Builder ConfigureServices(Web3Builder web3Builder) + { + return web3Builder.Configure(services => + { + services.UseHyperPlay().UseHyperPlaySigner().UseHyperPlayTransactionExecutor(); + }); + } + + private async void OnLoginClicked() + { + await TryLogin(); + } +} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs.meta new file mode 100644 index 000000000..4e7edde78 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 16b51cbda3e44ff44a13173ffbde98b3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From a94fdb9a451aa6c2444ed9d0baab502dadc7778d Mon Sep 17 00:00:00 2001 From: Robel Getnet Geremew Date: Fri, 17 May 2024 16:37:50 +0300 Subject: [PATCH 60/97] libc issue fix (#963) reverted some changes for the fix Co-authored-by: Juan Manuel Spoleti <104365141+juans-chainsafe@users.noreply.github.com> --- .../RpcClientWrapper.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs b/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs index 40d98d47c..86062770e 100644 --- a/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs @@ -1,5 +1,4 @@ using System; -using System.Net.Http; using ChainSafe.Gaming.Web3; using Nethereum.JsonRpc.Client; using Nethereum.Unity.Rpc; @@ -10,7 +9,7 @@ public class RpcClientWrapper : IRpcClientWrapper { public RpcClientWrapper(IChainConfig chainConfig) { - Client = new SimpleRpcClient(new Uri(chainConfig.Rpc), new HttpClient()); + Client = new UnityWebRequestRpcTaskClient(new Uri(chainConfig.Rpc)); } public IClient Client { get; private set; } From 1cb76e494ff3c064068dcc1bff132feea2989960 Mon Sep 17 00:00:00 2001 From: juans-chainsafe Date: Fri, 17 May 2024 13:41:29 +0000 Subject: [PATCH 61/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 14848 -> 14848 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 51712 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 239616 bytes 16 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 1278856593b2e599aa4936fe7925c57c9cb36ff4..f717d3cec1900faf0188fe6f7c8bc92de4acf015 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6?RU+dS&8+$^c1sZBqI9ZkNI4@<|cObv`u5>t}R&CM-RHt$b=%gQqAK*Y((8*&2#@?#jB%{p-Z+D6008IuL_7AQakg`}W@K-Her_YBfQ|0w1+lzZRbd?8PR)jyHJlEH)_ zjUk003CKzWvP~Hbfpj8+8ACFI5s(jpsX%#4AT|K10?8!-RT%(fQ-JIgpgMCfv|vct J>|U~y82|``Ow0fP delta 238 zcmZqpz}WDCaY6^n#`i(fHui)>3wSg)ZIYew#&flY`Pnr)q7xFY%{ZknXfiQ`| zn8AX<3`iRSS*AdiF@p(1GD8|eDnlYrECnc%$Y2g+Spa1X84Q3h6)0*16i)%NEr2>f MYRopfm+WK)0D*c-(*OVf diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 0d71fd139558c6344cfd451fb022e12fc1624029..ab9b72065f81bb9edf3a5ecb48c228c6ed350ab3 100644 GIT binary patch delta 235 zcmZqBY0#O_!Qvly_UXnR4Nd{Kl|iS>cFTHn)J#rqZ1$Afe1ubyQ6tgPBrPS$GSS4; zFfq|A*~rAiBsIk{#ULp$G0D`xC?zo^+1%XRB4siwcQlJCH~-JcDck`9Rd+>>p1kzK zr!QmsE0r?=93Y515VgsNmkX#Z_l>tyT1;|bTsxt>e3x<@u#vF$U4O6p3Tc6M0e1ubyQ6tsRFv-}$EXmN= z)Xdlkz2dlaC8<+@Nokm?<_m-wURXt{;^gotl0;89`qPh~I!!XyS`1`7r= zAZ-X_nF3kH3?>Z83~3Ch42eLo6re~VgE^380hBdlFaW|-pr{d0JO#+M0O|y(G28rD HP?iM%V)sJN diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index c5b019a66602d303ca8787f572c012ed33053ef9..1f447aa771eeae9fb579b13416e46a2c5c0d22dd 100644 GIT binary patch delta 235 zcmZq3X~>z-!SeCn>Gq91JSqZuAM4+{d-`~6IlpbC=cl>5y&=WFa*+x3}y_;3`Rgc2&Mw%ErHkos0t*P1XN`JluZG$Q-JEs!O(&sW%FZ0 GSrz~s=}pi8 delta 235 zcmZq3X~>z-!Qv;r>+{AQ9u)!cMQ5(@uTb%8c^2r}9B|NU^9q#%EE=hXhDpX2W=V#| zre?+_$!V#HhAC!==7tugh6VJy~1#EjdqVbR4_6cDhO1q`)qgM>fG4;zO|p{ZdTXHW%W;GFa*LR24e;b z1~VXS2xOT8S;h<|49N^>45K(Q2{NFswdkYxdsHDoXV!c?HB5l}n@$hH9L1gSCG J{Mb;I1pt!NMtuMP diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index 8cfbba9bdb19a0a0cadd6436bdbba0db1e3b5c03..d63b153764a89b302c79546b22882f420891909b 100644 GIT binary patch delta 242 zcmZp8z|`=7X+j6f48b`cHui)}5GXo4Q`gy7$a$wmhGBq$tNlZyLH#fIPnY?Dc=H~vnN4Z$`)JSZc9I+xm zfH7?5t9<7KpWU*`eH>GE>Q3IVqD=uR*kcV91gbXN`)RYtjA^^1RZp^>-yFA+kHtTc z!IHs*A&nu0AqmJz1hP#T41shagBe3IgAtGqf~i1xOCUA?sshO+0aY0QWmACc6rehD OFtlJu*}QwLD-!@J%}pNw delta 242 zcmZp8z|`=7X+j5!ceUZqjXfa~1j;wgujyX@#AT-C3gHr&Pc@rAOz`8;NHsJ}GPW>F zGBh?dGd4+1OHDLPF-tTzv@kU^Fi1@?GD|VANJ=p?o4jVe=H~vnN4Z!YOjWx%IbubC zz;p996HOOh_ie#veg=Qm-amQAiZ%tP;Px`8AV{@m=^V3zOb^>XZ|CgW9Ji8>#Xpt7 z5D1ePj2SE#%z(5ZkYx&F88etLBr~Kjq%tG|#ZrJGi45jImIYAOkih^5Q-PvJK=BkH Q+XAQ)q{eLX?zOH=046g~PXGV_ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index e1255d6979fad7c1635769c3f51b3c1cabaef0af..73fe4f41a27c2a304a6c9d0b9fd93c8ef400be7e 100644 GIT binary patch delta 235 zcmZoDX(*Y{!LnO}=k3OxAL;^n>O#%tnx%d%e$x&dIrRS0<|!ISSu_$YP0~`5EE7#k z4HFa1l8sDEOj1)UQw)+46O&90j8YO)lFiM{EmAf&>M}F2dDZ{`X@42GMF%=F{Cgg z0a=Mawkd-lkWOSUV@PH&0`fsH6)0~B#0EfBAh{%hYA8!XRG*%#c}=(yUNAiv2*bh16Kc3216iBVlZZ~ zU@!yHhCr4nkY&tZ!jR06#*oU82oy^JiX<|a16dY8SwjW`AWQ{{8Ue*qfNTq(PLLY2 J&5uoGSpXc-OYQ&w diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 3793ffa9372a99f437b31ad04a51f114457431b9..eee1bbb741589284675f3aecbaf9e6cff312d3e2 100644 GIT binary patch delta 235 zcmZp0XmFU&!E$8Xv6<9taA&WqSH}c^`}W^tILctM5iU-&`Z4#iWsFX_A(bWSMAU zYM7X4mTY8VVv?F-nPQNXn3!a0V3d-Wl5B2nZjmzioJbN&?he({lTAbe1Y8u-O+%(F zaabY(m8sEljJM%V|8zA-RvXQ!s?&MV98*@kj9Y0 zkOX8U0@}Xkd$zZT3(NyT}lim)%XA0TqC5#q>*Z9m}G2WmSkvb zYG!PboR*qsm|~V_ZfId@Xkd_g(v>CMo|Ti^9RygPfdk5~({yr2s_|8O(t!3!tnag8>kx0!590;weD31yCnQjoD^- HnTN~(x41`b diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 5725a3d1a1ffc5ee4110377c866d215279f03e85..5509bcf30b2a8fefe7eb090fa3cfe919c4a1579d 100644 GIT binary patch delta 1376 zcmZ8hZD^ZS6n^gek+z{}(7OetmjAAVq90Cq*qHPTje5xCt&H~&i65z#cDV-m>IUTq_J zzg5U&(?t<-+zyZ$9fSMvD#=bEKQcJ*5bd*kySkIP`IOpRswOV{fDaWWcN@BxN3-Fa zM28~eZ&9bY&`*vwxY-fKhCi5Bwc&M%eG;FQcva%x5Y~?%&U%#Z$p3&Y@Jk3xlWa#s zjiasvu3lCfaYE1Pc5I^*Y`BjO*l}LHL3mLkC;Ub}O_}N_yFmfc@_jJKhgouVIqF-y*^j%QtFEFas z8MVS}=tNAj2t&#^S?czCwEFy>p@uNKO6BhWgeu;g~U$c2! z*L2afm9C*25yNqQ$>u7J${(?&7q-jd7F21`hm|peES(3{du=4pCh33AUX?n>nj1!t zmGP+QX;i!u_)|9W1}EC#K{qxaMEf>?Z?EcbJ#Jdhn+0?1kZ&-Xu_k=`^2zdZRUV}! znn@ON#oVyv+cj>P*5tz$`|t<%_Spl`&>`-2 zMA<|+;n>PH8Ij;{DiJY)y#d1rC3}LwpqYxK{0YNI^!j^JMk*N&hqt8oQr$CwnVX#} zV9}T;{4%X2dTf^JMQtiWREVAqcxlbin={Av)^|9!b{_0gr#J4Izu11v@!3m{@}u=% zblp+D{I61k-eEd!EDpI_wUP9Nl{-(C2>ch%Ia}DR@{F^amFpT`)SfV??}8Xc3JH=7 zl6$Ei4Vob&(L-EJlk5>%e)1Bw1bO+%nj$$xeqlMcAXUEJ)XS9G2g(iWer5Cis(%19 C_6P9* delta 1350 zcmY*ZZA_b06n^geQE0Q$51@Q1?J$-fTi2I<&f#d9xcCE&(<~YdF~-E{4|V&Y$r3+eLX7_N+*<^_&HLQvIp^Hd zbI-lGXQF4KOD}7=->h@X=USC(q2;$9Wf{&`P;cE09OeOK7aw6kWvzzKv6-fo5abvj zRG{OQAL!WuFz)em@ge1jmPMt*12_~l@1?0&E1-^`u2|1MR(g{gD$qUyJgEU6>BNVv zsjaozWjxn=wgi??z19 zOYHy}2+w$w|c3R~(dsnV7bzD224a6?@pbw#L>OtVTwd?}qj z+k5m^sfe3W%~l`KFOZ^g(Mc0SRFsZZ>Ocy1hypx>I+`R85ISHGx{;K4zr;a_2PKY3 zOiLU?mq;;7q8`r>GF-<|wBReG)F2k5gKI)m+z!MePl|BpK)L!5M}w<5<;xdCn1 zi2(MX4RM;g$er=;N8+OzB^Jq!ra*G(@|U&X{6NF_kGQ|`S+~q8t-m)cJo0J$uA1-Uk>=#O8H0k9>)Ei z!{r+9v)Usj-7fl13M?1bGdF>1UF)lk8dI30f&) V;^nV>F{ZrVTlO^m&X&Vf{{R@B_-FtC diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 723b1cb72c6bebc96279ad6578b07e6c3f429d62..a14e8201d70e25020bcd0deffbf1e2d68253fd01 100644 GIT binary patch delta 235 zcmZpOXo#55!NPbZXX3`5BhmtCXPqaTr7rbf&S0TgWmcaIDbr-5lwB zuO=(IjcPeF7EF#%+@t^%)MA1P0#%D|$q_f7cc}R2_Sm4F&00!wZ2pN1mJB8gX$&b0 zNkCR2kZsCf2&5Ak%ovgxjDUO)Oa;nY0fnj2b}8X6d+rWl!}7+55wn3+x1RXEO~S9833@(+aofv%ieQ$Fr+ zbDzpqSY%nP@^f;8;wA;C;PFtXAV_r_pEXn2rW)T%dP);EYbnXG`KK}%0$~z^F@ptz z8IU#vvP^+2V+Iq3WQH_`RE9*LSPD=ik-;3uvH;2&G8h11Dp1r2D4qgjTL5)})R=9a Iu93+M0IFw4d;kCd diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 59f3966719402f336f87d185069208a9a2e577c5..6d363d4a9c79ad3627635afe7178b350383542b4 100644 GIT binary patch delta 254 zcmZoT!_;twX+j5!kL{a98+&~81>R1V%k+Gz=ejRQN>%4j#_G*4^o>|e5-m;AQj#na zO-v0F6U~y1OiWBtQ!G;qk`fb>Obv`u5>t}R&CM-R7#LU?8JHLtoERBwCr>mr*j#5C zmd4_vQuc51joASL$~WQzj&Hl`vtq5mtgwrhmrS;pGeH3+_yQ^jQXQf;Y2~!a`o<(1 zIjPMr<{V)0Ph_xUFkwhzNMT3rdQiQe-V7XNRX%;mKCg}xE1Nvfe?lCgzZ zlA*DwnXyT7T56(Uidmw$p@pfTfkA4Dky(m?MN*2H83O|=BLfoygA*fz?c|B32Ak_l z!_ru~j-}n3d}DTiKy&_|r5pl|{#zz$ypg+d%678FoCyk0!S^OmL6GWI>38N?Xx`>- zf9T}C`Nfq*%m;ZAT?&2zc1uu0RWfNP@Vt) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index c31af6dba1bb922190a27affe0cd6854dd8806d3..c354b4ba27db48424754cfb13e0678fc1adc34b4 100644 GIT binary patch delta 235 zcmZoDX(*Y{!Seh0u~!>=LNo=;HLph<2{rLqYd34D^D_IS%^x(~Su_$YP0~`5EE7#k z4HFa1l8sDEOj1)UQw)+46O&90j8YO)lFiM{Em9`O>)m9Ly>NQXWE=eeffLNmKbl-} zTvqwAT#xvZuwwEY{b>qN!7W-)L7-}#zWKX-6}ePT8~>bKzd6Vti`74o!IHs*A&nu0 zAqmJz1hP#T41shagBe3IgAtGqf~i1xOCUA?sshO+0aY0QWmACc6rehDFtlJu+01SB Gl^Fn;&r6g5 delta 235 zcmZoDX(*Y{!4e(3;oHWZ5KVy#O8pAit_%HJy38&iili`74s!4L?O7>pS# z7|ejQA&_MXWEnGx5*B8d#4SW&o9$PB#Dm diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 5e6a3392654fa8d0136678ec0199792e56c6330d..c1e9bcef81a6d931c50b38c47fc65301ea2b5d4a 100644 GIT binary patch delta 235 zcmZqhY4DlQ!Sasp{icmQ0ulln{m!JVm~+p2^`bPbqF=n8o7YJEV$w*oG)YTIvP?8F zHB3x2OExkwF-c9aOfg7GOiVI0FiJ^GNj5h(w@8_MPI?wgti|-FlXGMO1nxaL;kCs7 znEUoP?=HUYHESoIk?B%^3Yve13IbK99@zg@<9LI^r~kZ>Pd1mya!z5!1vm`@f zQ!`_ez0Bp@ph$Tnp#1k#BNW(>&;MnFCYrUK<00j4~W7U8~=ooSw6e zF+iYKCb6L+FVb`WhK=n{weR^%KeLW;f&x@@Wj$0Bq(17V>E4*1^LDYT@7c4xW<8@0 zi+?JEArK}p7&BNfm;q@+Aj=fUGG;JgNM=Z5NM%R_ilqQW5*f^aEDNBlA%g)BrUFHc VfZ{1YwgpfpNR8R{@0%GpSpZ5EQe6N5 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index f819f9b2779b8ce8c0984e842c66fbf6b38726fe..46ad2ec74dc66acf4e93dbabd785c6e1a5662c03 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6@6byD@&jXgKq1qxqnV`joiDt=0CMG7SDV8Y)Nr{O`rUphSi7CnE=H?bDn>PfwFte;#@L<#AAHe|vMzP#o zs`nKf7yo|7k=p7}FgYS*mI738qcT(wsM=`LpUcrP2Spv%UynbzStxWLi+>`6C4&h= z8bb<05|EV$WScS=0_j8sGlpaaBOo6HQ-Si9Kx_b11(Hhwsxkn|rU2O~Ky~I|Xu*)O JSw89^GXPCdO&b6J delta 238 zcmZqJ!`QHgaY6?RQ?$sujXgKq1zL_MS~^6Za@o_NYOP=B@qTlOhX{v8s-a<$v4vTZ zp|Po%u}N}TYNBC^S)#e2g{h%|L28PTS&D&0Qi_?`<_!TZ%q)^DH##Q&2o4Z9o8h1S zM{BF!B1MOf-zSScnj8@_O93i4PYEgrQeAm%X2lmKQ_mnx^T^FYq5D|;QyC0_Fp0sK z!GggINE-rKra+c4g9$@2LmERWLn2Tt1t^lpU=Czi0A&ps41h2dC~5>0PXV$mfI2~H L%r?tMJ!A#|bjC;; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 740f3928cba1d9311aee99af096163e46fcb090a..ceaddaa0a7b8fb29c10476a839b96b28999695bd 100644 GIT binary patch delta 236 zcmZpuXsDRb!NPH2&CiWJ8cG6tSbj(F_9l94pAp%*R{7=C%}10zvuGq*nxv&9Stgp8 z8YU*1B^#NTn53pyrWhn8CMKC07^NhpB%7O?Tcm8huYQw@#r5=*8I$)I1qeL9Vfy7Q zx2Ny=&b(3q%hZ{ZWsF-Cpn`k#p@Klw5{mt^PUKFRyYIpFsi!v|FkZvzpU7azV8W2b zkiw7zWF-RGrVNHaI+4MQA(_Dl$Opkxpu8mz8vs>-45K(Q2{NFswdkYxdsHDoXV!c?HB5l}n@$hH9L1gSCG JyxY>12>{M3MqvN| diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index f3a99330c6b20027cdb81d3b4fdc861ddd4ad593..cabd1c0a9b5cf4aa4f438f797181986f281ec5c0 100644 GIT binary patch delta 263 zcmZpe!rU;0c|r%vd%+FcHukhE6|k>tN^HHm*?Ib;`mEePsp!3~W{i delta 263 zcmZpe!rU;0c|r$E*$J(O8+%%o3gmWPpKhwO(SPO5NcsIwreEHyuxu5-X{w=NlCgzZ zlA*DwnXyT7T56(Uidmw$p@pfTfkA4Dky(m?MN*2H83O|=BLfoyLqh{2L-pjuZu!ac zxA{%3+r_iFV%rrCmS@)W_a_JJ4-l~Xz~eZ}>WSL~lYM_TzZ07{dBgrG3Q)mkFhQW| z_;z`QR1ZekTX6w?r#Gh@h+y?kWiSN7BnD#!3kEYFZ3twU0$IikCJf08X$+|hi9oRw mphzNvIgn)mlr>~90K!zDs1Z;+1<1Al>IA7V+su9JD>DFV7**~7 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index a3d2df7957fdb6c16bbb2761f10ca56f36975f09..a26c4709b1014d8cc095a2f60af59d725c0ea4fb 100644 GIT binary patch delta 260 zcmZp;z}IkrZ$bx4$$`UH8+%%N7`OH?iL4Xo-x1Z>TE*)*;YsK3y_!>2ZQrntN&0|B zqNPb%N|I%wiK$^?qFJ($iHS*Sie-vHQet9~sew^SVoI{Pxw%Ek^mir9;?oPBFtTpv z&u11jVCj5Qx_-LGeC7awm&^<2n;cl>JJ)E+^E447hv^;jnJW~aqI+ebq9FC#w*-l7 zKeC{%z{{v%yTSry0apJ+21^DLhBSs0h9n>>5y&=WFa*+x3}y_;3`Rgc2&Mw%ErHko fs0t*P1XN`JluZG$Q-JEs!O(&sWqbWn=0+v}tff_~ delta 260 zcmZp;z}IkrZ$bylHtXK$jXkYBj9Yt{MAiu$)M{O!&9lI%UE8u@UMKJJ?HkrHNgvQi zH8e~zwlGUFG&VIeHc3uPO*Bj~OEfpMFf}wVNKG*^OEIuWN-;B={;q^se0sqXM%L~8 z`OKmQEKg)unx<>aXATg!d`58x+lm7J=>ZaDZdLO;rgzL|u26uAu7`<&)Nd2J`E%mt zjd!;O3hdpkuz*>B)jyTN5D1ePj2SE#%z(5ZkYx&F88etLBr~Kjq%tG|#ZrJGi45jI hmIYAOkih^5Q-PvJK=BkH+XAQ)q{eJ}{Zi&eCIFN5P$mEX From 257071f7e83a5db6f1176499a06f49d03797bca0 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Date: Mon, 20 May 2024 10:56:53 +0100 Subject: [PATCH 62/97] Update UnitySampleProject to 2022 LTS (#938) Updated UnitySampleProject version to 2022.3.26f1 Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: Nikola Garabandic Co-authored-by: Robel Getnet Geremew Co-authored-by: Juan Manuel Spoleti <104365141+juans-chainsafe@users.noreply.github.com> --- src/UnitySampleProject/Packages/manifest.json | 7 +++-- .../Packages/packages-lock.json | 28 +++++++++---------- .../ProjectSettings/ProjectVersion.txt | 4 +-- 3 files changed, 19 insertions(+), 20 deletions(-) diff --git a/src/UnitySampleProject/Packages/manifest.json b/src/UnitySampleProject/Packages/manifest.json index 9a34d892d..950d15899 100644 --- a/src/UnitySampleProject/Packages/manifest.json +++ b/src/UnitySampleProject/Packages/manifest.json @@ -1,8 +1,9 @@ { "dependencies": { "com.tools.webglthreadingpatcher": "https://github.com/VolodymyrBS/WebGLThreadingPatcher.git", - "com.unity.collab-proxy": "2.2.0", - "com.unity.ide.rider": "3.0.27", + "com.unity.ai.navigation": "1.1.5", + "com.unity.collab-proxy": "2.3.1", + "com.unity.ide.rider": "3.0.28", "com.unity.ide.vscode": "1.2.5", "com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.test-framework": "2.0.1-pre.18", @@ -10,7 +11,7 @@ "com.unity.timeline": "1.7.6", "com.unity.toolchain.macos-arm64-linux-x86_64": "2.0.0", "com.unity.ugui": "1.0.0", - "com.unity.visualscripting": "1.9.1", + "com.unity.visualscripting": "1.9.4", "io.chainsafe.web3-unity": "file:../../../Packages/io.chainsafe.web3-unity", "io.chainsafe.web3-unity.lootboxes": "file:../../../Packages/io.chainsafe.web3-unity.lootboxes", "io.chainsafe.web3-unity.ramp": "file:../../../Packages/io.chainsafe.web3-unity.ramp", diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index e8477c372..5e56dcb7c 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -9,8 +9,17 @@ }, "hash": "c2f3628a028373afc8c66e443f7ce21bcb613a47" }, + "com.unity.ai.navigation": { + "version": "1.1.5", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.ai": "1.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.collab-proxy": { - "version": "2.2.0", + "version": "2.3.1", "depth": 0, "source": "registry", "dependencies": {}, @@ -24,7 +33,7 @@ "url": "https://packages.unity.com" }, "com.unity.ide.rider": { - "version": "3.0.27", + "version": "3.0.28", "depth": 0, "source": "registry", "dependencies": { @@ -40,7 +49,7 @@ "url": "https://packages.unity.com" }, "com.unity.nuget.mono-cecil": { - "version": "1.10.1", + "version": "1.11.4", "depth": 2, "source": "registry", "dependencies": {}, @@ -121,7 +130,7 @@ } }, "com.unity.visualscripting": { - "version": "1.9.1", + "version": "1.9.4", "depth": 0, "source": "registry", "dependencies": { @@ -305,17 +314,6 @@ "version": "1.0.0", "depth": 0, "source": "builtin", - "dependencies": { - "com.unity.modules.ui": "1.0.0", - "com.unity.modules.imgui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.uielementsnative": "1.0.0" - } - }, - "com.unity.modules.uielementsnative": { - "version": "1.0.0", - "depth": 1, - "source": "builtin", "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0", diff --git a/src/UnitySampleProject/ProjectSettings/ProjectVersion.txt b/src/UnitySampleProject/ProjectSettings/ProjectVersion.txt index f8251a7af..9f9a5338f 100644 --- a/src/UnitySampleProject/ProjectSettings/ProjectVersion.txt +++ b/src/UnitySampleProject/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2021.3.22f1 -m_EditorVersionWithRevision: 2021.3.22f1 (b6c551784ba3) +m_EditorVersion: 2022.3.26f1 +m_EditorVersionWithRevision: 2022.3.26f1 (ec6cd8118806) From 36f96fa6a142cbb655020d2670d899aae5ffdaef Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Tue, 21 May 2024 18:30:06 +0200 Subject: [PATCH 63/97] Fixing Ramp not showing up on WebGL (#964) --- .../Runtime/Scripts/RampExchangerUniversal.cs | 4 +- .../Runtime/Scripts/RampPostProcessorBuild.cs | 51 +++++++++++++++ .../Scripts/RampPostProcessorBuild.cs.meta | 11 ++++ .../Web3.Unity Ramp Samples/RampSample.cs | 6 +- .../Scenes/SampleLogin - Web3Auth.meta | 8 +++ .../LiberationSans SDF - Fallback.asset | 45 +++---------- .../ProjectSettings/EditorBuildSettings.asset | 8 +-- .../ProjectSettings/ProjectSettings.asset | 65 ++++++++++++++----- .../ProjectSettings/boot.config | 0 9 files changed, 133 insertions(+), 65 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs create mode 100644 Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.meta delete mode 100644 src/UnitySampleProject/ProjectSettings/boot.config diff --git a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs index 12d3b4e5d..1b1446933 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampExchangerUniversal.cs @@ -1,6 +1,4 @@ -#define RAMP_AVAILABLE - -using System; +using System; using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Web3.Core; diff --git a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs new file mode 100644 index 000000000..81da47be0 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs @@ -0,0 +1,51 @@ +#if UNITY_EDITOR +using UnityEditor; +using UnityEditor.Build; +using UnityEditor.Build.Reporting; +using UnityEngine; + +namespace ChainSafe.Gaming.Exchangers.Ramp +{ + public class RampProcessBuild : IPreprocessBuildWithReport, IPostprocessBuildWithReport + { + private const string RAMP_AVAILABLE = "RAMP_AVAILABLE"; + + //Use it as the last callback order so everything else gets to do it first. + public int callbackOrder => int.MaxValue; + + private static string _previousSymbols; + + public void OnPostprocessBuild(BuildReport report) + { +#if UNITY_WEBGL || UNITY_IOS + RemoveDefineSymbol(RAMP_AVAILABLE); +#endif + } + + public void OnPreprocessBuild(BuildReport report) + { +#if UNITY_WEBGL || UNITY_IOS + AddDefineSymbol(RAMP_AVAILABLE); +#endif + } + + private static void AddDefineSymbol(string symbol) + { + _previousSymbols = + PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup); + if (!_previousSymbols.Contains(symbol)) + PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, + _previousSymbols + ";" + symbol); + } + + private static void RemoveDefineSymbol(string symbol) + { + var symbols = + PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup); + if (symbols.Contains(symbol)) + PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, + _previousSymbols); + } + } +} +#endif \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs.meta b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs.meta new file mode 100644 index 000000000..63dc957df --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.ramp/Runtime/Scripts/RampPostProcessorBuild.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ed6de7d4f0ffcfb4ebbe37dd30d8dcfe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs index 8f69670fc..5a9125ade 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp/1.0.0/Web3.Unity Ramp Samples/RampSample.cs @@ -1,8 +1,6 @@ -using ChainSafe.Gaming.Evm.JsonRpc; +#define RAMP_AVAILABLE + using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.Wallets; -using ChainSafe.Gaming.Web3.Build; -using ChainSafe.Gaming.Web3.Unity; using UnityEngine; using UnityEngine.UI; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.meta new file mode 100644 index 000000000..b4eae20d6 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4a0d35cae9132bd48886c358c7a15c98 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset index a797a3c0d..22d431f3a 100644 --- a/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset +++ b/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset @@ -193,45 +193,18 @@ MonoBehaviour: m_StrikethroughOffset: 18 m_StrikethroughThickness: 6.298828 m_TabWidth: 24 - m_GlyphTable: - - m_Index: 271 - m_Metrics: - m_Width: 42 - m_Height: 59 - m_HorizontalBearingX: 3 - m_HorizontalBearingY: 58 - m_HorizontalAdvance: 48 - m_GlyphRect: - m_X: 10 - m_Y: 10 - m_Width: 42 - m_Height: 59 - m_Scale: 1 - m_AtlasIndex: 0 - m_ClassDefinitionType: 0 - m_CharacterTable: - - m_ElementType: 1 - m_Unicode: 333 - m_GlyphIndex: 271 - m_Scale: 1 + m_GlyphTable: [] + m_CharacterTable: [] m_AtlasTextures: - {fileID: 28268798066460806} m_AtlasTextureIndex: 0 m_IsMultiAtlasTexturesEnabled: 0 m_ClearDynamicDataOnBuild: 1 - m_UsedGlyphRects: - - m_X: 0 - m_Y: 0 - m_Width: 61 - m_Height: 78 + m_UsedGlyphRects: [] m_FreeGlyphRects: - m_X: 0 - m_Y: 78 - m_Width: 511 - m_Height: 433 - - m_X: 61 m_Y: 0 - m_Width: 450 + m_Width: 511 m_Height: 511 m_fontInfo: Name: Liberation Sans @@ -346,9 +319,9 @@ Texture2D: m_DownscaleFallback: 0 m_IsAlphaChannelOptional: 0 serializedVersion: 2 - m_Width: 512 - m_Height: 512 - m_CompleteImageSize: 262144 + m_Width: 0 + m_Height: 0 + m_CompleteImageSize: 0 m_MipsStripped: 0 m_TextureFormat: 1 m_MipCount: 1 @@ -372,8 +345,8 @@ Texture2D: m_LightmapFormat: 0 m_ColorSpace: 0 m_PlatformBlob: - image data: 262144 - _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070a0d0f11121313131212100e0c0906060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c10131416191c1d1f1f20201f1e1d1b191613120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f12181c1f202326282a2b2c2c2c2c2b2a282523201f1c17110f0a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f161b1d23292c2d303335373839393939383635322f2d2b28221c1b150e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b151b21272c2f34383a3d40424445464646454543413f3c3938332d2b26201a150b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a111720262b323839404547494c4f50525253535251504e4c4946443f3837312b262017110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b141c222832373d43484b515356595b5d5e5f5f5f5f5e5d5b585653504a47433c373127221b140b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d262d333c43474f54555c606366686a6b6c6c6c6c6b69686562605b54534e47423c332d261d150d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151f272f383f444e54596063676d707375777879797978787674726f6c66625f58534d443f382f271f150d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e273139424a50585f626b6f75797d7f828385858686858483817f7c79746f6a625f575049413931271f150b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d273039434b545b606a6f767c8185898c8e90919292929291908e8b8985817c756e69605b534b433931271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18232e39434b555d666c737c83898e9298999b9d9e9f9f9f9f9e9c9b9897918d88827b736c655d554b43392f24180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2834404b555d676d78808790949b9fa2a9a29e9c9b9a9a9b9d9fa3a9a19e9a948f877f776d675d554b40352920170d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313a45515c676d79828d92999fa6a39f9a97928f8e8d8e8e9092989b9fa3a69e99928c82796d675d51453f32291e1408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a43505a606d79828f949fa3a7a099928e898583818181828386898e92999fa7a39f948f82796d605b51443b3025190e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56616c74818e949ea6a69f959087817c79767474747577797d818790959ea5a69e948e81756d62564c41362a1e140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d68717e8a939da6a89f948f837c746f6c6668676768666d70757c838f939ea7a69e938b7f72685e52463b3025190e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c55606d7a85929ea5aca0968f82796e6a62605b545a5b545c60636a6e78818f959faba59f92857a6e61564c41362a1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d6773808d97a1ada69e91847a6d675f5853504a4e4e4b5153585f666d79839099a3ada2978d8174685e5246392d2014090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a85929fa9aa9e94897d70685d554e46443f41414045464e545c676f7c87929faca99f92867a6e6154473c31261a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36424d5765727f8b98a2aea99c8f82756b60564c433c38332d2e34383c424b555f6a74818e9ba8aea3988c7f7266574d42372b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a46525e697683909daaada196897d7063594f433a312b282223282c3039434e58626f7c8895a0acaa9d908477695f53463a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b87959fabab9e9184786c6053463d31281f1c17181c1f27313c47535f6a7784919daaaca095887b6e6155483b2e221506000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a7b1a79a8e8174665b5044382b1f160f0b0c10151f2b37434e586773808d9aa6b1a7988b7e7165584b3e2d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2834414e5b6774818e9aa7b4aa978a7e7164544a3f3328190d040000040d1b26323d4a5764707d8a97aab4a79b8e81746853493f33271b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c566a7683909da9aea298887b6e6155483b2d221708000000000a15212e3b4854616e7b8798a2aeaa9d908377655b5044372b1f120500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e687885929fabac9f9285796c605346392d201306000000000714212d3a46535e697985929facac9f9285796c605346392d20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a8798a2aeaa9d918477665b5044382b1f12060000000005121e2a36424d576a7784919daaaea298877a6e6154473b2e21140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895aab4a99c8f837669544a3f33281c0f0300000000020e1a2531434f5c6976828f9ca9b4aa95887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0a89b8e8275685b4f422d22170b000000000000091c2835424f5b6875828e9ba8b0a396897d7063564a3d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a97a3b0a79a8e8174675b4e4134281b060000000000010e1b2834414e5b6774818e9aa7b0a3978a7d7064574a3d3124170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1a79a8d8174675a4e4134271b0e0100000000010e1b2734414e5a6774818d9aa7b0a4978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a4b1a79a8d8074675a4d4134271a0e0100000000010e1a2734414d5a6774808d9aa7b1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1a79a8d8174675a4e4134271b0e0100000000010e1b2734414e5a6774818d9aa7b1a4978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a97a3b0a79a8e8174675b4e4134281b0e0100000000010e1b2834414e5b6774818e9aa7b0a3978a7d7064574a3d3124170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0a89b8e8175685b4e4235281b090000000000020f1b2835424e5b6875818e9ba8b0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895aab4a99c8f8276695c4f4330251a0e0200000000030f1c2936424f5c6975828f9ca8b5ab95897c6f6256493c2f23160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b8798a3aeaa9d9084776a574d42362a1e12050000000005111d2935414c566a7783909daaafa399877b6e6154483b2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facab9f928578695e52463a2d201407000000000713202d3946525d687885929eabac9f9286796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667784909daaaea298877b6e6154483b2e21150a000000000714212e3a4754616d7a8797a1adaa9e918477665c5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546875818e9ba8b3aa978a7d7064574a3d32271b0d04000001081623303d495663707c8996a9b3a89c8f827569544b4034281c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3f4b5865727e8b98a8b2a69a8d807367584e43372b1f15100c090e131e2a36414c5666727f8c99a5b3aa998c7f7366594c402e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615222f3c4855626f7b8896a0acaa9d9184776a6054473c31271f1c181b1a1e242d3946525e6876838f9ca9aea298897c706356493d30231607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a7784919eabaca095887c6f62584e4339312c282327262b2f35414c56616d7a86929facab9f9285796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e586673808d99a3afa89b8e81756a5f554b433c38342e3431373a4145525d68737f8c99a3afa79b8e8175675c5145382c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a26313c4855616e7b87929faaac9f92877c6f675d554e46454041414142474c515b606d7a85929eabaca095897d7063554b4034281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15212d3a46535f6975818e98a3aea3999083796d675f5853514b4e4e4e4d53555d606d74818e97a1ada69d9083776b605443392e23180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d57616e7b86929fa6aba0958f82796f6a63605c555b5a5b575f62676d747f8c939ea9a99f948a7d7064594f4430271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b46535f69737f8c949fa7a79f948f837c75706d676867676869696e737a818c919ca5aaa1978f82766c6155473d331e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36424d57606d78828f959fa7a69f959087817d79777574747476787b80858e939ca3aaa29892857b6e615a5044352b210c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a26313b44505c666d7a8390959da5a7a099938e898683828181818385888c92979da5a7a09892867d70695e52483e3323190f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f28343f4a545e686d7a838e929d9fa7a49f9b9892908e8e8d8e8f9197999ea1a9a29e9590867d706b60574d42362c22110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b17232e38424c565e686d79818990959b9fa2aaa39f9d9b9a9a9b9c9ea1a9a49f9c97928c837b706b60594f453b30241a1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303a444c565e676d747d83898e9298999b9d9e9f9f9f9f9e9d9b999993908b857f786e6960594f473d33291f1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e28323a444c555c606b6f777d8185898c8e90919292929291908f8d8a86837e79726d665f574f473d352b20170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162029323a434b515960636b7075797c7f82838485868685858382807d7a76726d67605c544d453d352b23190e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029313940454f54596063676d70727576787879797878777573706d6865605d55514a423c332b231911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e171f272f343d44484f54555c606366686a6b6c6c6c6c6b6a686664615e5653514b444039302a2119110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d1527323b444a4f51534b515356595b5d5e5f5f5f5f5e5d5c5a5754524c534d4b4740382e1e180f0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e39444d555b5d606060606060606060606060606060606060606060605957524a40352a1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a27333f4a555f676a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2a36434f5b67717779797979797979797979797979797979797979797979736e63574b3f3226190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a778386868686868686868686868686868686868686868686807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77849093939393939393939393939393939393939393938c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a7784909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77849097979797979797979797979797979797979797978c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77838a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a807366594d4033261a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4854606b70717171717171717171717171717171717171717171716f6a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c38444f59606364646464646464646464646464646464646464646464625f584e43372b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333d474f54565757575757575757575757575757575757575757575755534e463c31261a0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4847433c342a20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a232b33383c3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3a37312a22180e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a21272c2f30313131313131313131313131313131313131313131312f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f161c2022232424242424242424242424242424242424242424242422211f1a150e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b10141617171717171717171717171717171717171717171717171515120f0a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b090806030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + image data: 0 + _typelessdata: m_StreamData: serializedVersion: 2 offset: 0 diff --git a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset index fb7be9b01..daebc5fda 100644 --- a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset @@ -5,14 +5,14 @@ EditorBuildSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_Scenes: - - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - - WalletConnect.unity - guid: 1c1af5c5662d105498b2412267dde0df - enabled: 1 path: Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.unity guid: a8a8b501e594874448546e904e2437c5 + - enabled: 1 + path: Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin + - WalletConnect.unity + guid: 1c1af5c5662d105498b2412267dde0df - enabled: 1 path: Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - MetaMask.unity diff --git a/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset b/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset index 71987a993..78da0ae9c 100644 --- a/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset @@ -3,7 +3,7 @@ --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 - serializedVersion: 24 + serializedVersion: 26 productGUID: 2d36d76f9c79214498bace334980ebcd AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 @@ -48,14 +48,16 @@ PlayerSettings: defaultScreenHeightWeb: 600 m_StereoRenderingPath: 0 m_ActiveColorSpace: 0 + unsupportedMSAAFallback: 0 + m_SpriteBatchVertexThreshold: 300 m_MTRendering: 1 mipStripping: 0 numberOfMipsStripped: 0 + numberOfMipsStrippedPerMipmapLimitGroup: {} m_StackTraceTypes: 010000000200000002000000020000000200000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 iosUseCustomAppBackgroundBehavior: 0 - iosAllowHTTPDownload: 1 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 @@ -74,6 +76,7 @@ PlayerSettings: androidMinimumWindowWidth: 400 androidMinimumWindowHeight: 300 androidFullscreenMode: 1 + androidAutoRotationBehavior: 1 defaultIsNativeResolution: 1 macRetinaSupport: 1 runInBackground: 0 @@ -85,6 +88,7 @@ PlayerSettings: hideHomeButton: 0 submitAnalytics: 1 usePlayerLog: 1 + dedicatedServerOptimizations: 0 bakeCollisionMeshes: 0 forceSingleInstance: 0 useFlipModelSwapchain: 1 @@ -119,8 +123,12 @@ PlayerSettings: switchNVNShaderPoolsGranularity: 33554432 switchNVNDefaultPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216 + switchGpuScratchPoolGranularity: 2097152 + switchAllowGpuScratchShrinking: 0 switchNVNMaxPublicTextureIDCount: 0 switchNVNMaxPublicSamplerIDCount: 0 + switchNVNGraphicsFirmwareMemory: 32 + switchMaxWorkerMultiple: 8 stadiaPresentMode: 0 stadiaTargetFramerate: 0 vulkanNumSwapchainBuffers: 3 @@ -128,12 +136,9 @@ PlayerSettings: vulkanEnablePreTransform: 0 vulkanEnableLateAcquireNextImage: 0 vulkanEnableCommandBufferRecycling: 1 - m_SupportedAspectRatios: - 4:3: 1 - 5:4: 1 - 16:10: 1 - 16:9: 1 - Others: 1 + loadStoreDebugModeEnabled: 0 + visionOSBundleVersion: 1.0 + tvOSBundleVersion: 1.0 bundleVersion: 1.0 preloadedAssets: [] metroInputSource: 0 @@ -146,8 +151,9 @@ PlayerSettings: isWsaHolographicRemotingEnabled: 0 enableFrameTimingStats: 0 enableOpenGLProfilerGPURecorders: 1 + allowHDRDisplaySupport: 0 useHDRDisplay: 0 - D3DHDRBitDepth: 0 + hdrBitDepth: 0 m_ColorGamuts: 00000000 targetPixelDensity: 30 resolutionScalingMode: 0 @@ -158,6 +164,7 @@ PlayerSettings: Standalone: com.DefaultCompany.2DProject buildNumber: Standalone: 0 + VisionOS: 0 iPhone: 0 tvOS: 0 overrideDefaultApplicationIdentifier: 1 @@ -175,12 +182,15 @@ PlayerSettings: APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 0 + strictShaderVariantMatching: 0 VertexChannelCompressionMask: 4054 iPhoneSdkVersion: 988 iOSTargetOSVersionString: 12.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 tvOSTargetOSVersionString: 12.0 + VisionOSSdkVersion: 0 + VisionOSTargetOSVersionString: 1.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 @@ -228,8 +238,10 @@ PlayerSettings: appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: + VisionOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 + VisionOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 @@ -244,6 +256,7 @@ PlayerSettings: useCustomLauncherGradleManifest: 0 useCustomBaseGradleTemplate: 0 useCustomGradlePropertiesTemplate: 0 + useCustomGradleSettingsTemplate: 0 useCustomProguardFile: 0 AndroidTargetArchitectures: 2 AndroidTargetDevices: 0 @@ -251,6 +264,7 @@ PlayerSettings: androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: + AndroidEnableArmv9SecurityFeatures: 0 AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 0 AndroidIsGame: 1 @@ -264,7 +278,6 @@ PlayerSettings: banner: {fileID: 0} androidGamepadSupportLevel: 0 chromeosInputEmulation: 1 - AndroidMinifyWithR8: 0 AndroidMinifyRelease: 0 AndroidMinifyDebug: 0 AndroidValidateAppBundleSize: 1 @@ -511,7 +524,9 @@ PlayerSettings: m_BuildTargetGroupLightmapEncodingQuality: - m_BuildTarget: WebGL m_EncodingQuality: 1 + m_BuildTargetGroupHDRCubemapEncodingQuality: [] m_BuildTargetGroupLightmapSettings: [] + m_BuildTargetGroupLoadStoreDebugModeSettings: [] m_BuildTargetNormalMapEncoding: [] m_BuildTargetDefaultTextureCompressionFormat: - m_BuildTarget: Android @@ -526,6 +541,7 @@ PlayerSettings: locationUsageDescription: microphoneUsageDescription: bluetoothUsageDescription: + macOSTargetOSVersion: 10.13.0 switchNMETAOverride: switchNetLibKey: switchSocketMemoryPoolSize: 6144 @@ -533,10 +549,11 @@ PlayerSettings: switchSocketConcurrencyLimit: 14 switchScreenResolutionBehavior: 2 switchUseCPUProfiler: 0 - switchUseGOLDLinker: 0 + switchEnableFileSystemTrace: 0 switchLTOSetting: 0 switchApplicationID: 0x01004b9000490000 switchNSODependencies: + switchCompilerFlags: switchTitleNames_0: switchTitleNames_1: switchTitleNames_2: @@ -662,7 +679,6 @@ PlayerSettings: switchSocketBufferEfficiency: 4 switchSocketInitializeEnabled: 1 switchNetworkInterfaceManagerInitializeEnabled: 1 - switchPlayerConnectionEnabled: 1 switchUseNewStyleFilepaths: 0 switchUseLegacyFmodPriorities: 1 switchUseMicroSleepForYield: 1 @@ -752,6 +768,7 @@ PlayerSettings: webGLMemorySize: 32 webGLExceptionSupport: 1 webGLNameFilesAsHashes: 0 + webGLShowDiagnostics: 0 webGLDataCaching: 1 webGLDebugSymbols: 0 webGLEmscriptenArgs: @@ -764,13 +781,21 @@ PlayerSettings: webGLLinkerTarget: 1 webGLThreadsSupport: 0 webGLDecompressionFallback: 0 + webGLInitialMemorySize: 32 + webGLMaximumMemorySize: 2048 + webGLMemoryGrowthMode: 2 + webGLMemoryLinearGrowthStep: 16 + webGLMemoryGeometricGrowthStep: 0.2 + webGLMemoryGeometricGrowthCap: 96 webGLPowerPreference: 2 - scriptingDefineSymbols: {} + scriptingDefineSymbols: + WebGL: RAMP_AVAILABLE additionalCompilerArguments: {} platformArchitecture: {} scriptingBackend: Android: 1 il2cppCompilerConfiguration: {} + il2cppCodeGeneration: {} managedStrippingLevel: EmbeddedLinux: 1 GameCoreScarlett: 1 @@ -789,12 +814,9 @@ PlayerSettings: suppressCommonWarnings: 1 allowUnsafeCode: 0 useDeterministicCompilation: 1 - enableRoslynAnalyzers: 1 - selectedPlatform: 3 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 1 - assemblyVersionValidation: 0 gcWBarrierValidation: 0 apiCompatibilityLevelPerPlatform: {} m_RenderingPath: 1 @@ -820,6 +842,7 @@ PlayerSettings: metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} metroSplashScreenUseBackgroundColor: 0 + syncCapabilities: 0 platformCapabilities: {} metroTargetDeviceFamilies: {} metroFTAName: @@ -866,6 +889,11 @@ PlayerSettings: luminVersion: m_VersionCode: 1 m_VersionName: + hmiPlayerDataPath: + hmiForceSRGBBlit: 1 + embeddedLinuxEnableGamepadInput: 1 + hmiLogStartupTiming: 0 + hmiCpuConfiguration: apiCompatibilityLevel: 6 activeInputHandler: 0 windowsGamepadBackendHint: 0 @@ -876,6 +904,7 @@ PlayerSettings: organizationId: cloudEnabled: 0 legacyClampBlendShapeWeights: 0 - playerDataPath: - forceSRGBBlit: 1 + hmiLoadingImage: {fileID: 0} + platformRequiresReadableAssets: 0 virtualTexturingSupportEnabled: 0 + insecureHttpOption: 0 diff --git a/src/UnitySampleProject/ProjectSettings/boot.config b/src/UnitySampleProject/ProjectSettings/boot.config deleted file mode 100644 index e69de29bb..000000000 From 638222496995dcfaca170dae5440e54181db2c1c Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Wed, 22 May 2024 02:11:27 +0800 Subject: [PATCH 64/97] Marketplace sample calls (#962) * Marketplace write calls * Update MarketplaceCalls.cs * Update Marketplace.cs * 2022 update 2022 update * Fixes * Cleanup Cleanup * Menu update Menu update * Update CSServer.cs * Update Marketplace.cs * Update CSServer.cs * Update SampleMain.unity * Update Marketplace.cs --- .../Web3AuthSDK/Editor/CreateDeepLink.cs | 2 +- .../Web3AuthSDK/Debug/Web3AuthDebug.cs | 2 +- .../Editor/ABIConverter.cs | 2 +- .../Editor/ReportBug.cs | 2 +- .../Editor/ServerSettings.cs | 2 +- .../Editor/WebGLThreadPatcherInstaller.cs | 2 +- .../Runtime/Plugins/FileUploader.meta | 3 + .../Plugins/FileUploader/FileUploader.jslib | 19 + .../FileUploader/FileUploader.jslib.meta | 3 + .../Runtime/Scripts/EVM/IPFS/IPFS.cs | 21 +- .../Runtime/Scripts/EVM/IPFS/ImageUploader.cs | 17 + .../Scripts/EVM/IPFS/ImageUploader.cs.meta | 11 + .../Scripts/EVM/Marketplace/Marketplace.cs | 334 +- .../Runtime/Scripts/EVM/Remote/CSServer.cs | 102 +- .../Runtime/Scripts/EVM/Token/ABI.cs | 8 + .../Runtime/Scripts/EVM/Token/Contracts.cs | 23 +- .../Scripts/Model/DashboardResponses.cs | 38 + .../Scripts/Model/DashboardResponses.cs.meta | 3 + .../Scenes/SampleMain.unity | 3629 +++++++++++++++-- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 4 +- .../Marketplace/MarketplaceCalls.cs | 155 +- 21 files changed, 3970 insertions(+), 412 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs.meta diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Editor/Web3AuthSDK/Editor/CreateDeepLink.cs b/Packages/io.chainsafe.web3-unity.web3auth/Editor/Web3AuthSDK/Editor/CreateDeepLink.cs index 17ffa91f3..3246060b4 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Editor/Web3AuthSDK/Editor/CreateDeepLink.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Editor/Web3AuthSDK/Editor/CreateDeepLink.cs @@ -9,7 +9,7 @@ public class CreateDeepLink : EditorWindow TextField uri; - [MenuItem("Window/ChainSafe SDK/Web3Auth/Generate Deep Link")] + [MenuItem("ChainSafe SDK/Web3Auth/Generate Deep Link")] public static void ShowExample() { CreateDeepLink wnd = GetWindow(); diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Debug/Web3AuthDebug.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Debug/Web3AuthDebug.cs index c6ce4a646..e7e899761 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Debug/Web3AuthDebug.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Debug/Web3AuthDebug.cs @@ -15,7 +15,7 @@ public class Web3AuthDebug : EditorWindow [SerializeField] public int index; - [MenuItem("Window/Web3Auth/Deep Linking Debug")] + [MenuItem("ChainSafe SDK/Web3Auth/Deep Linking Debug")] public static void ShowExample() { Web3AuthDebug wnd = GetWindow(); diff --git a/Packages/io.chainsafe.web3-unity/Editor/ABIConverter.cs b/Packages/io.chainsafe.web3-unity/Editor/ABIConverter.cs index 65419cc73..4ac499058 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/ABIConverter.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/ABIConverter.cs @@ -11,7 +11,7 @@ public class ABIWindow : EditorWindow Vector2 TextArea; // Where is the window menu located - [MenuItem("Window/ChainSafe SDK/ABI Converter")] + [MenuItem("ChainSafe SDK/ABI Converter")] // Show our window public static void ShowWindow() diff --git a/Packages/io.chainsafe.web3-unity/Editor/ReportBug.cs b/Packages/io.chainsafe.web3-unity/Editor/ReportBug.cs index 9704d951f..443d7a049 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/ReportBug.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/ReportBug.cs @@ -17,7 +17,7 @@ public class ReportBug : EditorWindow Texture2D logo = null; // Initializes window - [MenuItem("Window/ChainSafe SDK/Report Bug")] + [MenuItem("ChainSafe SDK/Report Bug")] public static void ShowWindow() { // show existing window instance. If one doesn't exist, make one. diff --git a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs index 3bed2b18b..f263f37e5 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs @@ -118,7 +118,7 @@ private async void FetchSupportedChains() } // Initializes window - [MenuItem("Window/ChainSafe SDK/Server Settings", false, 1)] + [MenuItem("ChainSafe SDK/Server Settings", false, 1)] public static void ShowWindow() { // Show existing window instance. If one doesn't exist, make one. diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLThreadPatcherInstaller.cs b/Packages/io.chainsafe.web3-unity/Editor/WebGLThreadPatcherInstaller.cs index 75a86de1d..9cea4c846 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLThreadPatcherInstaller.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLThreadPatcherInstaller.cs @@ -33,7 +33,7 @@ static WebGLThreadPatcherInstaller() #endif } - [MenuItem("Window/ChainSafe SDK/Install WebGLThreadingPatcher")] + [MenuItem("ChainSafe SDK/Install WebGLThreadingPatcher")] public static void TryInstallThreadPatcher() { Manifest manifest = JsonConvert.DeserializeObject(File.ReadAllText(ManifestPath)); diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader.meta new file mode 100644 index 000000000..4e1ac69c2 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 89d9dc5eca9b4564a9de413193a9af53 +timeCreated: 1716216770 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib new file mode 100644 index 000000000..454df9fa5 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib @@ -0,0 +1,19 @@ +mergeInto(LibraryManager.library, { + + UploadImage: function () { + var input = document.createElement('input'); + input.type = 'file'; + input.accept = 'image/png, image/jpeg, image/gif'; + input.onchange = function(event) { + var file = event.target.files[0]; + if (!file) return; + var reader = new FileReader(); + reader.onload = function(event) { + var dataUrl = event.target.result; + nethereumUnityInstance.SendMessage('ImageUploader', 'OnImageSelected', dataUrl); + }; + reader.readAsDataURL(file); + }; + input.click(); + }, +}); \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta new file mode 100644 index 000000000..d7474f1c0 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8a90e4d069314f3a91d90ea931fe89d5 +timeCreated: 1716216786 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs index acedaac02..7e8155ed5 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs @@ -7,6 +7,7 @@ using ChainSafe.Gaming.UnityPackage.Model; using ChainSafe.Gaming.Web3; using Newtonsoft.Json; +using Scripts.EVM.Remote; using UnityEngine; using UnityEngine.Networking; @@ -17,7 +18,7 @@ public static class IPFS #region Fields private static readonly string host = "https://api.chainsafe.io"; - + #endregion #region Methods @@ -57,15 +58,16 @@ public static async Task UploadImage(IPFSUploadRequestModel request) { try { - // TODO: Fix for webgl #if UNITY_WEBGL && !UNITY_EDITOR - byte[] imageData = null; + var imageData = await CSServer.UploadImageWebGL(); #else // Upload image from file & convert to byte[] var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); if (string.IsNullOrEmpty(imagePath)) return null; - var www = await new WWW("file://" + imagePath); - var imageData = www.texture.EncodeToPNG(); + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); #endif // Upload metadata with image var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); @@ -117,15 +119,16 @@ public static async Task UploadImageAndMetadata(IPFSUploadRequestModel r { try { - // TODO: Fix for webgl #if UNITY_WEBGL && !UNITY_EDITOR - byte[] imageData = null; + var imageData = await CSServer.UploadImageWebGL(); #else // Upload image from file & convert to byte[] var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); if (string.IsNullOrEmpty(imagePath)) return null; - var www = await new WWW("file://" + imagePath); - var imageData = www.texture.EncodeToPNG(); + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); #endif // Upload metadata with image var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs new file mode 100644 index 000000000..b6197bd48 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs @@ -0,0 +1,17 @@ +using Scripts.EVM.Remote; +using UnityEngine; + +namespace ChainSafe.Gaming +{ + public class ImageUploader : MonoBehaviour + { + /// + /// Emits an event with image data for uploading with webgl + /// + /// Image data + public void OnImageSelected(string imageData) + { + CSServer.OnImageSelected(imageData); + } + } +} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs.meta new file mode 100644 index 000000000..8126ca42f --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b8b0c4a2242595246b31317446fabf8b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs index 99aa31d73..b29210d89 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs @@ -1,17 +1,22 @@ -using System.Threading.Tasks; +using System; +using System.Collections.Generic; +using System.Numerics; +using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.UnityPackage.Model; +using ChainSafe.Gaming.Web3; +using Newtonsoft.Json; using Scripts.EVM.Remote; +using Scripts.EVM.Token; using UnityEngine; +using UnityEngine.Networking; namespace Scripts.EVM.Marketplace { public class Marketplace { #region Methods - - #region MarketplaceCalls - + /// /// Gets all items in a project. /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/items @@ -19,11 +24,11 @@ public class Marketplace /// MarketplaceModel.Root public static async Task GetProjectItems() { - string path = $"/items?chainId={Web3Accessor.Web3.ChainConfig.ChainId}"; + var path = $"/items?chainId={Web3Accessor.Web3.ChainConfig.ChainId}"; var response = await CSServer.GetData(path); return response; } - + /// /// Gets all items in a marketplace. /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/marketplaces/{marketplaceID}/items @@ -32,7 +37,7 @@ public class Marketplace /// MarketplaceModel.Root public static async Task GetMarketplaceItems(string marketplaceId) { - string path = $"/marketplaces/{marketplaceId}/items"; + var path = $"/marketplaces/{marketplaceId}/items"; var response = await CSServer.GetData(path); return response; } @@ -46,15 +51,11 @@ public class Marketplace /// MarketplaceModel.Item public static async Task GetItem(string marketplaceId, string tokenId) { - string path = $"/marketplaces/{marketplaceId}/items/{tokenId}"; + var path = $"/marketplaces/{marketplaceId}/items/{tokenId}"; var response = await CSServer.GetData(path); return response; } - #endregion - - #region TokenCalls - /// /// Gets all tokens in a project. /// Path: https://api.gaming.chainsafe.io/v1/projects/{projectID}/tokens @@ -62,7 +63,7 @@ public class Marketplace /// NftTokenModel.Root public static async Task GetProjectTokens() { - string path = $"/tokens?chainId={Web3Accessor.Web3.ChainConfig.ChainId}"; + var path = $"/tokens?chainId={Web3Accessor.Web3.ChainConfig.ChainId}"; var response = await CSServer.GetData(path); return response; } @@ -75,7 +76,7 @@ public class Marketplace /// NftTokenModel.Root public static async Task GetCollectionTokens721(string collectionId721) { - string path = $"/collections/{collectionId721}/tokens"; + var path = $"/collections/{collectionId721}/tokens"; var response = await CSServer.GetData(path); return response; } @@ -88,7 +89,7 @@ public class Marketplace /// NftTokenModel.Root public static async Task GetCollectionTokens1155(string collectionId1155) { - string path = $"/collections/{collectionId1155}/tokens"; + var path = $"/collections/{collectionId1155}/tokens"; var response = await CSServer.GetData(path); return response; } @@ -103,7 +104,7 @@ public class Marketplace /// NftTokenModel.Token public static async Task GetCollectionToken(string collectionId, string tokenId) { - string path = $"/collections/{collectionId}/tokens/{tokenId}"; + var path = $"/collections/{collectionId}/tokens/{tokenId}"; var response = await CSServer.GetData(path); return response; } @@ -117,10 +118,288 @@ public class Marketplace /// NftTokenModel.Token public static async Task GetTokenOwners(string collectionId, string tokenId) { - string path = $"/collections/{collectionId}/tokens/{tokenId}/owners"; + var path = $"/collections/{collectionId}/tokens/{tokenId}/owners"; var response = await CSServer.GetData(path); return response; } + + /// + /// Creates a 721 collection + /// /// Path https://api.gaming.chainsafe.io/v1/projects/8524f420-ecd1-4cfd-a651-706ade97cac7/collections + /// + /// Bearer token to access dashboard services + /// Name of the 721 collection being created + /// Description of the 721 collection being created + /// If minting is public or not + /// Contract send data object + public static async Task Create721Collection(string _bearerToken, string _name, string _description, bool _isMintingPublic) + { + var logoImageData = await GetImageData(); + var bannerImageData = await GetImageData(); + var formData = new List + { + new MultipartFormDataSection("name", _name), + new MultipartFormDataSection("description", _description), + new MultipartFormDataSection("owner", Web3Accessor.Web3.Signer.PublicAddress), + new MultipartFormDataSection("chain_id", Web3Accessor.Web3.ChainConfig.ChainId), + new MultipartFormDataSection("projectID", Web3Accessor.Web3.ProjectConfig.ProjectId), + new MultipartFormFileSection("logo", logoImageData, "logo.png", "image/png"), + new MultipartFormFileSection("banner", bannerImageData, "banner.png", "image/png"), + new MultipartFormDataSection("isImported", "true"), + new MultipartFormDataSection("contractAddress", Token.Contracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId]), + new MultipartFormDataSection("type", "erc721") + }; + var path = "/collections"; + var collectionResponse = await CSServer.CreateData(_bearerToken, path, formData); + var collectionData = JsonConvert.DeserializeObject(collectionResponse); + var method = "create721Collection"; + object[] args = + { + Web3Accessor.Web3.ProjectConfig.ProjectId, + collectionData.id, + _name, + collectionData.type, + collectionData.banner, + _isMintingPublic + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, Token.Contracts.MarketplaceContracts["11155111"], args); + return data; + } + + /// + /// Creates a 1155 collection + /// Path https://api.gaming.chainsafe.io/v1/projects/8524f420-ecd1-4cfd-a651-706ade97cac7/collections/ + /// + /// Bearer token to access dashboard services + /// Name of the 1155 collection being created + /// Description of the 1155 collection being created + /// If minting is public or not + /// Contract send data object + public static async Task Create1155Collection(string _bearerToken, string _name, string _description, bool _isMintingPublic) + { + try + { + var logoImageData = await GetImageData(); + var bannerImageData = await GetImageData(); + var formData = new List + { + new MultipartFormDataSection("name", _name), + new MultipartFormDataSection("description", _description), + new MultipartFormDataSection("owner", Web3Accessor.Web3.Signer.PublicAddress), + new MultipartFormDataSection("chain_id", Web3Accessor.Web3.ChainConfig.ChainId), + new MultipartFormDataSection("projectID", Web3Accessor.Web3.ProjectConfig.ProjectId), + new MultipartFormFileSection("logo", logoImageData, "logo.png", "image/png"), + new MultipartFormFileSection("banner", bannerImageData, "banner.png", "image/png"), + new MultipartFormDataSection("isImported", "true"), + new MultipartFormDataSection("contractAddress", Token.Contracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId]), + new MultipartFormDataSection("type", "erc1155") + }; + var path = "/collections"; + var collectionResponse = await CSServer.CreateData(_bearerToken, path, formData); + var collectionData = JsonConvert.DeserializeObject(collectionResponse); + var method = "create1155Collection"; + object[] args = + { + Web3Accessor.Web3.ProjectConfig.ProjectId, + collectionData.id, + collectionData.banner, + _isMintingPublic + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, Token.Contracts.MarketplaceContracts["11155111"], args); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } + + /// + /// /// Mints a 721 collection nft to the collection + /// + /// 721 collection contract to mint from/to + /// URI in full format i.e https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + /// Contract send data object + public static async Task Mint721CollectionNft(string _collectionContract, string _uri) + { + try + { + var method = "mint"; + object[] args = + { + Web3Accessor.Web3.Signer.PublicAddress, + _uri + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.GeneralErc721, _collectionContract, args); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } + + /// + /// Mints a 1155 collection nft to the collection + /// + /// 1155 collection contract to mint from/to + /// URI in full format i.e https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + /// Amount of Nfts to mint + /// Contract send data object + public static async Task Mint1155CollectionNft(string _collectionContract, string _uri, string _amount) + { + try + { + var method = "mint"; + var amount = BigInteger.Parse(_amount); + object[] args = + { + Web3Accessor.Web3.Signer.PublicAddress, + _uri, + amount + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.GeneralErc1155, _collectionContract, args); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } + + /// + /// Deletes a collection that isn't on chain yet by ID + /// Path https://api.gaming.chainsafe.io/v1/projects/8524f420-ecd1-4cfd-a651-706ade97cac7/collections/e38e9465-fb9b-4316-8d1d-c77e81b50d6a + /// + /// Bearer token to access dashboard services + /// Collection ID to delete + /// Server response + public static async Task DeleteCollection(string _bearerToken, string _collectionId) + { + var path = $"/collections/{_collectionId}"; + var response = await CSServer.DeleteData(_bearerToken, path); + return response; + } + + /// + /// Creates a marketplace + /// Path: https://api.gaming.chainsafe.io/v1/projects/8524f420-ecd1-4cfd-a651-706ade97cac7/marketplaces + /// + /// Bearer token to access dashboard services + /// Marketplace name + /// Marketplace description + /// If whitelisting is enabled or not + /// Contract send data object + public static async Task CreateMarketplace(string _bearerToken, string _name, string _description, bool _whitelisting) + { + try + { + var bannerImageData = await GetImageData(); + var formData = new List + { + new MultipartFormDataSection("name", _name), + new MultipartFormDataSection("description", _description), + new MultipartFormDataSection("chain_id", Web3Accessor.Web3.ChainConfig.ChainId), + new MultipartFormFileSection("banner", bannerImageData, "banner.png", "image/png") + }; + var path = "/marketplaces"; + var marketplaceResponse = await CSServer.CreateData(_bearerToken, path, formData); + Debug.Log(marketplaceResponse); + var collectionData = JsonConvert.DeserializeObject(marketplaceResponse); + var method = "createMarketplace"; + object[] args = + { + Web3Accessor.Web3.ProjectConfig.ProjectId, + collectionData.id, + _whitelisting + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, Token.Contracts.MarketplaceContracts["11155111"], args); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } + + /// + /// Deletes a marketplace that isn't on chain yet by ID + /// Path: https://api.gaming.chainsafe.io/v1/projects/8524f420-ecd1-4cfd-a651-706ade97cac7/marketplaces/{marketplaceId} + /// + /// Bearer token to access dashboard services + /// Marketplace ID to delete + /// Server response + public static async Task DeleteMarketplace(string _bearerToken, string _marketplaceId) + { + var path = $"/marketplaces/{_marketplaceId}"; + var response = await CSServer.DeleteData(_bearerToken, path); + return response; + } + + /// + /// Approves the marketplace to list 721 Nfts + /// + /// Nft contract to approve + /// Marketplace to approve + /// Permission being granted + /// Contract send data object + public static async Task SetApprovalMarketplace(string _nftContract, string _marketplaceContract, string _type, bool _permission) + { + try + { + var method = "setApprovalForAll"; + object[] args = + { + _marketplaceContract, + _permission + }; + var abi = _type == "721" ? Token.ABI.GeneralErc721 : Token.ABI.GeneralErc1155; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, abi, _nftContract, args); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } + + /// + /// Lists Nfts to the marketplace + /// + /// Marketplace contract to list to + /// Nft contract to list from + /// Toked ID to list + /// Price in wei to list for + /// Contract send data object + public static async Task ListNftsToMarketplace(string _marketplaceContract, string _nftContract, string _tokenId, string _priceInWei) + { + try + { + var method = "listItem"; + BigInteger priceInWei = BigInteger.Parse(_priceInWei); + BigInteger tokenId = BigInteger.Parse(_tokenId); + BigInteger deadline = DateTimeOffset.UtcNow.AddDays(7).ToUnixTimeSeconds(); + object[] args = + { + _nftContract, + tokenId, + priceInWei, + deadline + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.Marketplace, _marketplaceContract, args); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } #region Utilities @@ -137,9 +416,26 @@ public static void PrintObject(object obj) Debug.Log($"{property.Name}: {value}"); } } - - #endregion + /// + /// Gets the binary data of a png image. + /// + /// Byte array of image data + private static async Task GetImageData() + { + #if UNITY_WEBGL && !UNITY_EDITOR + var imageData = await CSServer.UploadImageWebGL(); + #else + var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); + while (string.IsNullOrEmpty(imagePath)) return null; + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); + #endif + return imageData; + } + #endregion #endregion diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs index 8ae036dc8..4ce925aba 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs @@ -1,4 +1,7 @@ -using System.Threading.Tasks; +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage; using Newtonsoft.Json; using UnityEngine; @@ -9,7 +12,10 @@ namespace Scripts.EVM.Remote public class CSServer { #region Fields - + + [DllImport("__Internal")] + private static extern void UploadImage(); + public static event EventHandler ImageSelected; private static readonly string host = "https://api.gaming.chainsafe.io/v1/projects/"; #endregion @@ -19,8 +25,8 @@ public class CSServer /// /// Unity web request helper function to retrieve data. /// - /// - /// + /// The path suffix to call + /// Server response public static async Task GetData(string _path) { using UnityWebRequest webRequest = UnityWebRequest.Get($"{host}{Web3Accessor.Web3.ProjectConfig.ProjectId}{_path}"); @@ -34,6 +40,94 @@ public static async Task GetData(string _path) var response = JsonConvert.DeserializeObject(json); return response; } + + /// + /// Unity web request helper function to delete data entries from collections/marketplace. + /// + /// Bearer token to access dashboard services + /// The path suffix to call + /// Server response + public static async Task DeleteData(string _bearerToken, string _path) + { + using UnityWebRequest request = UnityWebRequest.Delete($"{host}{Web3Accessor.Web3.ProjectConfig.ProjectId}{_path}"); + request.SetRequestHeader("Authorization", $"Bearer {_bearerToken}"); + await request.SendWebRequest(); + if (request.result != UnityWebRequest.Result.Success) + { + Debug.LogError($"Error deleting: {request.error}"); + return request.error; + } + return "Deleted successfully"; + } + + /// + /// Unity web request helper function to create data entries with collections/marketplace. + /// + /// Bearer token to access dashboard services + /// The path suffix to call + /// Form data used in the call + /// Server response + public static async Task CreateData(string _bearerToken, string _path, + List _formData) + { + using (UnityWebRequest request = UnityWebRequest.Post($"{host}{Web3Accessor.Web3.ProjectConfig.ProjectId}{_path}", _formData)) + { + request.SetRequestHeader("Authorization", $"Bearer {_bearerToken}"); + await request.SendWebRequest(); + if (request.result != UnityWebRequest.Result.Success) + { + Debug.LogError("Creation failed: " + request.downloadHandler.text); + return request.error; + } + return request.downloadHandler.text; + } + } + + #region Utilities + + /// + /// Uploads an image in webgl builds + /// + /// Image data + public static async Task UploadImageWebGL() + { + var imageDataTask = new TaskCompletionSource(); + // Event handler to set the result when the image is selected + void OnImageSelectedHandler(object sender, byte[] imageData) + { + imageDataTask.SetResult(imageData); + // Unsubscribe from the event after handling it + ImageSelected -= OnImageSelectedHandler; + } + ImageSelected += OnImageSelectedHandler; + UploadImage(); + var imageData = await imageDataTask.Task; + return imageData; + } + + /// + /// Invokes event to pass image data from js function + /// + /// Image data + public static void OnImageSelected(string imageData) + { + try + { + // Remove metadata from url + var base64String = imageData.Substring(imageData.IndexOf(",") + 1); + // Convert data URL to byte array + byte[] imageDataBytes = Convert.FromBase64String(base64String); + // Invoke event to complete the upload tasks + ImageSelected?.Invoke(null, imageDataBytes); + } + catch (Exception e) + { + Console.WriteLine(e); + throw; + } + } + + #endregion #endregion diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ABI.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ABI.cs index 2e362b004..c89f00519 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ABI.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ABI.cs @@ -8,6 +8,14 @@ public static class ABI "[ { \"inputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"sender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"ERC721IncorrectOwner\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ERC721InsufficientApproval\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"approver\", \"type\": \"address\" } ], \"name\": \"ERC721InvalidApprover\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" } ], \"name\": \"ERC721InvalidOperator\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"ERC721InvalidOwner\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"receiver\", \"type\": \"address\" } ], \"name\": \"ERC721InvalidReceiver\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"sender\", \"type\": \"address\" } ], \"name\": \"ERC721InvalidSender\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ERC721NonexistentToken\", \"type\": \"error\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"approved\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"Approval\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"ApprovalForAll\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"_fromTokenId\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"_toTokenId\", \"type\": \"uint256\" } ], \"name\": \"BatchMetadataUpdate\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"_tokenId\", \"type\": \"uint256\" } ], \"name\": \"MetadataUpdate\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"Transfer\", \"type\": \"event\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"approve\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"getApproved\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" } ], \"name\": \"isApprovedForAll\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"name\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ownerOf\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"_to\", \"type\": \"address\" }, { \"internalType\": \"string\", \"name\": \"_uri\", \"type\": \"string\" } ], \"name\": \"safeMint\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"safeTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"safeTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"setApprovalForAll\", \"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\": \"symbol\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"tokenURI\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"transferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" } ]"; public const string Erc1155 = "[ { \"inputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"sender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"balance\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"needed\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ERC1155InsufficientBalance\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"approver\", \"type\": \"address\" } ], \"name\": \"ERC1155InvalidApprover\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"idsLength\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"valuesLength\", \"type\": \"uint256\" } ], \"name\": \"ERC1155InvalidArrayLength\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" } ], \"name\": \"ERC1155InvalidOperator\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"receiver\", \"type\": \"address\" } ], \"name\": \"ERC1155InvalidReceiver\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"sender\", \"type\": \"address\" } ], \"name\": \"ERC1155InvalidSender\", \"type\": \"error\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"ERC1155MissingApprovalForAll\", \"type\": \"error\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"ApprovalForAll\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" }, { \"indexed\": false, \"internalType\": \"uint256[]\", \"name\": \"values\", \"type\": \"uint256[]\" } ], \"name\": \"TransferBatch\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" } ], \"name\": \"TransferSingle\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"string\", \"name\": \"value\", \"type\": \"string\" }, { \"indexed\": true, \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" } ], \"name\": \"URI\", \"type\": \"event\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address[]\", \"name\": \"accounts\", \"type\": \"address[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" } ], \"name\": \"balanceOfBatch\", \"outputs\": [ { \"internalType\": \"uint256[]\", \"name\": \"\", \"type\": \"uint256[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" } ], \"name\": \"isApprovedForAll\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"_to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"_id\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"_amount\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"_data\", \"type\": \"bytes\" } ], \"name\": \"mint\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"_to\", \"type\": \"address\" }, { \"internalType\": \"uint256[]\", \"name\": \"_ids\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"_amounts\", \"type\": \"uint256[]\" }, { \"internalType\": \"bytes\", \"name\": \"_data\", \"type\": \"bytes\" } ], \"name\": \"mintBatch\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"values\", \"type\": \"uint256[]\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"safeBatchTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"safeTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"setApprovalForAll\", \"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\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"name\": \"uri\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" } ]"; + public const string MarketplaceFactory = + "[ { \"inputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"inputs\": [], \"name\": \"CollectionExist\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ImplementationNotExist\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"MarketplaceExist\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ZeroAddress\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ZeroFeePercent\", \"type\": \"error\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"previousAdmin\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"newAdmin\", \"type\": \"address\" } ], \"name\": \"AdminChanged\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"beacon\", \"type\": \"address\" } ], \"name\": \"BeaconUpgraded\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"collectionAddress\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"creator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"collectionID\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"uri\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"isMintingPublic\", \"type\": \"bool\" } ], \"name\": \"ERC1155CollectionCreated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"collectionAddress\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"creator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"collectionID\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"collectionName\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"symbol\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"isMintingPublic\", \"type\": \"bool\" } ], \"name\": \"ERC721CollectionCreated\", \"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\": \"marketplaceAddress\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"creator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"indexed\": false, \"internalType\": \"string\", \"name\": \"marketplaceID\", \"type\": \"string\" } ], \"name\": \"MarketplaceCreated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"newFee\", \"type\": \"uint256\" } ], \"name\": \"MaxFeeUpdated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"previousOwner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"newOwner\", \"type\": \"address\" } ], \"name\": \"OwnershipTransferred\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"newFee\", \"type\": \"uint256\" } ], \"name\": \"TreasuryFeeUpdated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"newTreasury\", \"type\": \"address\" } ], \"name\": \"TreasuryUpdated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"implementation\", \"type\": \"address\" } ], \"name\": \"Upgraded\", \"type\": \"event\" }, { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"name\": \"contracts\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"collectionID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"uri\", \"type\": \"string\" }, { \"internalType\": \"bool\", \"name\": \"isMintingPublic\", \"type\": \"bool\" } ], \"name\": \"create1155Collection\", \"outputs\": [], \"stateMutability\": \"payable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"collectionID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"collectionName\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"symbol\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"uri\", \"type\": \"string\" }, { \"internalType\": \"bool\", \"name\": \"isMintingPublic\", \"type\": \"bool\" } ], \"name\": \"create721Collection\", \"outputs\": [], \"stateMutability\": \"payable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"marketplaceID\", \"type\": \"string\" }, { \"internalType\": \"bool\", \"name\": \"isWhitelistingEnable\", \"type\": \"bool\" } ], \"name\": \"createMarketplace\", \"outputs\": [], \"stateMutability\": \"payable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"erc1155Beacon\", \"outputs\": [ { \"internalType\": \"contract UpgradeableBeacon\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"erc721Beacon\", \"outputs\": [ { \"internalType\": \"contract UpgradeableBeacon\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner_\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"treasury_\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"erc721Implementation_\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"erc1155Implementation_\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"marketImplementation_\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"fee_\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"maxFee_\", \"type\": \"uint256\" } ], \"name\": \"initialize\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"marketplaceBeacon\", \"outputs\": [ { \"internalType\": \"contract UpgradeableBeacon\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"marketplaceMaxFee\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"name\": \"marketplaces\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"owner\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"proxiableUUID\", \"outputs\": [ { \"internalType\": \"bytes32\", \"name\": \"\", \"type\": \"bytes32\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"renounceOwnership\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newOwner\", \"type\": \"address\" } ], \"name\": \"transferOwnership\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"treasury\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"treasuryFee\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"newFee\", \"type\": \"uint256\" } ], \"name\": \"updateMaxFee\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newTreasury\", \"type\": \"address\" } ], \"name\": \"updateTreasury\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"contract Marketplace[]\", \"name\": \"marketplaces\", \"type\": \"address[]\" } ], \"name\": \"updateTreasuryBatch\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"newFee\", \"type\": \"uint256\" } ], \"name\": \"updateTreasuryFee\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newImplementation\", \"type\": \"address\" } ], \"name\": \"upgrade1155Collection\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newImplementation\", \"type\": \"address\" } ], \"name\": \"upgrade721Collection\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newImplementation\", \"type\": \"address\" } ], \"name\": \"upgradeMarketplace\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newImplementation\", \"type\": \"address\" } ], \"name\": \"upgradeTo\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"newImplementation\", \"type\": \"address\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"upgradeToAndCall\", \"outputs\": [], \"stateMutability\": \"payable\", \"type\": \"function\" } ]"; + public const string Marketplace = + "[ { \"inputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"inputs\": [], \"name\": \"AlreadySameStatus\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"AmountInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"CanNotModify\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"DeadlineInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"EtherTransferFailed\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"FeeReceiverInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"IncorrectAmountSupplied\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"IncorrectLength\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ItemExpired\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ItemIdInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"MaxFeeInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"NFTAlreadyWhitelisted\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"NftTokenInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"NotEnoughBalance\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"NotExpired\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"OperatorInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"TotalFeePercentInvalid\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"Unauthorized\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"WhitelistingDisabled\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ZeroAddress\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ZeroFeePercent\", \"type\": \"error\" }, { \"inputs\": [], \"name\": \"ZeroPrice\", \"type\": \"error\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"treasury\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"name\": \"ChainSafeFeeUpdated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"feeCollector\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"receiver\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"FeeClaimed\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"feeReceiver\", \"type\": \"address\" } ], \"name\": \"FeeReceiverRemoved\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"feeReceiver\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"name\": \"FeeReceiverSet\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint8\", \"name\": \"version\", \"type\": \"uint8\" } ], \"name\": \"Initialized\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"itemId\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"ItemCancelled\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address\", \"name\": \"nftContract\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"itemId\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"seller\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"price\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"deadline\", \"type\": \"uint256\" } ], \"name\": \"ItemListed\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"itemId\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"address\", \"name\": \"buyer\", \"type\": \"address\" } ], \"name\": \"ItemSold\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"name\": \"MaxFeeUpdated\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address[]\", \"name\": \"nftAddresses\", \"type\": \"address[]\" } ], \"name\": \"NFTBlacklisted\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"address[]\", \"name\": \"nftAddresses\", \"type\": \"address[]\" } ], \"name\": \"NFTWhitelisted\", \"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\": \"bool\", \"name\": \"isEnabled\", \"type\": \"bool\" } ], \"name\": \"WhitelistingStatusUpdated\", \"type\": \"event\" }, { \"inputs\": [], \"name\": \"CREATOR_ROLE\", \"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\": \"UPDATER_ROLE\", \"outputs\": [ { \"internalType\": \"bytes32\", \"name\": \"\", \"type\": \"bytes32\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"name\": \"_feeReceiverDetails\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"feeCollected\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"activeItems\", \"outputs\": [ { \"components\": [ { \"internalType\": \"address\", \"name\": \"nftContract\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"address\", \"name\": \"seller\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"price\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"deadline\", \"type\": \"uint256\" } ], \"internalType\": \"struct Marketplace.MarketItem[]\", \"name\": \"\", \"type\": \"tuple[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address[]\", \"name\": \"nftAddresses\", \"type\": \"address[]\" } ], \"name\": \"blacklistNFTContracts\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256[]\", \"name\": \"itemIds\", \"type\": \"uint256[]\" } ], \"name\": \"cancelExpiredListings\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"itemId\", \"type\": \"uint256\" } ], \"name\": \"cancelListing\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"chainsafeTreasury\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"receiver\", \"type\": \"address\" } ], \"name\": \"claimFee\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bool\", \"name\": \"isEnable\", \"type\": \"bool\" } ], \"name\": \"enableWhitelisting\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"from\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"to\", \"type\": \"uint256\" } ], \"name\": \"expiredListingIds\", \"outputs\": [ { \"internalType\": \"uint256[]\", \"name\": \"\", \"type\": \"uint256[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"feeReceiver\", \"type\": \"address\" } ], \"name\": \"feeCollectedByReceiver\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" } ], \"name\": \"feeReceiver\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"feeReceiver\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"feeReceiversNumber\", \"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\": [ { \"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\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"marketplaceID\", \"type\": \"string\" }, { \"internalType\": \"address\", \"name\": \"creator\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"updater\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"treasury\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"isWhitelistingEnable\", \"type\": \"bool\" }, { \"internalType\": \"uint256\", \"name\": \"chainsafeFeePercent\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"maxPercent\", \"type\": \"uint256\" } ], \"name\": \"initialize\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"token\", \"type\": \"address\" } ], \"name\": \"isNftToken\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"itemId\", \"type\": \"uint256\" } ], \"name\": \"itemById\", \"outputs\": [ { \"components\": [ { \"internalType\": \"address\", \"name\": \"nftContract\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"address\", \"name\": \"seller\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"price\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"deadline\", \"type\": \"uint256\" } ], \"internalType\": \"struct Marketplace.MarketItem\", \"name\": \"\", \"type\": \"tuple\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"nftContract\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"price\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"deadline\", \"type\": \"uint256\" } ], \"name\": \"listItem\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address[]\", \"name\": \"nftContracts\", \"type\": \"address[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"tokenIds\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"amounts\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"prices\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"deadlines\", \"type\": \"uint256[]\" } ], \"name\": \"listItems\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"marketplaceID\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"maxFeePercent\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" } ], \"name\": \"nftToken\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"token\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"values\", \"type\": \"uint256[]\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"onERC1155BatchReceived\", \"outputs\": [ { \"internalType\": \"bytes4\", \"name\": \"\", \"type\": \"bytes4\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"onERC1155Received\", \"outputs\": [ { \"internalType\": \"bytes4\", \"name\": \"\", \"type\": \"bytes4\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"onERC721Received\", \"outputs\": [ { \"internalType\": \"bytes4\", \"name\": \"\", \"type\": \"bytes4\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"projectID\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"itemId\", \"type\": \"uint256\" } ], \"name\": \"purchaseItem\", \"outputs\": [], \"stateMutability\": \"payable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"feeReceiver\", \"type\": \"address\" } ], \"name\": \"removeFeeReceiver\", \"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\": \"bytes32\", \"name\": \"role\", \"type\": \"bytes32\" }, { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" } ], \"name\": \"revokeRole\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"feeReceiver\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"name\": \"setFeeReceiver\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"name\": \"setMaxFeePercent\", \"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\": \"totalFeePercent\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"totalListings\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"treasury\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"feePercent\", \"type\": \"uint256\" } ], \"name\": \"updateChainSafeTreasury\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"user\", \"type\": \"address\" } ], \"name\": \"usersListingIds\", \"outputs\": [ { \"internalType\": \"uint256[]\", \"name\": \"\", \"type\": \"uint256[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"user\", \"type\": \"address\" } ], \"name\": \"usersListings\", \"outputs\": [ { \"components\": [ { \"internalType\": \"address\", \"name\": \"nftContract\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"address\", \"name\": \"seller\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"price\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"deadline\", \"type\": \"uint256\" } ], \"internalType\": \"struct Marketplace.MarketItem[]\", \"name\": \"\", \"type\": \"tuple[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address[]\", \"name\": \"nftAddresses\", \"type\": \"address[]\" } ], \"name\": \"whitelistNFTContracts\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"whitelistingEnable\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"stateMutability\": \"payable\", \"type\": \"receive\" } ]"; + public const string GeneralErc721 = + "[ { \"inputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"inputs\": [], \"name\": \"AlreadySameStatus\", \"type\": \"error\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"approved\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"Approval\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"ApprovalForAll\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"_fromTokenId\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"_toTokenId\", \"type\": \"uint256\" } ], \"name\": \"BatchMetadataUpdate\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint8\", \"name\": \"version\", \"type\": \"uint8\" } ], \"name\": \"Initialized\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"_tokenId\", \"type\": \"uint256\" } ], \"name\": \"MetadataUpdate\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"isPublic\", \"type\": \"bool\" } ], \"name\": \"MintingStatusUpdated\", \"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\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"Transfer\", \"type\": \"event\" }, { \"inputs\": [], \"name\": \"CREATOR_ROLE\", \"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\": [ { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"approve\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"baseURI\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"collectionID\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"getApproved\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bytes32\", \"name\": \"role\", \"type\": \"bytes32\" } ], \"name\": \"getRoleAdmin\", \"outputs\": [ { \"internalType\": \"bytes32\", \"name\": \"\", \"type\": \"bytes32\" } ], \"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\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"collectionID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"name_\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"symbol_\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"baseURI\", \"type\": \"string\" }, { \"internalType\": \"address\", \"name\": \"creator\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"mintingPublic\", \"type\": \"bool\" } ], \"name\": \"initialize\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" } ], \"name\": \"isApprovedForAll\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"isMintingPublic\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"player\", \"type\": \"address\" }, { \"internalType\": \"string\", \"name\": \"tokenURI\", \"type\": \"string\" } ], \"name\": \"mint\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bool\", \"name\": \"isPublic\", \"type\": \"bool\" } ], \"name\": \"mintingPublic\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"name\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ownerOf\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"projectID\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bytes32\", \"name\": \"role\", \"type\": \"bytes32\" }, { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" } ], \"name\": \"renounceRole\", \"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\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"safeTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"safeTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"setApprovalForAll\", \"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\": \"symbol\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"tokenURI\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"transferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" } ]"; + public const string GeneralErc1155 = + "[ { \"inputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"inputs\": [], \"name\": \"AlreadySameStatus\", \"type\": \"error\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"ApprovalForAll\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"uint8\", \"name\": \"version\", \"type\": \"uint8\" } ], \"name\": \"Initialized\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"bool\", \"name\": \"isPublic\", \"type\": \"bool\" } ], \"name\": \"MintingStatusUpdated\", \"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\": \"operator\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" }, { \"indexed\": false, \"internalType\": \"uint256[]\", \"name\": \"values\", \"type\": \"uint256[]\" } ], \"name\": \"TransferBatch\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" } ], \"name\": \"TransferSingle\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": false, \"internalType\": \"string\", \"name\": \"value\", \"type\": \"string\" }, { \"indexed\": true, \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" } ], \"name\": \"URI\", \"type\": \"event\" }, { \"inputs\": [], \"name\": \"CREATOR_ROLE\", \"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\": [ { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address[]\", \"name\": \"accounts\", \"type\": \"address[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" } ], \"name\": \"balanceOfBatch\", \"outputs\": [ { \"internalType\": \"uint256[]\", \"name\": \"\", \"type\": \"uint256[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"collectionID\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bytes32\", \"name\": \"role\", \"type\": \"bytes32\" } ], \"name\": \"getRoleAdmin\", \"outputs\": [ { \"internalType\": \"bytes32\", \"name\": \"\", \"type\": \"bytes32\" } ], \"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\": \"string\", \"name\": \"projectID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"collectionID\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"baseURI\", \"type\": \"string\" }, { \"internalType\": \"address\", \"name\": \"creator\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"mintingPublic\", \"type\": \"bool\" } ], \"name\": \"initialize\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" } ], \"name\": \"isApprovedForAll\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"isMintingPublic\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"player\", \"type\": \"address\" }, { \"internalType\": \"string\", \"name\": \"tokenURI\", \"type\": \"string\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"mint\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bool\", \"name\": \"isPublic\", \"type\": \"bool\" } ], \"name\": \"mintingPublic\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"projectID\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"bytes32\", \"name\": \"role\", \"type\": \"bytes32\" }, { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" } ], \"name\": \"renounceRole\", \"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\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256[]\", \"name\": \"ids\", \"type\": \"uint256[]\" }, { \"internalType\": \"uint256[]\", \"name\": \"amounts\", \"type\": \"uint256[]\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"safeBatchTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"id\", \"type\": \"uint256\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" }, { \"internalType\": \"bytes\", \"name\": \"data\", \"type\": \"bytes\" } ], \"name\": \"safeTransferFrom\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"operator\", \"type\": \"address\" }, { \"internalType\": \"bool\", \"name\": \"approved\", \"type\": \"bool\" } ], \"name\": \"setApprovalForAll\", \"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\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"uri\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" } ]"; public const string ArrayTotal = "[ { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"_myArg\", \"type\": \"uint256\" } ], \"name\": \"addTotal\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"getStore\", \"outputs\": [ { \"internalType\": \"string[]\", \"name\": \"\", \"type\": \"string[]\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"name\": \"myTotal\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"string[]\", \"name\": \"_addresses\", \"type\": \"string[]\" } ], \"name\": \"setStore\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" } ]"; } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs index 5762141cb..5ec7331db 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs @@ -1,4 +1,6 @@ -namespace Scripts.EVM.Token +using System.Collections.Generic; + +namespace Scripts.EVM.Token { public class Contracts { @@ -6,5 +8,24 @@ public class Contracts public const string Erc721 = "0x4f75BB7bdd6f7A0fD32f1b3A94dfF409F5a3F1CC"; public const string Erc1155 = "0xAA2EbE78aa788d13AfFaaefD38C93333bbC4d51e"; public const string ArrayTotal = "0x9839293240C535d8009920390b4D3DA256d31177"; + public static readonly Dictionary MarketplaceContracts = new Dictionary + { + // Avalanche mainnet + { "43114", "0xfd9ba4301d277c8593280b54113900f4022e9d43" }, + // Avalanche testnet + { "43113", "0x471232C9f11019045BA6Cf0183469e637ad4aB74" }, + // Binance mainnet + { "56", "0xfd9ba4301d277c8593280b54113900f4022e9d43" }, + // Binance testnet + { "97", "0x471232C9f11019045BA6Cf0183469e637ad4aB74" }, + // Eth mainnet + { "1", "0xfd9ba4301d277c8593280b54113900f4022e9d43" }, + // Sepolia testnet + { "11155111", "0x471232C9f11019045BA6Cf0183469e637ad4aB74" }, + // Polygon mainnet + { "137", "0xfd9ba4301d277c8593280b54113900f4022e9d43" }, + // Mumbai testnet + { "80001", "0x471232C9f11019045BA6Cf0183469e637ad4aB74" } + }; } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs new file mode 100644 index 000000000..0fe15ad52 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs @@ -0,0 +1,38 @@ +namespace ChainSafe.Gaming.UnityPackage.Model +{ + public class CollectionResponses + { + public class Marketplace + { + public string id { get; set; } + public string name { get; set; } + public string description { get; set; } + public string owner { get; set; } + public int chain_id { get; set; } + public string banner { get; set; } + public string project_id { get; set; } + public string contract_address { get; set; } + public bool deployed { get; set; } + public int created_at { get; set; } + public int updated_at { get; set; } + } + + public class Collections + { + public string id { get; set; } + public string name { get; set; } + public string description { get; set; } + public string owner { get; set; } + public int chain_id { get; set; } + public string project_id { get; set; } + public string contract_address { get; set; } + public bool deployed { get; set; } + public bool is_imported { get; set; } + public string type { get; set; } + public string logo { get; set; } + public string banner { get; set; } + public int created_at { get; set; } + public int updated_at { get; set; } + } + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs.meta new file mode 100644 index 000000000..02128055a --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/DashboardResponses.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8791ac41abea4d078d285b97bd35e069 +timeCreated: 1716213111 \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity index 39fa80006..75bbc69df 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity @@ -104,7 +104,7 @@ NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -117,17 +117,224 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} +--- !u!1001 &3042951 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Mint721CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Mint721CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Mint721CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 3042953} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &3042952 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 3042951} + m_PrefabAsset: {fileID: 0} +--- !u!114 &3042953 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3042952} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &3042954 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 3042951} + m_PrefabAsset: {fileID: 0} --- !u!1001 &8717329 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -291,6 +498,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 8717331} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &8717330 stripped GameObject: @@ -317,6 +530,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &8717332 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 8717329} + m_PrefabAsset: {fileID: 0} --- !u!1 &21975176 GameObject: m_ObjectHideFlags: 0 @@ -341,13 +559,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 21975176} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &21975179 MonoBehaviour: @@ -410,19 +628,20 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 24448129} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &32227533 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 199502202} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -588,6 +807,12 @@ PrefabInstance: value: 18.25 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 32227535} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &32227534 stripped GameObject: @@ -614,6 +839,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &32227536 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 32227533} + m_PrefabAsset: {fileID: 0} --- !u!1 &37375164 GameObject: m_ObjectHideFlags: 0 @@ -645,7 +875,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 270218415} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -695,6 +924,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -858,12 +1088,23 @@ PrefabInstance: value: OwnerOfBatch objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 38231116} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &38231114 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 38231113} m_PrefabAsset: {fileID: 0} +--- !u!224 &38231115 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 38231113} + m_PrefabAsset: {fileID: 0} --- !u!114 &38231116 MonoBehaviour: m_ObjectHideFlags: 0 @@ -907,6 +1148,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 67264513} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 2261.058, y: 457.0261, z: 2.4452736} m_LocalScale: {x: 1, y: 1, z: 1} @@ -919,14 +1161,15 @@ Transform: - {fileID: 626054679} - {fileID: 496534497} - {fileID: 2077011803} + - {fileID: 1993709007} m_Father: {fileID: 0} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &83828806 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1090,6 +1333,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 83828808} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &83828807 stripped GameObject: @@ -1116,6 +1365,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &83828809 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 83828806} + m_PrefabAsset: {fileID: 0} --- !u!1 &98914093 stripped GameObject: m_CorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -1145,13 +1399,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 108046414} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &108046416 MonoBehaviour: @@ -1208,13 +1462,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 128166330} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &128166332 MonoBehaviour: @@ -1245,6 +1499,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1404,6 +1659,12 @@ PrefabInstance: value: ImportNftTexture objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 177765172} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &177765170 stripped GameObject: @@ -1440,6 +1701,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1599,12 +1861,23 @@ PrefabInstance: value: Symbol objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 198462060} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &198462058 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 198462057} m_PrefabAsset: {fileID: 0} +--- !u!224 &198462059 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 198462057} + m_PrefabAsset: {fileID: 0} --- !u!114 &198462060 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1630,6 +1903,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -2028,6 +2302,18 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1133733959} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 32227536} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 199502206} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &199502201 stripped RectTransform: @@ -2108,7 +2394,6 @@ RectTransform: - {fileID: 1547239394} - {fileID: 1309352039} m_Father: {fileID: 1170271243} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2142,6 +2427,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2301,12 +2587,23 @@ PrefabInstance: value: SignMessage objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 232490229} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &232490227 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 232490226} m_PrefabAsset: {fileID: 0} +--- !u!224 &232490228 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 232490226} + m_PrefabAsset: {fileID: 0} --- !u!114 &232490229 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2332,6 +2629,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2491,12 +2789,23 @@ PrefabInstance: value: GetBlockNumber objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 242508244} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &242508242 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 242508241} m_PrefabAsset: {fileID: 0} +--- !u!224 &242508243 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 242508241} + m_PrefabAsset: {fileID: 0} --- !u!114 &242508244 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2522,6 +2831,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2685,6 +2995,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 246667302} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &246667301 stripped GameObject: @@ -2711,6 +3027,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &246667303 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 246667300} + m_PrefabAsset: {fileID: 0} --- !u!1 &270218414 GameObject: m_ObjectHideFlags: 0 @@ -2741,47 +3062,251 @@ RectTransform: m_Children: - {fileID: 37375165} m_Father: {fileID: 352732285} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &352732284 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 352732285} - - component: {fileID: 352732288} - - component: {fileID: 352732287} - - component: {fileID: 352732286} - m_Layer: 5 - m_Name: Scrollbar Horizontal - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &352732285 -RectTransform: +--- !u!1001 &345726215 +PrefabInstance: m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 352732284} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: CreateMarketplace + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - CreateMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: CreateMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 345726217} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &345726216 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 345726215} + m_PrefabAsset: {fileID: 0} +--- !u!114 &345726217 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 345726216} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &345726218 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 345726215} + m_PrefabAsset: {fileID: 0} +--- !u!1 &352732284 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 352732285} + - component: {fileID: 352732288} + - component: {fileID: 352732287} + - component: {fileID: 352732286} + m_Layer: 5 + m_Name: Scrollbar Horizontal + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &352732285 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 352732284} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 270218415} m_Father: {fileID: 1170271243} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} @@ -2832,7 +3357,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.1924044 + m_Size: 0.17539221 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -2880,6 +3405,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3039,12 +3565,23 @@ PrefabInstance: value: UseRegisteredContract objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 413551945} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &413551943 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 413551942} m_PrefabAsset: {fileID: 0} +--- !u!224 &413551944 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 413551942} + m_PrefabAsset: {fileID: 0} --- !u!114 &413551945 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3125,13 +3662,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 424437031} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &450191115 GameObject: @@ -3199,7 +3736,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1739933076476804461} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.35, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -3211,6 +3747,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3370,12 +3907,23 @@ PrefabInstance: value: SignVerify objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 468027691} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &468027689 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 468027688} m_PrefabAsset: {fileID: 0} +--- !u!224 &468027690 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 468027688} + m_PrefabAsset: {fileID: 0} --- !u!114 &468027691 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3401,6 +3949,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 921261270} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3532,6 +4081,9 @@ PrefabInstance: value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &491434543 stripped RectTransform: @@ -3573,13 +4125,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 496534496} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &496534498 MonoBehaviour: @@ -3593,10 +4145,31 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} m_Name: m_EditorClassIdentifier: - collectionId721: d588268b-8a5b-486a-8ea1-4122b510d71e - collectionId1155: ebeaaee5-f7c2-4561-abb9-60ba749db7cd - marketplaceId: 4986983b-2bcc-4bb3-b0db-a3448fbdee2b - tokenId: 0 + bearerToken: Please set your bearer token from the ChainSafe dashboard + collectionId721: Set 721 collection ID + collectionId1155: Set 1155 collection ID + marketplaceId: Set marketplace ID + tokenId: Set token ID i.e 1 + collectionName721: Set 721 collection name + collectionDescription721: Set 721 collection description + collectionMintingPublic721: 0 + collectionName1155: Set 1155 collection name + collectionDescription1155: Set 1155 collection description + collectionMintingPublic1155: 0 + collectionToDelete: Set collection to delete + marketplaceToDelete: Set marketplace to delete + collectionContract721: Set 721 collection to mint to + uri721: Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + collectionContract1155: Set 1155 collection to mint to + uri1155: Set 721 collection to mint to https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + amount1155: Set amount of Nfts to mint i.e 1 + marketplaceName: Set marketplace name + marketplaceDescription: Set marketplace description + marketplaceWhitelisting: 0 + tokenIdToList: Set token ID to list + weiPriceToList: Set price in wei to list for i.e 100000000000000 + marketplaceContractToListTo: Set marketplace contract to list to + collectionContractToList: Set collection contract to list from --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -3637,9 +4210,17 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -3673,19 +4254,20 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 519420028} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &526139424 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3845,12 +4427,23 @@ PrefabInstance: value: GetGasLimit objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 526139427} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &526139425 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 526139424} m_PrefabAsset: {fileID: 0} +--- !u!224 &526139426 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 526139424} + m_PrefabAsset: {fileID: 0} --- !u!114 &526139427 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3876,6 +4469,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4039,6 +4633,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 553675707} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &553675706 stripped GameObject: @@ -4065,11 +4665,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &553675708 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 553675705} + m_PrefabAsset: {fileID: 0} --- !u!1001 &561629178 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4233,6 +4839,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 561629180} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &561629179 stripped GameObject: @@ -4259,11 +4871,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &561629181 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 561629178} + m_PrefabAsset: {fileID: 0} --- !u!1001 &571694324 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1019211774} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4423,12 +5041,23 @@ PrefabInstance: value: CallWithSyncFeeErc2771 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 571694327} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &571694325 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 571694324} m_PrefabAsset: {fileID: 0} +--- !u!224 &571694326 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 571694324} + m_PrefabAsset: {fileID: 0} --- !u!114 &571694327 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4473,13 +5102,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 626054678} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &626054680 MonoBehaviour: @@ -4498,12 +5127,13 @@ GameObject: m_CorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} m_PrefabInstance: {fileID: 1432457963} m_PrefabAsset: {fileID: 0} ---- !u!1001 &740305723 +--- !u!1001 &679729164 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -4515,7 +5145,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 4 + value: 15 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4616,7 +5246,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4631,7 +5261,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: NativeBalanceOf + value: ApproveListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4639,7 +5269,213 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - ApproveListNftsToMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: ApproveListNftsToMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 14.75 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 679729166} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &679729165 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 679729164} + m_PrefabAsset: {fileID: 0} +--- !u!114 &679729166 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 679729165} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &679729167 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 679729164} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &740305723 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2013807919} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 21975179} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: NativeBalanceOf + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4662,12 +5498,23 @@ PrefabInstance: value: Native Balance Of objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 740305726} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &740305724 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 740305723} m_PrefabAsset: {fileID: 0} +--- !u!224 &740305725 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 740305723} + m_PrefabAsset: {fileID: 0} --- !u!114 &740305726 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4693,6 +5540,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4856,6 +5704,15 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 741546197} + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 741546198} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &741546196 stripped GameObject: @@ -4895,11 +5752,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &741546199 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 741546195} + m_PrefabAsset: {fileID: 0} --- !u!1001 &743188456 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -5218,6 +6081,69 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 246667303} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1379414673} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 772013272} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 553675708} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 871233357} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1633924250} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1060509510} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1278112706} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1131644344} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 3042954} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2110753558} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1732360736} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 345726218} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 775715310} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 679729167} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1670752448} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1798261412} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188461} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188462} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188463} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &743188457 stripped RectTransform: @@ -5327,6 +6253,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -5490,6 +6417,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 772013271} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &772013270 stripped GameObject: @@ -5516,12 +6449,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &846989431 +--- !u!224 &772013272 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 772013269} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &775715307 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -5533,7 +6472,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 5 + value: 14 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -5634,7 +6573,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5649,7 +6588,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: TransferErc721 + value: DeleteMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -5657,7 +6596,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -5673,30 +6612,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Transfer + value: Button - DeleteMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Transfer + value: DeleteMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 775715309} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &846989432 stripped +--- !u!1 &775715308 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 846989431} + m_PrefabInstance: {fileID: 775715307} m_PrefabAsset: {fileID: 0} ---- !u!114 &846989433 +--- !u!114 &775715309 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 846989432} + m_GameObject: {fileID: 775715308} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -5710,12 +6655,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &853126499 +--- !u!224 &775715310 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 775715307} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &846989431 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + serializedVersion: 3 + m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -5727,7 +6678,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -5828,7 +6779,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 24448130} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5843,7 +6794,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: Name + value: TransferErc721 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -5851,7 +6802,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: Erc721Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -5867,26 +6818,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Name + value: Button - Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Name + value: Transfer + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 846989433} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &853126500 stripped +--- !u!1 &846989432 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 853126499} + m_PrefabInstance: {fileID: 846989431} m_PrefabAsset: {fileID: 0} ---- !u!114 &853126502 +--- !u!114 &846989433 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853126500} + m_GameObject: {fileID: 846989432} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -5900,11 +6861,219 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &871233354 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: +--- !u!224 &846989434 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 846989431} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &853126499 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2013807919} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 21975179} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Name + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc20Calls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Name + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Name + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 853126502} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &853126500 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 853126499} + m_PrefabAsset: {fileID: 0} +--- !u!224 &853126501 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 853126499} + m_PrefabAsset: {fileID: 0} +--- !u!114 &853126502 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 853126500} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &871233354 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -6068,6 +7237,12 @@ PrefabInstance: value: 18.3 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 871233356} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &871233355 stripped GameObject: @@ -6094,11 +7269,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &871233357 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 871233354} + m_PrefabAsset: {fileID: 0} --- !u!1001 &876509799 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -6416,6 +7597,27 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1424922161} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 38231115} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1499018966} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1312741006} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 846989434} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 876509805} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &876509800 stripped RectTransform: @@ -6486,7 +7688,6 @@ RectTransform: - {fileID: 491434543} - {fileID: 1930047998} m_Father: {fileID: 2028066335210561937} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -6539,6 +7740,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -6698,12 +7900,23 @@ PrefabInstance: value: Total Supply objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 937973263} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &937973261 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 937973260} m_PrefabAsset: {fileID: 0} +--- !u!224 &937973262 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 937973260} + m_PrefabAsset: {fileID: 0} --- !u!114 &937973263 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6729,6 +7942,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -6888,6 +8102,12 @@ PrefabInstance: value: Uri objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 963882744} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &963882742 stripped GameObject: @@ -6924,6 +8144,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -7239,6 +8460,27 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1229855182} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 571694326} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1997642614} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1019211778} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1019211780} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1019211781} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &1019211773 stripped RectTransform: @@ -7343,6 +8585,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -7502,12 +8745,23 @@ PrefabInstance: value: Sha3 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1031869234} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1031869232 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1031869231} m_PrefabAsset: {fileID: 0} +--- !u!224 &1031869233 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1031869231} + m_PrefabAsset: {fileID: 0} --- !u!114 &1031869234 MonoBehaviour: m_ObjectHideFlags: 0 @@ -7560,7 +8814,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1547239394} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -7630,6 +8883,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -7793,6 +9047,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1060509509} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1060509508 stripped GameObject: @@ -7819,11 +9079,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1060509510 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1060509507} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1101863644 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -7983,12 +9249,23 @@ PrefabInstance: value: GetNonce objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1101863647} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1101863645 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1101863644} m_PrefabAsset: {fileID: 0} +--- !u!224 &1101863646 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1101863644} + m_PrefabAsset: {fileID: 0} --- !u!114 &1101863647 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8014,6 +9291,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8177,6 +9455,15 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1106330807} + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1106330808} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1106330806 stripped GameObject: @@ -8216,12 +9503,18 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: serviceType: 2 ---- !u!1001 &1133733956 +--- !u!224 &1106330809 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1106330805} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1131644341 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 199502202} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -8233,7 +9526,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 1 + value: 9 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -8334,7 +9627,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -8349,7 +9642,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: IPFSUploadMetadata + value: Create1155Collection objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -8357,7 +9650,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: IPFSCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -8373,30 +9666,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Upload (1) + value: Button - CreateCollection1155 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Upload Metadata + value: CreateCollection1155 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1131644343} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1133733957 stripped +--- !u!1 &1131644342 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1133733956} + m_PrefabInstance: {fileID: 1131644341} m_PrefabAsset: {fileID: 0} ---- !u!114 &1133733958 +--- !u!114 &1131644343 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1133733957} + m_GameObject: {fileID: 1131644342} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -8410,18 +9709,229 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1 &1170271242 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} +--- !u!224 &1131644344 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1131644341} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1170271243} - - component: {fileID: 1170271245} - - component: {fileID: 1170271244} - m_Layer: 5 +--- !u!1001 &1133733956 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 199502202} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 2077011804} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: IPFSUploadMetadata + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: IPFSCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Upload (1) + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Upload Metadata + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1133733958} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1133733957 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1133733956} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1133733958 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133733957} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &1133733959 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1133733956} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1170271242 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1170271243} + - component: {fileID: 1170271245} + - component: {fileID: 1170271244} + m_Layer: 5 m_Name: Scroll View m_TagString: Untagged m_Icon: {fileID: 0} @@ -8444,7 +9954,6 @@ RectTransform: - {fileID: 352732285} - {fileID: 2036852239} m_Father: {fileID: 1255546033} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.85} @@ -8514,6 +10023,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8673,12 +10183,23 @@ PrefabInstance: value: SendArray objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1225501828} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1225501826 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1225501825} m_PrefabAsset: {fileID: 0} +--- !u!224 &1225501827 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1225501825} + m_PrefabAsset: {fileID: 0} --- !u!114 &1225501828 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8704,6 +10225,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1019211774} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8863,12 +10385,23 @@ PrefabInstance: value: SponsorCall objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1229855183} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1229855181 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1229855180} m_PrefabAsset: {fileID: 0} +--- !u!224 &1229855182 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1229855180} + m_PrefabAsset: {fileID: 0} --- !u!114 &1229855183 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8970,7 +10503,9 @@ Canvas: m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 @@ -8989,19 +10524,19 @@ RectTransform: - {fileID: 1247563127} - {fileID: 1170271243} m_Father: {fileID: 0} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} ---- !u!1001 &1291694840 +--- !u!1001 &1278112703 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -9013,7 +10548,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 15 + value: 8 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -9114,7 +10649,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9129,7 +10664,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: EcdsaSignTransaction + value: Create721Collection objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -9137,7 +10672,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -9153,30 +10688,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - SignTxECDSA + value: Button - CreateCollection721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: ECDSASignTX + value: CreateCollection721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1278112705} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1291694841 stripped +--- !u!1 &1278112704 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1291694840} + m_PrefabInstance: {fileID: 1278112703} m_PrefabAsset: {fileID: 0} ---- !u!114 &1291694842 +--- !u!114 &1278112705 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1291694841} + m_GameObject: {fileID: 1278112704} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -9190,27 +10731,238 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1 &1309352038 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1309352039} - - component: {fileID: 1309352041} - - component: {fileID: 1309352040} - m_Layer: 5 - m_Name: Processing Fx - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &1309352039 +--- !u!224 &1278112706 stripped RectTransform: - m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1278112703} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1291694840 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: EcdsaSignTransaction + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - SignTxECDSA + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: ECDSASignTX + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1291694842} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1291694841 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1291694840} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1291694842 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1291694841} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &1291694843 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1291694840} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1309352038 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1309352039} + - component: {fileID: 1309352041} + - component: {fileID: 1309352040} + m_Layer: 5 + m_Name: Processing Fx + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &1309352039 +RectTransform: + m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -9221,7 +10973,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 213321591} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -9271,6 +11022,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -9434,6 +11186,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1312741005} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1312741004 stripped GameObject: @@ -9460,11 +11218,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1312741006 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1312741003} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1379414670 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -9628,6 +11392,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1379414672} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1379414671 stripped GameObject: @@ -9654,11 +11424,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1379414673 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1379414670} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1424922159 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -9818,12 +11594,23 @@ PrefabInstance: value: OwnerOf objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1424922162} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1424922160 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1424922159} m_PrefabAsset: {fileID: 0} +--- !u!224 &1424922161 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1424922159} + m_PrefabAsset: {fileID: 0} --- !u!114 &1424922162 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9849,6 +11636,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -10163,40 +11951,802 @@ PrefabInstance: propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - propertyPath: m_AnchoredPosition.y - value: 0 + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2092108893} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 242508243} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 526139426} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1800123348} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1101863646} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1440140101} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 413551944} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 8717332} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1225501827} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2123417268} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1031869233} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 232490228} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 468027690} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1937105456} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1291694843} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1606193493} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1106330809} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 741546199} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1432457969} + m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} +--- !u!224 &1432457964 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 1432457963} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1432457965 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 1432457963} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1432457967 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 1432457963} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &1432457969 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 649642438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: 550 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1440140099 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetTransactionStatus + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetTransactionStatus + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetTransactionStatus + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1440140102} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1440140100 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1440140099} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1440140101 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1440140099} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1440140102 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1440140100} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1499018964 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 876509801} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 24448130} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Uri + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc721Calls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - URI + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: URI + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1499018967} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1499018965 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1499018964} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1499018966 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1499018964} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1499018967 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1499018965} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &1540322698 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 876509799} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1547239393 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1547239394} + - component: {fileID: 1547239396} + - component: {fileID: 1547239395} + m_Layer: 5 + m_Name: Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1547239394 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1547239393} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1058195612} + - {fileID: 1588444497385416147} + - {fileID: 7383186216686042638} + - {fileID: 876509800} + - {fileID: 1300152324561942831} + - {fileID: 199502201} + - {fileID: 1019211773} + - {fileID: 743188457} + - {fileID: 1432457964} + m_Father: {fileID: 213321591} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0.5} +--- !u!114 &1547239395 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1547239393} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 20 + m_Right: 20 + m_Top: 20 + m_Bottom: 20 + m_ChildAlignment: 0 + m_Spacing: 20 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 1 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!114 &1547239396 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1547239393} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 2 + m_VerticalFit: 0 +--- !u!1001 &1606193490 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: EcdsaGetAddress + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetAddressECDSA + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: ECDSAGetAddress + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} ---- !u!224 &1432457964 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 1432457963} - m_PrefabAsset: {fileID: 0} ---- !u!224 &1432457965 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 1432457963} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1432457967 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 1432457963} + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1606193492} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1606193491 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1606193490} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!114 &1432457969 +--- !u!114 &1606193492 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 649642438} + m_GameObject: {fileID: 1606193491} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10205,17 +12755,23 @@ MonoBehaviour: m_IgnoreLayout: 0 m_MinWidth: -1 m_MinHeight: -1 - m_PreferredWidth: 550 - m_PreferredHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1440140099 +--- !u!224 &1606193493 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1606193490} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1633924247 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10328,7 +12884,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10343,7 +12899,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: GetTransactionStatus + value: GetCollectionToken objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -10351,7 +12907,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -10367,26 +12923,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - GetTransactionStatus + value: Button - GetCollectionToken objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: GetTransactionStatus + value: GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1633924249} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1440140100 stripped +--- !u!1 &1633924248 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1440140099} + m_PrefabInstance: {fileID: 1633924247} m_PrefabAsset: {fileID: 0} ---- !u!114 &1440140102 +--- !u!114 &1633924249 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1440140100} + m_GameObject: {fileID: 1633924248} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10400,12 +12966,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1499018964 +--- !u!224 &1633924250 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1633924247} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1670752445 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10417,7 +12989,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 16 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -10518,7 +13090,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10533,7 +13105,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: Uri + value: RevokeApprovalListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -10541,7 +13113,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -10557,26 +13129,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - URI + value: Button - RevokeApprovalListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: URI + value: RevokeApprovalListNftsToMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 11.8 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1670752447} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1499018965 stripped +--- !u!1 &1670752446 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1499018964} + m_PrefabInstance: {fileID: 1670752445} m_PrefabAsset: {fileID: 0} ---- !u!114 &1499018967 +--- !u!114 &1670752447 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1499018965} + m_GameObject: {fileID: 1670752446} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10590,110 +13172,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!114 &1540322698 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 876509799} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &1547239393 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1547239394} - - component: {fileID: 1547239396} - - component: {fileID: 1547239395} - m_Layer: 5 - m_Name: Content - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1547239394 +--- !u!224 &1670752448 stripped RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1547239393} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1058195612} - - {fileID: 1588444497385416147} - - {fileID: 7383186216686042638} - - {fileID: 876509800} - - {fileID: 1300152324561942831} - - {fileID: 199502201} - - {fileID: 1019211773} - - {fileID: 743188457} - - {fileID: 1432457964} - m_Father: {fileID: 213321591} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0.5} ---- !u!114 &1547239395 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1547239393} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 20 - m_Right: 20 - m_Top: 20 - m_Bottom: 20 - m_ChildAlignment: 0 - m_Spacing: 20 - m_ChildForceExpandWidth: 0 - m_ChildForceExpandHeight: 0 - m_ChildControlWidth: 1 - m_ChildControlHeight: 0 - m_ChildScaleWidth: 0 - m_ChildScaleHeight: 0 - m_ReverseArrangement: 0 ---- !u!114 &1547239396 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1670752445} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1547239393} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} - m_Name: - m_EditorClassIdentifier: - m_HorizontalFit: 2 - m_VerticalFit: 0 ---- !u!1001 &1606193490 +--- !u!1001 &1732360733 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10705,7 +13195,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 16 + value: 12 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -10806,7 +13296,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10821,7 +13311,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: EcdsaGetAddress + value: DeleteCollection objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -10829,7 +13319,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -10845,30 +13335,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - GetAddressECDSA + value: Button - DeleteCollection objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: ECDSAGetAddress + value: DeleteCollection objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1732360735} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1606193491 stripped +--- !u!1 &1732360734 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1606193490} + m_PrefabInstance: {fileID: 1732360733} m_PrefabAsset: {fileID: 0} ---- !u!114 &1606193492 +--- !u!114 &1732360735 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1606193491} + m_GameObject: {fileID: 1732360734} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10882,12 +13378,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1633924247 +--- !u!224 &1732360736 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1732360733} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1762398783 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 743188458} + serializedVersion: 3 + m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10899,7 +13401,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 6 + value: 7 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -11000,7 +13502,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 21975179} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11015,7 +13517,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: GetCollectionToken + value: MintErc20 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -11023,7 +13525,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: MarketplaceCalls, Samples + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -11039,30 +13541,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - GetCollectionToken + value: Button - Mint objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: GetCollectionToken + value: Mint objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 18.85 + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1762398785} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1633924248 stripped +--- !u!1 &1762398784 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1633924247} + m_PrefabInstance: {fileID: 1762398783} m_PrefabAsset: {fileID: 0} ---- !u!114 &1633924249 +--- !u!114 &1762398785 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1633924248} + m_GameObject: {fileID: 1762398784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -11076,12 +13584,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1762398783 +--- !u!224 &1762398786 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1762398783} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1798261409 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -11093,7 +13607,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 7 + value: 17 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -11194,7 +13708,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11209,7 +13723,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: MintErc20 + value: ListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -11217,7 +13731,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -11233,30 +13747,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Mint + value: Button - ListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Mint + value: ListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1798261411} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1762398784 stripped +--- !u!1 &1798261410 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1762398783} + m_PrefabInstance: {fileID: 1798261409} m_PrefabAsset: {fileID: 0} ---- !u!114 &1762398785 +--- !u!114 &1798261411 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1762398784} + m_GameObject: {fileID: 1798261410} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -11270,11 +13790,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1798261412 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1798261409} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1800123346 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11434,12 +13960,23 @@ PrefabInstance: value: GetGasPrice objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1800123349} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1800123347 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1800123346} m_PrefabAsset: {fileID: 0} +--- !u!224 &1800123348 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1800123346} + m_PrefabAsset: {fileID: 0} --- !u!114 &1800123349 MonoBehaviour: m_ObjectHideFlags: 0 @@ -11465,6 +14002,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 921261270} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11596,6 +14134,9 @@ PrefabInstance: value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &1876911316 stripped RectTransform: @@ -11618,6 +14159,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11781,6 +14323,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1892815747} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1892815746 stripped GameObject: @@ -11817,6 +14365,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 921261270} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11948,6 +14497,9 @@ PrefabInstance: value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &1930047998 stripped RectTransform: @@ -11970,6 +14522,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12133,6 +14686,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1937105455} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1937105454 stripped GameObject: @@ -12159,11 +14718,61 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1937105456 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1937105453} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1993709006 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1993709007} + - component: {fileID: 1993709008} + m_Layer: 0 + m_Name: ImageUploader + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1993709007 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1993709006} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -2261.058, y: -457.0261, z: -2.4452736} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 67264514} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1993709008 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1993709006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b8b0c4a2242595246b31317446fabf8b, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &1997642612 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1019211774} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12323,12 +14932,23 @@ PrefabInstance: value: SponsorCallErc2771 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1997642615} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1997642613 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1997642612} m_PrefabAsset: {fileID: 0} +--- !u!224 &1997642614 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1997642612} + m_PrefabAsset: {fileID: 0} --- !u!114 &1997642615 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12354,6 +14974,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12513,6 +15134,12 @@ PrefabInstance: value: BalanceOfBatch objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2001828017} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2001828015 stripped GameObject: @@ -12549,6 +15176,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12708,12 +15336,23 @@ PrefabInstance: value: Decimals objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2011409378} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2011409376 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2011409375} m_PrefabAsset: {fileID: 0} +--- !u!224 &2011409377 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2011409375} + m_PrefabAsset: {fileID: 0} --- !u!114 &2011409378 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12768,13 +15407,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2077011802} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2077011804 MonoBehaviour: @@ -12788,11 +15427,11 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 9a86b695c20675b43ba7a0f0a496749c, type: 3} m_Name: m_EditorClassIdentifier: - apiKey: Fill In Your API Key From Storage + apiSecretKey: Fill In Your API Secret Key From Storage bucketId: Fill In Your Bucket ID From Storage fileNameImage: Logo.png fileNameMetaData: MetaData.json - name: Name of the NFT + nftName: Name of the NFT description: An NFT description externalUrl: The URL that appears below your assets image display_types: @@ -12810,6 +15449,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12973,12 +15613,23 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2092108894} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2092108892 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2092108891} m_PrefabAsset: {fileID: 0} +--- !u!224 &2092108893 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2092108891} + m_PrefabAsset: {fileID: 0} --- !u!114 &2092108894 MonoBehaviour: m_ObjectHideFlags: 0 @@ -13004,6 +15655,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -13167,6 +15819,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2110182465} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2110182464 stripped GameObject: @@ -13198,11 +15856,218 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2110182463} m_PrefabAsset: {fileID: 0} +--- !u!1001 &2110753555 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Mint1155CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Mint1155CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Mint1155CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2110753557} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &2110753556 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2110753555} + m_PrefabAsset: {fileID: 0} +--- !u!114 &2110753557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110753556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &2110753558 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2110753555} + m_PrefabAsset: {fileID: 0} --- !u!1001 &2123417266 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -13362,12 +16227,23 @@ PrefabInstance: value: SendTransaction objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2123417269} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2123417267 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2123417266} m_PrefabAsset: {fileID: 0} +--- !u!224 &2123417268 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2123417266} + m_PrefabAsset: {fileID: 0} --- !u!114 &2123417269 MonoBehaviour: m_ObjectHideFlags: 0 @@ -13506,6 +16382,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1255546033} m_Modifications: - target: {fileID: 419827144736729328, guid: dcf96d5d1be365e43a4caa7561dc9ec4, type: 3} @@ -13641,6 +16518,9 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: dcf96d5d1be365e43a4caa7561dc9ec4, type: 3} --- !u!114 &531827907373074738 MonoBehaviour: @@ -13763,7 +16643,6 @@ RectTransform: m_Children: - {fileID: 2040157780357722570} m_Father: {fileID: 2068160273352595115} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -13842,7 +16721,6 @@ RectTransform: - {fileID: 2068160273352595115} - {fileID: 1438947641707540387} m_Father: {fileID: 1300152324561942831} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0.5, y: 1} @@ -13879,7 +16757,6 @@ RectTransform: - {fileID: 1196625355228757671} - {fileID: 7607616081954332969} m_Father: {fileID: 1547239394} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -13949,7 +16826,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1196625355228757671} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.75} @@ -13972,7 +16848,6 @@ RectTransform: - {fileID: 1779991349877852759} - {fileID: 1727257165965587295} m_Father: {fileID: 1588444497385416147} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0.5, y: 1} @@ -13995,7 +16870,6 @@ RectTransform: - {fileID: 1484811389487800923} - {fileID: 7895926121673440725} m_Father: {fileID: 1547239394} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -14015,7 +16889,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1484811389487800923} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.75} @@ -14037,7 +16910,6 @@ RectTransform: - {fileID: 450191118} - {fileID: 3719940707883753730} m_Father: {fileID: 7607616081954332969} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14058,7 +16930,6 @@ RectTransform: m_Children: - {fileID: 5227750615122619015} m_Father: {fileID: 1484811389487800923} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.75} m_AnchorMax: {x: 1, y: 0.85} @@ -14087,7 +16958,6 @@ RectTransform: m_Children: - {fileID: 921261270} m_Father: {fileID: 7895926121673440725} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14107,7 +16977,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1050360241631262684} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14128,7 +16997,6 @@ RectTransform: m_Children: - {fileID: 1050360241631262684} m_Father: {fileID: 1196625355228757671} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.75} m_AnchorMax: {x: 1, y: 0.85} @@ -14273,7 +17141,6 @@ RectTransform: m_Children: - {fileID: 3947701605736204151} m_Father: {fileID: 3719940707883753730} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -14491,7 +17358,6 @@ RectTransform: - {fileID: 1892815748} - {fileID: 177765173} m_Father: {fileID: 1739933076476804461} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14659,7 +17525,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2597086132424540513} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14761,6 +17626,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1779991349877852759} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -14904,6 +17770,12 @@ PrefabInstance: value: 2 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 243536146865444302} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &5227750615122619015 stripped RectTransform: @@ -15482,7 +18354,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1300152324561942831} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15512,6 +18383,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -15822,6 +18694,36 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 83828809} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2011409377} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 853126501} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 740305725} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 198462059} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 937973262} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1762398786} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 561629181} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 7383186216686042640} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &7383186216686042638 stripped RectTransform: @@ -15877,7 +18779,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1588444497385416147} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15915,7 +18816,6 @@ RectTransform: m_Children: - {fileID: 1739933076476804461} m_Father: {fileID: 1300152324561942831} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15953,7 +18853,6 @@ RectTransform: m_Children: - {fileID: 2028066335210561937} m_Father: {fileID: 1588444497385416147} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15965,6 +18864,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1170271243} m_Modifications: - target: {fileID: 7978786051816279264, guid: 0bece0d54c82072478aba621b52f134f, type: 3} @@ -16060,6 +18960,15 @@ PrefabInstance: value: objectReference: {fileID: 424437033} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 7978786051816279265, guid: 0bece0d54c82072478aba621b52f134f, type: 3} + insertIndex: -1 + addedObject: {fileID: 7978786053810957042} + - targetCorrespondingSourceObject: {fileID: 7978786051816279265, guid: 0bece0d54c82072478aba621b52f134f, type: 3} + insertIndex: -1 + addedObject: {fileID: 7978786053810957043} m_SourcePrefab: {fileID: 100100000, guid: 0bece0d54c82072478aba621b52f134f, type: 3} --- !u!1 &7978786053810957040 stripped GameObject: @@ -16164,7 +19073,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1196625355228757671} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.85} m_AnchorMax: {x: 1, y: 1} @@ -16202,7 +19110,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1484811389487800923} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.85} m_AnchorMax: {x: 1, y: 1} @@ -16224,3 +19131,11 @@ MonoBehaviour: m_EffectColor: {r: 1, g: 1, b: 1, a: 0.2} m_EffectDistance: {x: 1, y: 1} m_UseGraphicAlpha: 1 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 519420032} + - {fileID: 424437034} + - {fileID: 1255546033} + - {fileID: 67264514} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs index 3100d8eaa..c50c03176 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -12,7 +12,7 @@ public class IPFSCalls : MonoBehaviour [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; [SerializeField] private string fileNameImage = "Logo.png"; [SerializeField] private string fileNameMetaData = "MetaData.json"; - [SerializeField] private string name = "Name of the NFT"; + [SerializeField] private string nftName = "Name of the NFT"; [SerializeField] private string description = "An NFT description"; [SerializeField] private string externalUrl = "The URL that appears below your assets image"; [SerializeField] private List display_types = new List { "Stamina", "Boost Number" }; @@ -51,7 +51,7 @@ public async void IPFSUploadMetadata() BucketId = bucketId, Image = imageCID, FileNameMetaData = fileNameMetaData, - Name = name, + Name = nftName, Description = description, External_url = externalUrl, attributes = IPFS.CreateAttributesList(display_types, trait_types, values) diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs index 2095b526d..63bbc6411 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -11,25 +11,59 @@ public class MarketplaceCalls : MonoBehaviour #region fields [Header("Change the fields below for testing purposes")] - #region Collections + [Header("Bearer token")] + [SerializeField] private string bearerToken = "Please set your bearer token from the ChainSafe dashboard"; [Header("721 Collection Call")] - [SerializeField] private string collectionId721 = "d588268b-8a5b-486a-8ea1-4122b510d71e"; + [SerializeField] private string collectionId721 = "Set 721 collection ID"; + [Header("1155 Collection Call")] - [SerializeField] private string collectionId1155 = "ebeaaee5-f7c2-4561-abb9-60ba749db7cd"; + [SerializeField] private string collectionId1155 = "Set 1155 collection ID"; + [Header("Marketplace Calls")] - [SerializeField] private string marketplaceId = "4986983b-2bcc-4bb3-b0db-a3448fbdee2b"; + [SerializeField] private string marketplaceId = "Set marketplace ID"; + [Header("Token Calls")] - [SerializeField] private string tokenId = "0"; - - #endregion + [SerializeField] private string tokenId = "Set token ID i.e 1"; + + [Header("Create 721 Collection Call")] + [SerializeField] private string collectionName721 = "Set 721 collection name"; + [SerializeField] private string collectionDescription721 = "Set 721 collection description"; + [SerializeField] private bool collectionMintingPublic721 = false; + + [Header("Create 1155 Collection Call")] + [SerializeField] private string collectionName1155 = "Set 1155 collection name"; + [SerializeField] private string collectionDescription1155 = "Set 1155 collection description"; + [SerializeField] private bool collectionMintingPublic1155 = false; + + [Header("Delete calls (Can only be used before the item is on chain)")] + [SerializeField] private string collectionToDelete = "Set collection to delete"; + [SerializeField] private string marketplaceToDelete = "Set marketplace to delete"; + + [Header("Mint 721 to collection calls")] + [SerializeField] private string collectionContract721 = "Set 721 collection to mint to"; + [SerializeField] private string uri721 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; + + [Header("Mint 1155 to collection calls")] + [SerializeField] private string collectionContract1155 = "Set 1155 collection to mint to"; + [SerializeField] private string uri1155 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; + [SerializeField] private string amount1155 = "Set amount of Nfts to mint i.e 1"; + + [Header("Create marketplace call")] + [SerializeField] private string marketplaceName = "Set marketplace name"; + [SerializeField] private string marketplaceDescription = "Set marketplace description"; + [SerializeField] private bool marketplaceWhitelisting = false; + + [Header("List to marketplace calls")] + [SerializeField] private string tokenIdToList = "Set token ID to list"; + [SerializeField] private string weiPriceToList = "Set price in wei to list for i.e 100000000000000"; + [SerializeField] private string marketplaceContractToListTo = "Set marketplace contract to list to"; + [SerializeField] private string collectionContractToList = "Set collection contract to list from"; #endregion #region Methods - #region MarketplaceCalls - /// /// Gets all items in a project. /// @@ -64,9 +98,6 @@ public async void GetItem() var response = await Marketplace.GetItem(marketplaceId, tokenId); Marketplace.PrintObject(response.token); } - #endregion - - #region TokenCalls /// /// Gets all tokens in a project. @@ -124,8 +155,104 @@ public async void GetTokenOwners() Marketplace.PrintObject(owner); } } - - #endregion + + /// + /// Creates a 721 collection + /// + public async void Create721Collection() + { + var data = await Marketplace.Create721Collection(bearerToken, collectionName721, collectionDescription721, collectionMintingPublic721); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Creates a 1155 collection + /// + public async void Create1155Collection() + { + var data = await Marketplace.Create1155Collection(bearerToken, collectionName1155, collectionDescription1155, collectionMintingPublic1155); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Mints an NFT to a 721 collection + /// + public async void Mint721CollectionNft() + { + var data = await Marketplace.Mint721CollectionNft(collectionContract721, uri721); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Mints an NFT to a 1155 collection + /// + public async void Mint1155CollectionNft() + { + var data = await Marketplace.Mint1155CollectionNft(collectionContract1155, uri1155, amount1155); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Deletes a collection that isn't on chain yet + /// + public async void DeleteCollection() + { + var response = await Marketplace.DeleteCollection(bearerToken, collectionToDelete); + Debug.Log(response); + } + + /// + /// Creates a marketplace + /// + public async void CreateMarketplace() + { + var data = await Marketplace.CreateMarketplace(bearerToken, marketplaceName, marketplaceDescription, marketplaceWhitelisting); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Deletes a marketplace that isn't on chain yet + /// + public async void DeleteMarketplace() + { + var response = await Marketplace.DeleteMarketplace(bearerToken,marketplaceToDelete); + Debug.Log(response); + } + + /// + /// Approves marketplace to list tokens + /// + public async void ApproveListNftsToMarketplace() + { + var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",true); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Revokes approval from marketplace to list tokens + /// + public async void RevokeApprovalListNftsToMarketplace() + { + var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",false); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Lists NFTs to the marketplace + /// + public async void ListNftsToMarketplace() + { + var data = await Marketplace.ListNftsToMarketplace(marketplaceContractToListTo,collectionContractToList, tokenIdToList, weiPriceToList); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } #endregion } From e39a565004ff2c0260570ddf97fbc8b9e2a12afb Mon Sep 17 00:00:00 2001 From: Robel Getnet Geremew Date: Thu, 23 May 2024 10:05:03 +0300 Subject: [PATCH 65/97] Common RPC Abstraction (#967) * IRpcProvider implemented for MM and HP * get txn now polls for MM and HP * revert RpcClientWrapper removal * WC abstraction complete and added Disconnect to IWalletProvider * Docs added * fixed tests compile error * small typo * unity tests fix and WC for WebGL fix --- .../Tests/Runtime/SampleTestsBase.cs | 3 +- .../Runtime/StubWalletConnectProvider.cs | 47 +++++++++-- .../StubWalletConnectProviderConfig.cs | 2 + .../chainsafe.web3-unity.RuntimeTests.asmdef | 4 +- .../HyperPlayExtensions.cs | 7 +- .../HyperPlayProvider.cs | 24 ++++-- .../HyperPlaySigner.cs | 15 ++-- .../HyperPlayTransactionExecutor.cs | 14 ++-- .../IHyperPlayProvider.cs | 26 ------- .../MetaMaskProvider.cs | 39 ++++++---- .../MetaMaskProviderExtensions.cs | 7 +- .../IMetaMaskProvider.cs | 25 ------ .../MetaMaskSigner.cs | 20 ++--- .../MetaMaskTransactionExecutor.cs | 14 ++-- .../IWalletConnectProvider.cs | 31 -------- .../Methods/EthSignTypedData.cs | 14 ++-- .../WalletConnectExtensions.cs | 12 +-- .../WalletConnectProvider.cs | 78 ++++++++++++++++--- .../WalletConnectSigner.cs | 14 ++-- .../WalletConnectTransactionExecutor.cs | 17 ++-- .../Web3/Evm/Wallet/IWalletProvider.cs | 23 ++++++ .../Web3/Evm/Wallet/WalletProvider.cs | 51 ++++++++++++ 22 files changed, 295 insertions(+), 192 deletions(-) delete mode 100644 src/ChainSafe.Gaming.HyperPlay/IHyperPlayProvider.cs delete mode 100644 src/ChainSafe.Gaming.MetaMask/IMetaMaskProvider.cs delete mode 100644 src/ChainSafe.Gaming.WalletConnect/IWalletConnectProvider.cs create mode 100644 src/ChainSafe.Gaming/Web3/Evm/Wallet/IWalletProvider.cs create mode 100644 src/ChainSafe.Gaming/Web3/Evm/Wallet/WalletProvider.cs diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs index 93ecaa304..101235e55 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs @@ -7,6 +7,7 @@ using ChainSafe.Gaming.WalletConnect; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Evm.Wallet; using ChainSafe.Gaming.Web3.Unity; using ChainSafe.GamingSdk.Gelato; using Microsoft.Extensions.DependencyInjection; @@ -60,7 +61,7 @@ internal static ValueTask BuildTestWeb3(Web3Builder.ConfigureServicesDeleg services.UseRpcProvider(); services.AddSingleton(new StubWalletConnectProviderConfig()); // can be replaced - services.AddSingleton(); + services.AddSingleton(); services.UseWalletConnectSigner(); services.UseWalletConnectTransactionExecutor(); diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProvider.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProvider.cs index 35f43e9b2..658a83386 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProvider.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProvider.cs @@ -1,31 +1,62 @@ -using System.Threading.Tasks; -using ChainSafe.Gaming.WalletConnect; +using System; +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.Wallet; +using Nethereum.JsonRpc.Client.RpcMessages; +using Newtonsoft.Json; namespace Tests.Runtime { - public class StubWalletConnectProvider : IWalletConnectProvider + public class StubWalletConnectProvider : WalletProvider { private readonly StubWalletConnectProviderConfig config; + private readonly IChainConfig chainConfig; + private readonly IHttpClient httpClient; - public StubWalletConnectProvider(StubWalletConnectProviderConfig config) + public StubWalletConnectProvider(StubWalletConnectProviderConfig config, IHttpClient httpClient, IChainConfig chainConfig, ChainRegistryProvider chainRegistryProvider) : base(chainRegistryProvider: chainRegistryProvider) { this.config = config; + this.chainConfig = chainConfig; + this.httpClient = httpClient; } - public Task Connect() + public override Task Connect() { return Task.FromResult(config.WalletAddress); } - public Task Disconnect() + public override Task Disconnect() { // empty return Task.CompletedTask; } - public Task Request(T data, long? expiry = null) + public override Task Perform(string method, params object[] parameters) { - return Task.FromResult(config.StubResponse); + switch (method) + { + case "personal_sign": case "eth_signTypedData": case "eth_sendTransaction": + return Task.FromResult((T)Convert.ChangeType(config.StubResponse, typeof(T))); + default: + return Request(method, parameters); + } + } + + // Direct RPC request via WalletConnect RPC url. + private async Task Request(string method, params object[] parameters) + { + // Using WalletConnect Blockchain API: https://docs.walletconnect.com/cloud/blockchain-api + var url = $"https://rpc.walletconnect.com/v1?chainId=eip155:{chainConfig.ChainId}&projectId={config.ProjectId}"; + + string body = JsonConvert.SerializeObject(new RpcRequestMessage(Guid.NewGuid().ToString(), method, parameters)); + + var rawResult = await httpClient.PostRaw(url, body, "application/json"); + + RpcResponseMessage response = JsonConvert.DeserializeObject(rawResult.Response); + + return response.Result.ToObject(); } } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProviderConfig.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProviderConfig.cs index 4c95a2101..99425a367 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProviderConfig.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/StubWalletConnectProviderConfig.cs @@ -3,7 +3,9 @@ public class StubWalletConnectProviderConfig { public const string DefaultWalletAddress = "0xD5c8010ef6dff4c83B19C511221A7F8d1e5cFF44"; + public const string DefaultProjectId = "f4bff60eb260841f46b1c77588cd8acb"; + public string ProjectId { get; set; } = DefaultProjectId; public string WalletAddress { get; set; } = DefaultWalletAddress; public string StubResponse { get; set; } } diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef b/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef index a631ee9f2..959c0e10a 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef @@ -13,11 +13,13 @@ "precompiledReferences": [ "nunit.framework.dll", "Nethereum.Hex.dll", + "Nethereum.JsonRpc.Client.dll", "Microsoft.Extensions.DependencyInjection.Abstractions.dll", "ChainSafe.Gaming.dll", "ChainSafe.Gaming.Unity.dll", "ChainSafe.Gaming.Gelato.dll", - "ChainSafe.Gaming.WalletConnect.dll" + "ChainSafe.Gaming.WalletConnect.dll", + "Newtonsoft.Json.dll" ], "autoReferenced": false, "defineConstraints": [ diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs index a09090073..b71c3671d 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs @@ -2,6 +2,7 @@ using ChainSafe.Gaming.Web3.Build; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Evm.Wallet; using Microsoft.Extensions.DependencyInjection; namespace ChainSafe.Gaming.HyperPlay @@ -9,15 +10,15 @@ namespace ChainSafe.Gaming.HyperPlay public static class HyperPlayExtensions { /// - /// Binds implementation of as to Web3 as a service. + /// Binds implementation of as to Web3 as a service. /// /// Service collection to bind implementations to. /// The same service collection that was passed in. This enables fluent style. public static IWeb3ServiceCollection UseHyperPlay(this IWeb3ServiceCollection collection) { - collection.AssertServiceNotBound(); + collection.AssertServiceNotBound(); - collection.AddSingleton(); + collection.AddSingleton(); return collection; } diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs index 3dfd09431..8cb8186ad 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs @@ -1,9 +1,11 @@ using System.Text; using System.Threading.Tasks; +using ChainSafe.Gaming.Evm; using ChainSafe.Gaming.HyperPlay.Dto; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Core.Debug; using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.Wallet; using Nethereum.Signer; using Nethereum.Util; using Newtonsoft.Json; @@ -12,9 +14,9 @@ namespace ChainSafe.Gaming.HyperPlay { /// - /// Concrete implementation of . + /// Concrete implementation of . /// - public class HyperPlayProvider : IHyperPlayProvider + public class HyperPlayProvider : WalletProvider { private readonly IHttpClient httpClient; private readonly IChainConfig chainConfig; @@ -24,7 +26,9 @@ public class HyperPlayProvider : IHyperPlayProvider /// /// HttpClient to make requests. /// ChainConfig to fetch chain data. - public HyperPlayProvider(IHttpClient httpClient, IChainConfig chainConfig) + /// Injected . + public HyperPlayProvider(IHttpClient httpClient, IChainConfig chainConfig, ChainRegistryProvider chainRegistryProvider) + : base(chainRegistryProvider: chainRegistryProvider) { this.httpClient = httpClient; this.chainConfig = chainConfig; @@ -34,15 +38,15 @@ public HyperPlayProvider(IHttpClient httpClient, IChainConfig chainConfig) /// Connect to wallet via HyperPlay desktop client and return the account address. /// /// Signed-in account public address. - public async Task Connect() + public override async Task Connect() { - string[] accounts = await Request("eth_accounts"); + string[] accounts = await Perform("eth_accounts"); string account = accounts[0].AssertIsPublicAddress(nameof(account)); string message = "Sign-in with Ethereum"; - string hash = await Request("personal_sign", message, account); + string hash = await Perform("personal_sign", message, account); // Verify signature. // TODO: Make into a Util Method. @@ -62,6 +66,12 @@ public async Task Connect() return account; } + public override Task Disconnect() + { + // currently HyperPlay doesn't support disconnecting. + return Task.CompletedTask; + } + /// /// Make RPC request to HyperPlay desktop client. /// @@ -69,7 +79,7 @@ public async Task Connect() /// RPC request parameters. /// RPC request response type. /// RPC request Response. - public async Task Request(string method, params object[] parameters) + public override async Task Perform(string method, params object[] parameters) { string body = JsonConvert.SerializeObject(new HyperPlayRequest { diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs index c43e2206d..fed910337 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs @@ -2,6 +2,7 @@ using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Evm.Wallet; namespace ChainSafe.Gaming.HyperPlay { @@ -10,22 +11,22 @@ namespace ChainSafe.Gaming.HyperPlay /// public class HyperPlaySigner : ISigner, ILifecycleParticipant { - private readonly IHyperPlayProvider hyperPlayProvider; + private readonly IWalletProvider walletProvider; /// /// Initializes a new instance of the class. /// - /// HyperPlay connection provider to connect and make RPC requests. - public HyperPlaySigner(IHyperPlayProvider hyperPlayProvider) + /// HyperPlay connection provider to connect and make RPC requests. + public HyperPlaySigner(IWalletProvider walletProvider) { - this.hyperPlayProvider = hyperPlayProvider; + this.walletProvider = walletProvider; } public string PublicAddress { get; private set; } public async ValueTask WillStartAsync() { - PublicAddress = await hyperPlayProvider.Connect(); + PublicAddress = await walletProvider.Connect(); } /// @@ -35,7 +36,7 @@ public async ValueTask WillStartAsync() /// Signed message hash. public Task SignMessage(string message) { - return hyperPlayProvider.Request("personal_sign", message, PublicAddress); + return walletProvider.Perform("personal_sign", message, PublicAddress); } /// @@ -49,7 +50,7 @@ public Task SignTypedData(SerializableDomain domain, TStruc { SerializableTypedData typedData = new SerializableTypedData(domain, message); - return hyperPlayProvider.Request("eth_signTypedData_v3", PublicAddress, typedData); + return walletProvider.Perform("eth_signTypedData_v3", PublicAddress, typedData); } public ValueTask WillStopAsync() diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayTransactionExecutor.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayTransactionExecutor.cs index d6a2fbcf2..621e3c7a1 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlayTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayTransactionExecutor.cs @@ -1,9 +1,11 @@ using System.Text.RegularExpressions; using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Evm.Transactions; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Evm.Wallet; using Nethereum.RPC.Eth.DTOs; namespace ChainSafe.Gaming.HyperPlay @@ -13,17 +15,17 @@ namespace ChainSafe.Gaming.HyperPlay /// public class HyperPlayTransactionExecutor : ITransactionExecutor { - private readonly IHyperPlayProvider hyperPlayProvider; + private readonly IWalletProvider walletProvider; private readonly ISigner signer; /// /// Initializes a new instance of the class. /// - /// HyperPlay provider for making RPC requests. + /// HyperPlay provider for making RPC requests. /// Signer for fetching public address. - public HyperPlayTransactionExecutor(IHyperPlayProvider hyperPlayProvider, ISigner signer) + public HyperPlayTransactionExecutor(IWalletProvider walletProvider, ISigner signer) { - this.hyperPlayProvider = hyperPlayProvider; + this.walletProvider = walletProvider; this.signer = signer; } @@ -53,7 +55,7 @@ public async Task SendTransaction(TransactionRequest transa AccessList = transaction.AccessList, }; - string hash = await hyperPlayProvider.Request("eth_sendTransaction", transactionInput); + string hash = await walletProvider.Perform("eth_sendTransaction", transactionInput); string hashPattern = @"^0x[a-fA-F0-9]{64}$"; if (!Regex.IsMatch(hash, hashPattern)) @@ -61,7 +63,7 @@ public async Task SendTransaction(TransactionRequest transa throw new Web3Exception($"incorrect txn response format {hash}"); } - return await hyperPlayProvider.Request("eth_getTransactionByHash", hash); + return await walletProvider.GetTransaction(hash); } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.HyperPlay/IHyperPlayProvider.cs b/src/ChainSafe.Gaming.HyperPlay/IHyperPlayProvider.cs deleted file mode 100644 index ad2da536e..000000000 --- a/src/ChainSafe.Gaming.HyperPlay/IHyperPlayProvider.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.Threading.Tasks; - -namespace ChainSafe.Gaming.HyperPlay -{ - /// - /// HyperPlay provider for connecting wallet and making RPC requests via HyperPlay desktop client and. - /// - public interface IHyperPlayProvider - { - /// - /// Connect to a wallet via HyperPlay desktop client. - /// - /// Connected public address. - public Task Connect(); - - /// - /// Make RPC request to HyperPlay desktop client. - /// This prompts user to approve a request on HyperPlay desktop client. - /// - /// RPC method name. - /// RPC request parameters. - /// Type of request's response. - /// RPC request's Response. - public Task Request(string method, params object[] parameters); - } -} \ No newline at end of file diff --git a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs index 05898326c..e07321c79 100644 --- a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs +++ b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs @@ -1,8 +1,10 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.Evm; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Analytics; using ChainSafe.Gaming.Web3.Core.Logout; using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.Wallet; using UnityEngine; using Object = UnityEngine.Object; @@ -11,7 +13,7 @@ namespace ChainSafe.Gaming.MetaMask.Unity /// /// Concrete implementation of . /// - public class MetaMaskProvider : IMetaMaskProvider, ILogoutHandler + public class MetaMaskProvider : WalletProvider, ILogoutHandler { private readonly ILogWriter logWriter; @@ -24,7 +26,13 @@ public class MetaMaskProvider : IMetaMaskProvider, ILogoutHandler /// Initializes a new instance of the class. /// /// Common Logger used for logging messages and errors. - public MetaMaskProvider(ILogWriter logWriter, IAnalyticsClient analyticsClient, IChainConfig chainConfig, IProjectConfig projectConfig) + /// Injected . + /// Injected . + /// Injected . + /// Injected . + public MetaMaskProvider(ILogWriter logWriter, IAnalyticsClient analyticsClient, IChainConfig chainConfig, IProjectConfig projectConfig, ChainRegistryProvider chainRegistryProvider) + : base( + chainRegistryProvider: chainRegistryProvider) { this.logWriter = logWriter; this.chainConfig = chainConfig; @@ -53,12 +61,23 @@ public MetaMaskProvider(ILogWriter logWriter, IAnalyticsClient analyticsClient, metaMaskController.Initialize(this.logWriter); } + public override Task Disconnect() + { + // Currently no disconnect logic for MetaMask lib on NEthereum. + return Task.CompletedTask; + } + + public override async Task Perform(string method, params object[] parameters) + { + return await metaMaskController.Request(method, parameters); + } + /// - /// Implementation of . + /// Implementation of . /// Called to connect to MetaMask. /// /// Connected account. - public async Task Connect() + public override async Task Connect() { logWriter.Log("Connecting from Metamask..."); @@ -76,18 +95,6 @@ public async Task Connect() return await metaMaskController.Connect(); } - /// - /// Make JsonRPC requests using MetaMask. - /// - /// JsonRPC method name. - /// JsonRPC request parameters. - /// Type of response result. - /// Response result. - public async Task Request(string method, params object[] parameters) - { - return await metaMaskController.Request(method, parameters); - } - public Task OnLogout() { Object.Destroy(metaMaskController.gameObject); diff --git a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs index 0143af1ad..1f67696b9 100644 --- a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs +++ b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProviderExtensions.cs @@ -1,5 +1,6 @@ using ChainSafe.Gaming.Web3.Build; using ChainSafe.Gaming.Web3.Core.Logout; +using ChainSafe.Gaming.Web3.Evm.Wallet; using Microsoft.Extensions.DependencyInjection; namespace ChainSafe.Gaming.MetaMask.Unity @@ -10,16 +11,16 @@ namespace ChainSafe.Gaming.MetaMask.Unity public static class MetaMaskProviderExtensions { /// - /// Binds implementation of as to Web3 as a service. + /// Binds implementation of as to Web3 as a service. /// /// Service collection to bind implementations to. /// The same service collection that was passed in. This enables fluent style. public static IWeb3ServiceCollection UseMetaMask(this IWeb3ServiceCollection collection) { - collection.AssertServiceNotBound(); + collection.AssertServiceNotBound(); // wallet - collection.AddSingleton(); + collection.AddSingleton(); return collection; } diff --git a/src/ChainSafe.Gaming.MetaMask/IMetaMaskProvider.cs b/src/ChainSafe.Gaming.MetaMask/IMetaMaskProvider.cs deleted file mode 100644 index ae2979936..000000000 --- a/src/ChainSafe.Gaming.MetaMask/IMetaMaskProvider.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System.Threading.Tasks; - -namespace ChainSafe.Gaming.MetaMask -{ - /// - /// Connect and disconnect to Metamask and make a Json RPC request. - /// - public interface IMetaMaskProvider - { - /// - /// Connects to Metamask. - /// - /// Connected address. - public Task Connect(); - - /// - /// Make JsonRPC request using Metamask. - /// - /// JsonRPC method name. - /// JsonRPC request parameters. - /// Type of response's result. - /// Response's result. - public Task Request(string method, params object[] parameters); - } -} \ No newline at end of file diff --git a/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs b/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs index da5726cc3..62565eadb 100644 --- a/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs +++ b/src/ChainSafe.Gaming.MetaMask/MetaMaskSigner.cs @@ -3,6 +3,7 @@ using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.Wallet; namespace ChainSafe.Gaming.MetaMask { @@ -11,22 +12,17 @@ namespace ChainSafe.Gaming.MetaMask /// public class MetaMaskSigner : ISigner, ILifecycleParticipant { - private readonly IMetaMaskProvider metaMaskProvider; + private readonly IWalletProvider walletProvider; /// /// Initializes a new instance of the class. /// - /// Metamask provider that connects to Metamask and makes JsonRPC requests. - public MetaMaskSigner(IMetaMaskProvider metaMaskProvider) + /// Metamask provider that connects to Metamask and makes JsonRPC requests. + public MetaMaskSigner(IWalletProvider walletProvider) { - this.metaMaskProvider = metaMaskProvider; + this.walletProvider = walletProvider; } - /// - /// Implementation of . - /// Get public address of connected client. - /// - /// Wallet address of connected client. public string PublicAddress { get; private set; } /// @@ -36,7 +32,7 @@ public MetaMaskSigner(IMetaMaskProvider metaMaskProvider) /// async awaitable task. public async ValueTask WillStartAsync() { - PublicAddress = await metaMaskProvider.Connect(); + PublicAddress = await walletProvider.Connect(); } /// @@ -48,7 +44,7 @@ public async ValueTask WillStartAsync() /// Hash response of a successfully signed message. public Task SignMessage(string message) { - return metaMaskProvider.Request("personal_sign", message, PublicAddress); + return walletProvider.Perform("personal_sign", message, PublicAddress); } /// @@ -64,7 +60,7 @@ public Task SignTypedData(SerializableDomain domain, TStruc SerializableTypedData typedData = new SerializableTypedData(domain, message); // MetaMask doesn't work with regular eth_signTypedData method, has to be eth_signTypedData_v4. - return metaMaskProvider.Request("eth_signTypedData_v4", typedData, PublicAddress); + return walletProvider.Perform("eth_signTypedData_v4", typedData, PublicAddress); } /// diff --git a/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs b/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs index 3caff178c..ec3ed050d 100644 --- a/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.MetaMask/MetaMaskTransactionExecutor.cs @@ -1,10 +1,12 @@ using System.Text.RegularExpressions; using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Evm.Transactions; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Core.Evm; using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.Wallet; using Nethereum.RPC.Eth.DTOs; namespace ChainSafe.Gaming.MetaMask @@ -16,7 +18,7 @@ public class MetaMaskTransactionExecutor : ITransactionExecutor { private readonly ILogWriter logWriter; - private readonly IMetaMaskProvider metaMaskProvider; + private readonly IWalletProvider walletProvider; private readonly ISigner signer; @@ -24,13 +26,13 @@ public class MetaMaskTransactionExecutor : ITransactionExecutor /// Initializes a new instance of the class. /// /// Log Writer used for logging messages and errors. - /// Metamask provider that connects to Metamask and makes JsonRPC requests. + /// Metamask provider that connects to Metamask and makes JsonRPC requests. /// Signer for fetching address. - public MetaMaskTransactionExecutor(ILogWriter logWriter, IMetaMaskProvider metaMaskProvider, ISigner signer) + public MetaMaskTransactionExecutor(ILogWriter logWriter, IWalletProvider walletProvider, ISigner signer) { this.logWriter = logWriter; - this.metaMaskProvider = metaMaskProvider; + this.walletProvider = walletProvider; this.signer = signer; } @@ -62,7 +64,7 @@ public async Task SendTransaction(TransactionRequest transa AccessList = transaction.AccessList, }; - string hash = await metaMaskProvider.Request("eth_sendTransaction", transactionInput); + string hash = await walletProvider.Perform("eth_sendTransaction", transactionInput); string hashPattern = @"^0x[a-fA-F0-9]{64}$"; if (!Regex.IsMatch(hash, hashPattern)) @@ -72,7 +74,7 @@ public async Task SendTransaction(TransactionRequest transa logWriter.Log($"Transaction executed with hash {hash}"); - return await metaMaskProvider.Request("eth_getTransactionByHash", hash); + return await walletProvider.GetTransaction(hash); } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.WalletConnect/IWalletConnectProvider.cs b/src/ChainSafe.Gaming.WalletConnect/IWalletConnectProvider.cs deleted file mode 100644 index 0c3b81139..000000000 --- a/src/ChainSafe.Gaming.WalletConnect/IWalletConnectProvider.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System.Threading.Tasks; - -namespace ChainSafe.Gaming.WalletConnect -{ - /// - /// Interface that represents the provider for the WalletConnect features. - /// - public interface IWalletConnectProvider - { - /// - /// Connect WalletConnect session. - /// - /// Public address of the connected user. - Task Connect(); - - /// - /// Disconnect WalletConnect session. - /// - /// A representing the asynchronous operation. - Task Disconnect(); - - /// - /// Make a request to the WalletConnect API. - /// - /// Request data. - /// Expiry in milliseconds. - /// Type of the request. - /// Response hash of the operation. - Task Request(T data, long? expiry = null); - } -} \ No newline at end of file diff --git a/src/ChainSafe.Gaming.WalletConnect/Methods/EthSignTypedData.cs b/src/ChainSafe.Gaming.WalletConnect/Methods/EthSignTypedData.cs index e290fe4f8..e2da8bf78 100644 --- a/src/ChainSafe.Gaming.WalletConnect/Methods/EthSignTypedData.cs +++ b/src/ChainSafe.Gaming.WalletConnect/Methods/EthSignTypedData.cs @@ -8,28 +8,26 @@ namespace ChainSafe.Gaming.WalletConnect.Methods /// /// Sign Typed Data Wallet Connect Json RPC method params. /// - /// Type of data to be signed. [RpcMethod("eth_signTypedData")] [RpcRequestOptions(Clock.ONE_MINUTE, 99998)] - public class EthSignTypedData : List + public class EthSignTypedData : List { /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// Public address of signer. - /// Serializable domain for Json RPC. - /// Typed Data to be signed. - public EthSignTypedData(string address, SerializableDomain domain, TStruct message) + /// SerializableTypedData. + public EthSignTypedData(string address, object typedData) : base(new object[] { address, - new SerializableTypedData(domain, message), + typedData, }) { } /// - /// Initializes a new instance of the class used by json.net. + /// Initializes a new instance of the class used by json.net. /// Preserved for Unity using ChainSafe.Gaming.Unity/link.xml. /// public EthSignTypedData() diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectExtensions.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectExtensions.cs index bf3ce1036..ea5b9c93f 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectExtensions.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectExtensions.cs @@ -1,4 +1,5 @@ using System.Linq; +using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.WalletConnect.Storage; using ChainSafe.Gaming.WalletConnect.Wallets; @@ -6,6 +7,7 @@ using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; using ChainSafe.Gaming.Web3.Core.Logout; +using ChainSafe.Gaming.Web3.Evm.Wallet; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; @@ -29,12 +31,12 @@ public static IWeb3ServiceCollection ConfigureWalletConnect(this IWeb3ServiceCol /// The same service collection that was passed in. This enables fluent style. public static IWeb3ServiceCollection UseWalletConnect(this IWeb3ServiceCollection services) { - services.AssertServiceNotBound(); + services.AssertServiceNotBound(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); - services.AddSingleton(); + services.AddSingleton(); return services; } @@ -45,7 +47,7 @@ public static IWeb3ServiceCollection UseWalletConnect(this IWeb3ServiceCollectio /// The same service collection that was passed in. This enables fluent style. public static IWeb3ServiceCollection UseWalletConnect(this IWeb3ServiceCollection services, IWalletConnectConfig config) { - services.AssertServiceNotBound(); + services.AssertServiceNotBound(); services.ConfigureWalletConnect(config); services.UseWalletConnect(); @@ -124,12 +126,12 @@ public static IConnectionHelper ConnectionHelper(this WalletConnectSubCategory w /// private static void EnsureProviderBoundFirst(IWeb3ServiceCollection services) { - if (services.Any(descriptor => descriptor.ServiceType == typeof(IWalletConnectProvider))) + if (services.Any(descriptor => descriptor.ServiceType == typeof(IWalletProvider))) { return; } - throw new Web3BuildException($"You should bind {nameof(IWalletConnectProvider)} first."); + throw new Web3BuildException($"You should bind {nameof(IWalletProvider)} first."); } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs index 3169a029b..121dc4174 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs @@ -1,7 +1,9 @@ using System; using System.Linq; using System.Threading.Tasks; +using ChainSafe.Gaming.Evm; using ChainSafe.Gaming.WalletConnect.Connection; +using ChainSafe.Gaming.WalletConnect.Methods; using ChainSafe.Gaming.WalletConnect.Models; using ChainSafe.Gaming.WalletConnect.Storage; using ChainSafe.Gaming.WalletConnect.Wallets; @@ -10,6 +12,9 @@ using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Debug; using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.Wallet; +using Nethereum.JsonRpc.Client.RpcMessages; +using Newtonsoft.Json; using WalletConnectSharp.Common.Logging; using WalletConnectSharp.Common.Model.Errors; using WalletConnectSharp.Common.Utils; @@ -26,7 +31,7 @@ namespace ChainSafe.Gaming.WalletConnect /// /// Default implementation of . /// - public class WalletConnectProvider : ILifecycleParticipant, IWalletConnectProvider, IConnectionHelper + public class WalletConnectProvider : WalletProvider, ILifecycleParticipant, IConnectionHelper { private readonly ILogWriter logWriter; private readonly IWalletConnectConfig config; @@ -35,6 +40,7 @@ public class WalletConnectProvider : ILifecycleParticipant, IWalletConnectProvid private readonly IOperatingSystemMediator osMediator; private readonly IWalletRegistry walletRegistry; private readonly RedirectionHandler redirection; + private readonly IHttpClient httpClient; private WalletConnectCore core; private WalletConnectSignClient signClient; @@ -53,7 +59,10 @@ public WalletConnectProvider( IOperatingSystemMediator osMediator, IWalletRegistry walletRegistry, RedirectionHandler redirection, - IAnalyticsClient analyticsClient) + IHttpClient httpClient, + IAnalyticsClient analyticsClient, + ChainRegistryProvider chainRegistryProvider) + : base(chainRegistryProvider: chainRegistryProvider) { this.analyticsClient = analyticsClient; this.redirection = redirection; @@ -63,6 +72,7 @@ public WalletConnectProvider( this.storage = storage; this.config = config; this.logWriter = logWriter; + this.httpClient = httpClient; } public bool StoredSessionAvailable => localData.SessionTopic != null; @@ -123,11 +133,12 @@ async ValueTask ILifecycleParticipant.WillStartAsync() Events = new[] { "chainChanged", "accountsChanged" }, Methods = new[] { - "eth_sendTransaction", - "eth_signTransaction", "eth_sign", "personal_sign", "eth_signTypedData", + "eth_signTransaction", + "eth_sendTransaction", + "eth_getTransactionByHash", }, } }, @@ -153,7 +164,7 @@ async ValueTask ILifecycleParticipant.WillStopAsync() core?.Dispose(); } - public async Task Connect() + public override async Task Connect() { if (connected) { @@ -210,7 +221,7 @@ public async Task Connect() } } - public async Task Disconnect() + public override async Task Disconnect() { if (!connected) { @@ -325,7 +336,7 @@ private async Task RenewSession() WCLogger.Log("Renewed session successfully."); } - public async Task Request(T data, long? expiry = null) + public override async Task Perform(string method, params object[] parameters) { if (!connected) { @@ -345,13 +356,12 @@ public async Task Request(T data, long? expiry = null) } } - var method = RpcMethodAttribute.MethodForType(); var methodRegistered = session.Namespaces.Any(n => n.Value.Methods.Contains(method)); if (!methodRegistered) { throw new WalletConnectException( - "The method provided is not supported. " + + $"RPC method {method} is not supported. " + $"If you add a new method you have to update {nameof(WalletConnectProvider)} code to reflect those changes. " + "Contact ChainSafe if you think a specific method should be included in the SDK."); } @@ -365,7 +375,7 @@ public async Task Request(T data, long? expiry = null) var chainId = GetChainId(); - return await signClient.Request(sessionTopic, data, chainId, expiry); + return await WalletConnectRequest(sessionTopic, method, chainId, parameters); void OnPublishedMessage(object sender, PublishParams args) { @@ -444,5 +454,53 @@ private string GetFullAddress() return defaultNamespace.Accounts[0]; } + + private async Task WalletConnectRequest(string topic, string method, string chainId, params object[] parameters) + { + // Helper method to make a request using WalletConnectSignClient. + async Task MakeRequest() + { + var data = (TRequest)Activator.CreateInstance(typeof(TRequest), parameters); + return await signClient.Request(topic, data, chainId); + } + + switch (method) + { + case "personal_sign": + return await MakeRequest(); + case "eth_signTypedData": + return await MakeRequest(); + case "eth_signTransaction": + return await MakeRequest(); + case "eth_sendTransaction": + return await MakeRequest(); + default: + try + { + return await Request(method, parameters); + } + catch (Exception e) + { + throw new WalletConnectException($"{method} RPC method currently not implemented.", e); + } + } + } + + // Direct RPC request via WalletConnect RPC url. + private async Task Request(string method, params object[] parameters) + { + string chain = session.Namespaces.First().Value.Chains[0]; + + // Using WalletConnect Blockchain API: https://docs.walletconnect.com/cloud/blockchain-api + var url = $"https://rpc.walletconnect.com/v1?chainId={chain}&projectId={config.ProjectId}"; + + string body = JsonConvert.SerializeObject(new RpcRequestMessage(Guid.NewGuid().ToString(), method, parameters)); + + var rawResult = await httpClient.PostRaw(url, body, "application/json"); + + RpcResponseMessage response = JsonConvert.DeserializeObject(rawResult.Response); + + return response.Result.ToObject(); + } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs index faefa9eba..06c8d79c0 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectSigner.cs @@ -1,10 +1,10 @@ using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Signers; -using ChainSafe.Gaming.WalletConnect.Methods; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; using ChainSafe.Gaming.Web3.Core.Logout; +using ChainSafe.Gaming.Web3.Evm.Wallet; using WalletConnectSharp.Common.Logging; namespace ChainSafe.Gaming.WalletConnect @@ -14,9 +14,9 @@ namespace ChainSafe.Gaming.WalletConnect /// public class WalletConnectSigner : ISigner, ILifecycleParticipant, ILogoutHandler { - private readonly IWalletConnectProvider provider; + private readonly IWalletProvider provider; - public WalletConnectSigner(IWalletConnectProvider provider) + public WalletConnectSigner(IWalletProvider provider) { this.provider = provider; } @@ -34,8 +34,7 @@ public async ValueTask WillStartAsync() public async Task SignMessage(string message) { - var requestData = new EthSignMessage(message, PublicAddress); - var hash = await provider.Request(requestData); + var hash = await provider.Perform("personal_sign", message, PublicAddress); if (!ValidateSignResponse(hash)) { @@ -48,8 +47,9 @@ public async Task SignMessage(string message) public async Task SignTypedData(SerializableDomain domain, TStructType message) { - var requestData = new EthSignTypedData(PublicAddress, domain, message); - var hash = await provider.Request(requestData); + SerializableTypedData typedData = new SerializableTypedData(domain, message); + + var hash = await provider.Perform("eth_signTypedData", PublicAddress, typedData); if (!ValidateSignResponse(hash)) { diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs index 0cfcaf583..6ccb4d53f 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectTransactionExecutor.cs @@ -1,13 +1,12 @@ -using System; using System.Text.RegularExpressions; using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Evm.Transactions; -using ChainSafe.Gaming.WalletConnect.Methods; using ChainSafe.Gaming.WalletConnect.Models; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Evm.Wallet; using WalletConnectSharp.Common.Logging; namespace ChainSafe.Gaming.WalletConnect @@ -17,13 +16,11 @@ namespace ChainSafe.Gaming.WalletConnect /// public class WalletConnectTransactionExecutor : ITransactionExecutor { - private readonly IRpcProvider rpcProvider; - private readonly IWalletConnectProvider provider; + private readonly IWalletProvider provider; private readonly ISigner signer; - public WalletConnectTransactionExecutor(IWalletConnectProvider provider, IRpcProvider rpcProvider, ISigner signer) + public WalletConnectTransactionExecutor(IWalletProvider provider, ISigner signer) { - this.rpcProvider = rpcProvider; this.provider = provider; this.signer = signer; } @@ -35,7 +32,7 @@ public async Task SendTransaction(TransactionRequest transa transaction.From = signer.PublicAddress; } - var requestData = new EthSendTransaction(new TransactionModel + var requestData = new TransactionModel { From = transaction.From, To = transaction.To, @@ -44,9 +41,9 @@ public async Task SendTransaction(TransactionRequest transa Value = transaction.Value?.HexValue, Data = transaction.Data ?? "0x", Nonce = transaction.Nonce?.HexValue, - }); + }; - var hash = await provider.Request(requestData); + var hash = await provider.Perform("eth_sendTransaction", requestData); if (!ValidateResponseHash(hash)) { throw new Web3Exception($"Incorrect transaction response format: \"{hash}\"."); @@ -54,7 +51,7 @@ public async Task SendTransaction(TransactionRequest transa WCLogger.Log($"Transaction executed successfully. Hash: {hash}."); - return await rpcProvider.GetTransaction(hash); + return await provider.GetTransaction(hash); bool ValidateResponseHash(string hash) { diff --git a/src/ChainSafe.Gaming/Web3/Evm/Wallet/IWalletProvider.cs b/src/ChainSafe.Gaming/Web3/Evm/Wallet/IWalletProvider.cs new file mode 100644 index 000000000..28f97190a --- /dev/null +++ b/src/ChainSafe.Gaming/Web3/Evm/Wallet/IWalletProvider.cs @@ -0,0 +1,23 @@ +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Providers; + +namespace ChainSafe.Gaming.Web3.Evm.Wallet +{ + /// + /// Wallet Connection Provider. + /// + public interface IWalletProvider : IRpcProvider + { + /// + /// Connect to a wallet. + /// + /// Connected address. + Task Connect(); + + /// + /// Disconnect from wallet. + /// + /// Awaitable disconnect Task. + Task Disconnect(); + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming/Web3/Evm/Wallet/WalletProvider.cs b/src/ChainSafe.Gaming/Web3/Evm/Wallet/WalletProvider.cs new file mode 100644 index 000000000..933db7f74 --- /dev/null +++ b/src/ChainSafe.Gaming/Web3/Evm/Wallet/WalletProvider.cs @@ -0,0 +1,51 @@ +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm; +using ChainSafe.Gaming.Evm.Network; +using ChainSafe.Gaming.Evm.Providers; +using Nethereum.Hex.HexTypes; + +namespace ChainSafe.Gaming.Web3.Evm.Wallet +{ + /// + /// Concrete implementation of . + /// + public abstract class WalletProvider : IWalletProvider + { + private readonly ChainRegistryProvider chainRegistryProvider; + + /// + /// Initializes a new instance of the class. + /// + /// Injected . + protected WalletProvider(ChainRegistryProvider chainRegistryProvider) + { + this.chainRegistryProvider = chainRegistryProvider; + } + + public Network LastKnownNetwork { get; private set; } + + async Task IRpcProvider.RefreshNetwork() + { + string chainIdHex = await Perform("eth_chainId"); + + ulong chainId = new HexBigInteger(chainIdHex).ToUlong(); + + if (chainId <= 0) + { + throw new Web3Exception("Couldn't detect network."); + } + + var chain = await chainRegistryProvider.GetChain(chainId); + + return chain != null + ? new Network { Name = chain.Name, ChainId = chainId } + : new Network { Name = "Unknown", ChainId = chainId }; + } + + public abstract Task Connect(); + + public abstract Task Disconnect(); + + public abstract Task Perform(string method, params object[] parameters); + } +} \ No newline at end of file From 0302c45e259fd9b176b36f2ce07e89c18f4c678c Mon Sep 17 00:00:00 2001 From: rob1997 Date: Thu, 23 May 2024 11:52:20 +0000 Subject: [PATCH 66/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Scenes/SampleLogin - Web3Auth.meta | 8 + .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 14848 -> 14848 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51712 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 239616 -> 241152 bytes .../Web3.Unity/Scenes/SampleMain.unity | 3629 +++++++++++++++-- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 4 +- .../Marketplace/MarketplaceCalls.cs | 155 +- 20 files changed, 3423 insertions(+), 373 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity.web3auth/Samples~/Web3.Unity Web3Auth/Scenes/SampleLogin - Web3Auth.meta diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index f717d3cec1900faf0188fe6f7c8bc92de4acf015..c0e2b24e2b06b523a0af16c9b48a499113451da0 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@+abm^PjXfdJ0_8cgLKt@F`M0z;9dI}Cu-p70dO5d7sObv`u5>t}R&CM-RHt$b=%gQqAK*Y((8*&2#@?#jB%{p-Z+D6008IuL_7AQakg`}W@K-Her_YBfQ|0w1+lzZRbd?8PR)jyHJlEH)_ zjUk003CKzWvP~Hbfpj8+8ACFI5s(jpsX%#4AT|K10?8!-RT%(fQ-JIgpgMCfv|vct J>|U~y82|``Ow0fP diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index ab9b72065f81bb9edf3a5ecb48c228c6ed350ab3..b02658a0020493c51f971b104b241f1569ae0837 100644 GIT binary patch delta 235 zcmZqBY0#O_!J<*>ws>QY2B(1TPidL`%zo}2&oY*L&q?{P`3R>ZqeiN+WumE>seyq> zTAER^fsvVkskuQ)N}8p4T2it_l4YtZxpUiPT>v^D3t%*nex`$ zclDK^et?w&T3Q{WzC@@ujxS1w1OO{;3Sc43-Ru45kcb zKx_bnCJbpnXvB~VWE%lR4S?e2Kr#gg(|~Htfn*X;)&fXcGNc04Br+I+Nuc=V$AYpf E0Aa#OKL7v# delta 235 zcmZqBY0#O_!Qvly_UXnR4Nd{Kl|iS>cFTHn)J#rqZ1$Afe1ubyQ6tgPBrPS$GSS4; zFfq|A*~rAiBsIk{#ULp$G0D`xC?zo^+1%XRB4siwcQlJCH~-JcDck`9Rd+>>p1kzK zr!QmsE0r?=93Y515VgsNmkX#Z_l>tyT1;|bTsxt>e3x<@z-!D3TA@BGFd9uz-!SeCn>Gq91JSqZuAM4+{d-`~6IlpbC=cl5O0H_KimjqO00F+GuvQvQS%)!utA!YMp HLs=F8cMnb; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index d63b153764a89b302c79546b22882f420891909b..84b314ce041d6c320b558cb6a204f4a2842fccc3 100644 GIT binary patch delta 242 zcmZp8z|`=7X+j5!%nI=Z8+$?~2&|a(q&2Z>isyEz=jYcPuX(ch!vsGbjZ|aHL{l?U z0|S$^G^1n#BQpb2bAyzWG)wceq-2XE%T%L8L!-pBq{(aMYi{nJdz6bsWT*Dj$q_38 z1d8^r;j>CrcWjGTvgF`*j*!VaRVCxNLn(a0@Wlk O7=lTl_~zYfU6}xEQ%({9 delta 242 zcmZp8z|`=7X+j6f48b`cHui)}5GXo4Q`gy7$a$wmhGBq$tNlZyLH#fIPnY?Dc=H~vnN4Z$`)JSZc9I+xm zfH7?5t9<7KpWU*`eH>GE>Q3IVqD=uR*kcV91gbXN`)RYtjA^^1RZp^>-yFA+kHtTc z!IHs*A&nu0AqmJz1hP#T41shagBe3IgAtGqf~i1xOCUA?sshO+0aY0QWmACc6rehD OFtlJu*}QwLD-!@J%}pNw diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index 73fe4f41a27c2a304a6c9d0b9fd93c8ef400be7e..3c342205072d2cda34e2b1ad9c3543fa9e989d60 100644 GIT binary patch delta 6431 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 au$!v>O{3PsA5I=EMcv`(w9mx$r1`&S`Ua)| diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index eee1bbb741589284675f3aecbaf9e6cff312d3e2..8b1cdead6e707d933383cd344c4601c7cff11788 100644 GIT binary patch delta 235 zcmZp0XmFU&!LnAsZ}-NY2Z93idOH+2n}t1REh;^HU+n0{%{4+=Od6@imWifjrUnKk zX=z5u21aHErsf7IDQTAGX-UZzNtUTbiH1grX-SjMi6pV~$lskk*+euzfaPQc@AM`0 zzCFzfcHfxyNKc+3Izs^}*y{ro1gRGLU$XS>D(^_~P=>{ueZ*Q={Zko?87vtR8B7_> zfY<;CO&HRE(1;-!$Tk9s8UV%3fn*90rUBKO1IZ+ytOby?WJm?7Nn|htlR)v!@-h#Z E0ot-foB#j- delta 235 zcmZp0XmFU&!E$8Xv6<9taA&WqSH}c^`}W^tILctM5iU-&`Z4#iWsFX_A(bWSMAU zYM7X4mTY8VVv?F-nPQNXn3!a0V3d-Wl5B2nZjmzioJbN&?he({lTAbe1Y8u-O+%(F zaabY(m8sEljJM%V|8zA-RvXQ!s?&MV98*@kj9Y0 zkOX8U0@4j@W-$y^3*S$T)`h8uv|D;_DOb< z=Zy8AZ){vHba3(w{(TBiLCFZHAW*fkqy3_2Ew%`4Loq3*&D#XdvHGVn7&BNhBr=#X zm;tc?5SlQg0ih8?GLUTq6g2>fn*+%dAWQ?QH3yPOKv@eQX~~cZRFlYH2quBzn=gy$ GG6MjDBS#GY delta 235 zcmZoLX)u}4!7@X&<?6-*GM+Afv%{>n%Z8J6tyb(^;doMZJ*WUyo~VMt?0VMqe9 z5`k<}216j7$Y92h%wPoMgJ3F9-V%rnfT}=pNkCNwK-m-^I|ZoD91JZOQZ`=}(`5z# D0u4kY diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index a14e8201d70e25020bcd0deffbf1e2d68253fd01..eab39bd4c84bccf5d44b3cc726751677ecda4235 100644 GIT binary patch delta 235 zcmZpOXo#55!P0eS)9Z~rN2CSz{+PhgB>K%`-~Q?oOlo2_n-gS~GHaw7TPB*CnHm_F zq@@`p8yJ}xn3@};q@-DzrzIs@Bw3~!B^nwfrX@|*RXENf;Pj$n@(+aoffN5exu&Na z^`E(kvoQSi(@B#f6gMeA1?6FaK-C=j+AZpi-Mdfn7B=nKtfeH!=AX)7%wWlo$Y9D~ z2E+zHXu^;NghmX>K(-N3)Bq@M4kS~6Fb$~I97rYsWi5cDB||DuO(KIKm;{P%p01I} F3;>z4OKJcB delta 235 zcmZpOXo#55!NPbZXX3`5BhmtCXPqaTr7rbf&S0TgWmcaIDbr-5lwB zuO=(IjcPeF7EF#%+@t^%)MA1P0#%D|$q_f7cc}R2_Sm4F&00!wZ2pN1mJB8gX$&b0 zNkCR2kZsCf2&5Ak%ovgxjDUO)Oa;nY0m zSQ^X9myA0m-AV@Wbr@)aJtgaRF za%byrelh0&i+?JEF@q&TB7-S|84w!)p$S785E?Ng1KCDEQ3Ig3Igm^N!Ze^-b0C=n Zl(hhomJF#tHHi#{U=k?4`TIgn764H;QicEk delta 254 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 I*b_GY1D6@2WdHyG delta 5040 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index c1e9bcef81a6d931c50b38c47fc65301ea2b5d4a..ba4eca62efb61d53536cf162f7094b8e6ea30af4 100644 GIT binary patch delta 3474 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 SnnVUeFbNdj{(UneCkp_1c~9N| delta 247 zcmZqpz}E1AZ9)f2mDRic#-6P`j33wq=BJ%s{OsXkj~U&bR-Q|R&u;JGV4N{mBhk_% zEhWh^(Ztj+G0`m9$i&1XHN`T;ASp31$<)9oB{3!0+}zwEWxLNZMi~y4JDXciPtRG$ z7$C6tL)b%}7AJ?@8Rt*f{$SWN{meSX2?|ir3)WCkkop5|?Mh2t-I!&uNV|S}&3Z;1 z7XL&BO9m5$G=>z0Bp@ph$Tnp#1k#BNW(>&;MnFCYrUK#ujca@etwANHw-hG&M6d zFfd6=GfFlvGBYqWH%LiIvoudjO14O{Of^b0G)hcM+Popag_&h-Z}R2IKY{}U)ZDUu z?_V$O*;aKr?uO--BakDajVq-joiDt=0CMG7SDV8Y)Nr{O`rUphSi7CnE=H?bDn>PfwFte;#@L<#AAHe|vMzP#o zs`nKf7yo|7k=p7}FgYS*mI738qcT(wsM=`LpUcrP2Spv%UynbzStxWLi+>`6C4&h= z8bb<05|EV$WScS=0_j8sGlpaaBOo6HQ-Si9Kx_b11(Hhwsxkn|rU2O~Ky~I|Xu*)O JSw89^GXPCdO&b6J diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index ceaddaa0a7b8fb29c10476a839b96b28999695bd..c533f92037c63633000680e7edf0fdd4b977b72b 100644 GIT binary patch delta 236 zcmZpuXsDRb!4lz`(6X^dLrLJ!$>AUy zEIixyc0AbFva@WmjB$$sRIrmBDhN~^cp`1qYs0cj|1So$-r9V?cnzz6DuXeDB|{>E zDT5gh8vvmRLmChoF(d=oMnF*mptw1ZOaa0)pjvYvnFN%z0FssrsX#S}42ED5D86~O Hr7IHvlgv)Z delta 236 zcmZpuXsDRb!NPH2&CiWJ8cG6tSbj(F_9l94pAp%*R{7=C%}10zvuGq*nxv&9Stgp8 z8YU*1B^#NTn53pyrWhn8CMKC07^NhpB%7O?Tcm8huYQw@#r5=*8I$)I1qeL9Vfy7Q zx2Ny=&b(3q%hZ{ZWsF-Cpn`k#p@Klw5{mt^PUKFRyYIpFsi!v|FkZvzpU7azV8W2b zkiw7zWF-RGrVNHaI+4MQA(_Dl$Opkxpu8mz8vs>-R#{xYU@*pV7r0^B*bsufme#Vcq?LD9E=UV< z3?y_29ZX_sz?cMrA+!Y3LrEYVC*atDK*&o9Z%84^1zRKC-LYhFeKZ*F?GAQy2j?wo33kQWqTx}a{1de5<@1Ra8x|FR{lQ<_wH>0W zV74)t=nZguihJrGkOmny7~~6Xs&+Gj+b@5!AqSuTELwLFXXXDhsV13)zrX#SXqjLJ zElw*Dh5|u@a)7<{JED~i_P<4g>849oALvDnLg8d|TN3p0*8w1tzUp>^lD{C)x^O%Z zZv~~=hQ4_~{7}ScFdM@ajz>FV$jEIav{`KMW;%-?vx(*m<`6ZoUGc|lGs#U8R>KEw z&{h`7e+R~yq0vPCx^q-&mR|9BD61*4cBRlLSKW!4Zw)1REbHQCr~;);cghXYbfqvN zF4IcELtS;3=27Tj7$7tTSsDYHibHKrXe`%RQa1<8N9-&mM~pfuoNQ4Wx`12-W*_Tu z#kM1d-}G3aAdqackL!v9^ms$#peHt-o6yHq$B@I{FisPdOhAj|pMw07vrb99u_}n` zxW1*@WIE@y$Z7o-n$dwlnk}W7&=-@6p&O>seX;DmuzF7&WOg3(w7|4N=nA?jeeu|8 z#3m5%oGA#9nZl5}kXj*h(34sN$_!8l-GN5#56=(uS@NDKd9Bpvkh)|f8nWZn2K6N7 zBL8_%BRSj8u4|2IeK>eW!Y^rXDjT^mI>=~}miao9CH3=<|Kb@}zh04M; zRv))8RE}(oIaa?AJmz&8XBVl{nc#| zXXzS$i6<5U7N27x2YV(4nA?mBIcD4Xx$}O{_+w&|xPlx{e36~s@2P|DqA9MrD$F85 z!0_4(LBR0Y3_-xivKfMa;kOxrfRSx81OWqqN7W(-7^7^4AYkO$3_-xivl)VbfjF&n z2m(fd%@72PfXxsDj6$0s$cbiYiu<6#2zNRJoB8W%P0JOkXKaJ{26}CV8bDZ~M!--Q zpw_Ir)C?g=)SDqpuliau1Pg<3DFW_aZ*owRELLbfY>qq&B&l0rhA`(nW(XEW8B~DG zXV^?M2uxTKS}`7pZe*=nV8$?&{jp=Y1u$y;U=FN0gafnI*L~kSAK}zh(^y)2{@Fl| zcn(2XVmg%646q~wW7jtrb@9dUfy4>mpQn5V?UO$<*B_bzwwari!VGtrx!x2!8L20Q zDTUOXDwEWeD&^FbD&fRRp}8&u<{}aLQi#*8x>;r)0*NbjHCj=0#A2EY$9SriBK#s` z_n!znbP_-VLbjr2GV5djglx2mefoH$up44bXch#i4yfVSbgrbusg08MD|RRsy$q00 zq1mkG_huirF9v~H9}typVH3;+<2)^d&!mOlO$#~3sroTc>H1^3{vKUF1`X}$SL_fR zmg{Fq)t}aZVP+jo+=sZ@F& z!n9x=OtCLIbijeQ9Sd23*0DwDQ0x$_!aA4=H4oAOmrLuoN$a>->$p+rQ0x#U zAM0Rhhz|H8>yW-&p>r#X6XB^aULt3@Yn5mHToU0Q<#aNv+fpNnNR> zk`||yN!qWnh2Rsclc~_@0BSu$Ucv|#BtC#c_&sKS5OwygfV{7T!Aj2F23e{V0<%x% zMaHpXm{K0k5zlXtBvx@=%#ivz<;R#)dVQ9O@nz&`H0sO{W-BkmJk>lgS*#H>)`2Pe zmy+0O=qbCU?ouI#OG2fnB6KD)>3YsUJ%~^Ry76a062rRd50xRKKkepz3v&QP{O36` zdSVC_{+hmX0IzJ!j(4Ur39IB5UB?>K0WVG4el7B|?a^$cRw^Q?E45xyH(Lw*TvrOV z15%udO4_f=@oLJ0!IT;d_IDm%cyYRp4N}BRwM%O8yoV|m#{*G$uB81c8*epPB~wb} zIac2$5RR}E>I99ArM*6yW}R8WR2TTNzVe%|5Ot*24trJ_R1i9M5&7N>e8?N`}& z8_hbIQaZPo@mJs-F@y|%L#`P^l<)^HL>&n3B@V;Yq7`g7NwM;2drkx!D@cf?YJPBE zF)O)!+n_784kIM8EAiK7$N$F8-w)AwdjI_I%c5K!$`3A^aiTC< ziLF8(r*V&K(B^+6eu`WDTb&=<$DYwwz|(MMiZ2IoM@^}9M@^X(J0IEZs42H%7cdeU z0E|gd+uW|yWYh>RK871GHNFj{P3OMxc=R4|B<;iBK|Z$q(~=gazAb6LV)M~~ZO+ti zABK%B!sH-?n}S4^!Ew||J&wF)-xNTEM?aVetW5qG)-DcPQlNw7A$FnhF&(N1pAoVN+>;%6b3 zN2Z31r6+L>xOKOfpP~3BTd|xfxCXZV38-DHF9;YjY=$61hrjIX%NHyW$*m zw}lw(x+8R*mR`^4h}q$$d=;j$V*uHO*dxT1PPeNS1npR1GXw#n#byWs#!8zZ2pEW& zs<(oGafZzh#O_Nt@k_YOz}YOcd1qNM_>un&jEW(rWA;&LpahgHChrYhvVk@G)-rkv zw)55moe(ikEP`?rco>+=kDcz@q60JHBlK)wyC=h9zgK61NayMe`S2e4vy03KC% zCkuH^aT5ZV{JHw>0@Lif8&INWLxa|gQ0$7of*GuY@e@1<=#o2h4>GHDROcPft-wfo z8Y(ph>kgJRX<}L!L*T=ekm8E^GoVu`vO9c^75g@F$x*`WYlRlI8MWnh93H1)=-1Ga z)V%;4hwqcLIJHO8e#PcV&asoJ&|ZK#s+gQbFIYrq814i&q7E3~TqM~Z+4=kdmiZOJ z#N8&&*L_tGBpyJ)8imKc4m|b^1`j&84>9AL46rVx^9pw#a~~PXeU!Q1Vs898Hp63r zzQX9^j=Wgw{jnz*JO$tl!EHU>KDJ(>7w7=2<@c(Cd^YIDPH$fcgt1FO#J&UJsDKrE z8foJxW=V}-E(Of2)F$LH)zyGy@?Bm1+mE2TCLaY{qs)Fzjue+;(KU;8Dd>3ydTJUy zwTbJXJ*VEIQm-$?W9&^l%VOP_QOLn7W15l6jOP`DTjdJHhH)j*M3!lPS%{~?s;#AJ*kz&Lb$FO-qKW3F~Z-G07 z8HjQE3De#JZ~X7@w!}}F@)h_>b!d+Jytvly!|uWr+XtDf`FEs#2DHFu$M1LoA81664=IcHR@LAZI!tK=f^W33(EZO zL4AHtA6urT(Wiu$Y#nVmep4>%E~h zaKYFiG`Y|naEA^9ffw=A=UPlSL6TFsL<_jhP>8+g5Y(A{EGTrF{hS^t#y}`9;&RaR z4y$z4uk-Sq%J3R^s(nTc=l{nwcrjOls8V&$+t0Y%P{gi5yG*5dL)|EXX_Y!x%B58z?#szJWkp1D4M1&pS-21 zN~p*=IIYm@$RGa^auj$I^HA!%LLd92G)cy@z!&;8^c*Z2%=U%e1Glc}STqoS2z~T- z3`Y?Dhjm)!2=jUFG=O&^K90E)M=Pw*`>X*TfxW{|F}JG3Z?`}MzukreYo{CKVO9DU zKK0PgpJ~WzCJv*qsqM&R_9@6EQs_7axfn2p1;K;fH~DRMPy7b;A>zUbU8xU%kMhbC z&5HdNMC^Y6BuIV;M7uXP#w_rp`Z$%l*#JfcZLWWNBDbQC1w1mG9w`pm?#<;e#=mEk zZq-0clC|JE8W%(C@WlSWd3*t1=#Q#e_IXvUFV&9%x>}#f4^Haeeh`K<`&fX1>gV)G zF$||>l~n5seZ(rgCIa7ikdvqEr13DDr~D*-*y~LoD0*sCqcS_l7-F%f#>>}tp4d+W zS7wAQJu$34wy?n}s;}_MWvq9|Wi0Pk>tjC{oEO_69-kwgUxA;%czR-3g=}q&(3Z}D zXy8fw35|~(0G6soF|&`m;O%2P_6u+eU1e7sBm4IP7uE`AH$FzmJ3@cv@_%6q_yhjX zUxDZaPZ`ypO0ilsmVT2TJ=MScIoQSQV?m+c?C11I@q|G}^@sk(Dzgf*VxItMI17kO zX9G$K{Cv`!l`W!O^d(|Jr(--Cz=9vAQI%2WZog=Y0{u|5| z31c}2Cl-$4DKBO#QZubc97-9lU{vVuu*AWt&&uQr{R4S0Uz!%9_xQ`gtQm#01S$Tf z0Pl>DuEYpDgpV6ccwG9Af zI=xh_dyVe5PePXXM5eou8*86u7~}_<4|IduDtE zWiU+7qqv#yf|v3E;8D3iTzL9Zx4~34gG;5pDrT%i6$t;Ypo{A1qqi>zR%itj&iEqK z>PVaex&a%IvyiGO?bz${7Ka;TV*h}PR0Idym-++P>rde^y^5RF#{%B#bLtpWE{9VC z4{H7B_?#T-c>}9tg*wz<1g>sYKR1itWzfAi;u(dKiClotRMdiZ6<$VR)kQh3#}9*c zysMx@4p-$z7in#ItSuivWjo?2U`D{fD6|=&X{fK(8(IrnjPmLlGrFYmEIh?U{tyPf zK2`!uwuGfX8fS@jDtqDaHCWnS*b*Lx><8E5xwMop`#C*Qj3rI2Tw*MDs2tp!gF&pQ za6(a3qy}8ChMuvkGBT9Xt3JBRJ;e7nZvEy$TArE{j2%LQqzQ-eIg~q776}Ue? z26<}4_b$gsz)V*nLF}llg=Z{-_rU`2ma*VEY#bX44Y6?m90IVw+NWVwf)H>OC-NAT zL%?)&|7{#6;Vvvd2;k&MF_s@?04@bRLFn;@KF_{b$@)3O@M&9ii)!|Z{;bs18T~kI zAJ69PH2au~qc$fFR}|%zT3zxAUGa^%*zdX2elPwN5EAk+`Q2<;sX$s@;C4*@3|mir zL+o5gKYpL`)O^pSk4>Xo+xZH#!7;~OgvUX=PsALrLf2qtysyM_{9!h4W)_4_Kwo4d zb}KsHSA$F?w~UJa9L>y%hx7Oxi4{V>V{i|$6uLsS$W-VJc#o7cVUS}JL7IJdNd#~b zV4@BnguNplS^Fwby1-T7jxT_+7$O$d^*~mrkrCdAg@M4AdG2#V%>rKvE&^Xh2mAqS z#AdLuH=2FSM?9_Yuf*}(w3%p7 z>K5cR`5sY4$A&eIXy|Z0HVA9SRS!l6&V3VL0M2(Z+oR9yV=kPJ6NmG05qR)x7^(P1 zSX_KfRhM(HMy)rZwx3&Yq!{NOL+Qra^LLaw7-VaWoW z;s8#ju+a>39X2`0*3-i%${qCa`1hk3zhgi8OUG0B|monx*hl7@w_h zEO7qR901(T0~W%=;(S#hSB;G)fZ_`ap-#LEm4U%G7m9IEG588YG2lCN!qos-v03aq zgX63^dUGfE=slm){sn-1^gadI-_Akn@eF|5fulF4j!?_xaP*c?`}X&xj@cvC!3UAg zsN-Ig{Lkt*SL$dQsSZB&G3)NuJT+xmX!_ zjI;XKC-?#V&;e4L@uOFI5bs?62cv^yx<^$Nf0QTAI825Dk3Ob*c~VFfGWG>tM+nKV z?M2bvr=1MX=tej0M>-m*irZ?f{1$jG;N#e*u~#|bjE4@O3??Y%&|R2baCQV>jx(#h z@-l_Ee3^c3ZuWf*LLAb(p$#zH9WmT5)W;SVEr%Cag1m3ui+uT>zZ%tz*f z*!3_ML4}he#aKqwa>+%Y43cZT)@WJjAvw^dF#ok!#Z3D zThF6e=Srt_WXYFWL_3!JjCC?>+d8&w9)2cm8*Y=sHWtBH+DEnIE1+JkjF0Sy&_m8UE$e7i(&Y18t9vdUdSzbsh;0iPPgTIVR2ivII)#@ zarzdg>h&QkPK#i~xBmwBF#A}*ixa1g0p)Vg#GcDbXef@l8%yKghsR>Y3>IKoPrz8J z>&$p9Xt2+-*)ru-OAB1s4Hln>$%V*x4%EfgvQEBvT?a&;Ra7%QsmC(S#Qk0~``k*i zkGXug$LWz`Y?V~(kv4il5vbw4oZOd+BIzgYOV>l9!b^tj3$=n<=RBLZ;8TIY@pd0- zvO;Z~(|$U6s(Poz?0XzC*&U=sOU=F~xPaOBB+GWdR)|T6PcAwS4%s07`fZ5duTLYv z987xE%QB_NtG+f6&>WnWJfVI7zDmYk))nJCIo`fwfcs*n!X|Rk+knPNkZK2_uSvNM z4pRF$RWB|fNS(%`jY~O6N!}_(>=B=?vwC znnrI?&fADX+{uNCAAogNV+F&^>12BjT5Qz~73)TneSs78UJ;_~5*{iTA4A0g1X@lU z^O8&HK+Esg;}A2u*4uYHxbgEb`{aSUZW_*s{vtla%gQ3v6{)66by#4!(KL04A13vM zVi4AmI$KVq-mg(GfDZ8v7=i(7(hRb1<3YPRXmbqe%$v zW+vtlpHtMmMV}l~ynTE^3Am3GyOE*59b1krslx@&Lw$+E=RB^3XY>|M`?qo_%;?kE z0tk%E<>}0+<7B~wpr#xN2S&NX5k;cFzP*usSB7oxP)FQ%amDHV=bV;P(R{c9{&Miy za%^~Vc-rJ?Q)V#7O`U*zHm^P(&oYtvV6f_zWW1xhJ;6D4Z6x}z0K8Q#^riFE_YbQV zu4hX7EXCXA=;np;Mk(Fz|5+5A1===B-fq{jb-@hX? zR=y^Qiv&W|a{ttXG=@(dJ{S}!pN$k%$vrqMiofS@bH#rix})U$8V{A0GJHW`dC651 z3h8S#EZtl(tK36-OMf@cLw_q__=vzC3S1%lQw0A}F>Clk>CIz2w5X1uQNnP0F~cSG z4DW4V`1I(T$N1^v%BeNE^rG*jA`ktK3-=-P#p+Fs0a^*@p)VBOJSITTj{nr{p-_JCs<Y#8DfVoyCSt7ItO|@bRqgO znr8aOK=XcgVb*9e3mymmW!KGPa%s}UO;sM6Q^dV~+r_XMd=EV+_@%I+ho)4YUo)B> z%jZ&WRx$gi6NqSUf#(aefK)O}rO=@>`5r34KNI+`>l@Q{NcBIDZ`dbo3F7 z!p|GnCQ~P|g%cPT55107eao0Jp1p2MIEuc!GoI_(0jrLqv!pL~Nc&GN{D;>=C8HVs z&C6raQJn{0x~?h@HoQef_I~(4E`1Q%hAUMg@WF)9G=I|LwYl`mBF=MCC|2&L9o0A1 zj-#uKzBS21H%l$!CLXD+qss!X)l|_p8WX`f>JWU{*k{rHw}Y!Eg=ulsM>Szu@A?QM zzO3p3c+oE>uAbClOp=!0Uwt!AH2Q;=p~MaZ+h>YTt(}pk8sTY7@odkhO|bV2;4U&S zB_qYH_4DzZ%1yW98yMrOTX6)iC`+i<$`s{C*?fAvsML6~z8Tc_rAJRyEyU=qre6q^ zSE;DCv46@(ZlVsz4hn@GD5x`;s?4XK`-qz9Y%RmhJ*ac&u;jeQVrm_|E7Y|p*G#SS zfl%KOSsVS2P=9i<&W-dtp>Fpu)s6cAuKo8yZKjWex(Hs^L0jlgLY*qq0R360>!GuQ zF2ubpmwQ2Em(wRgeJrwT=pRCTLu5DN4G7N3?@4sfF8Wlcw?%drJc4EXoV0`PgM_Ib zk$r>QLj4L0eh0?HD-`ac(Z9zrUYrvL8BkA9woto4bV$d6f!{S}LslaZWAGDtj}hl3ob^0&sWrF9Fw9zmsFo??=54n3v0NvcR1= zYfOXoW-~k{pW*LvTigaM%-#z8ut;Ca`z`W+C~!sYN5G%W{WDgl6A9NcbtgevEN|YZ(+4guTw|U-a2}xDey6P>Vw2slz!?Lth-H2&oNEPkiDmAD1q}MO zz)b?*6nK3u^XH(=ydh)wiohvSc7ouiNzRJ|Uf|HVP0F4mc~<2tMQiWNWw<(T1)#G3 zC3)P7QTb;8=I61+j!6EOvdf%yY=~5Z#&1s!WtUDpS+(zAGt=2hM z8SOTlhSp~KXwVXC6{Ord*35do>E@Nx&hOOohSWP$o3fSCY3q3l`vF@+rWf1X?AycJ zb2QtsPR{RakFwZi*zLA}lIHs}b+Po?vArTaPi(sxhuW={Gmjdn;ryS&V!Ot@D|Y)p z+L`ZXYy1wJydvcle+BLu`wzfa!&*SQk4ooXr4;36__@Gm*B*gqcDaYQR@wGQjz`b^ z;g*?Q`wHGsU<)h{Vo9Kj%O0ubUBsF+H8vMN8<3`|KwXfgSjK;rlv~Fe3ZY&!9uMS$ zYg79IpVNir4H(<(R(aET^VFC zTW}?0_X~9m?GK!jJBq%qsW(C8(jlQPrp@Eqa`R|;C5mB((&Ep@H&pj(>bd%S!X7qF zots;TGmOgl@#vo1A_`V1>aEdRa*K&yxhL8|YkaBPQo2b~rF3C#8U0gJ5xN}I@@kdy z0+Xo+HFct!sY61&m&M~yM!ym2V&6MsuY>F(E#pxsr%$wO^tkJC%gLO;I^WCUF&a(k zM|Upv&4p|<6>1reSOrxGb+K=6VLrZ_HbKjH{Kim&mK_gEjG^PSj7M`UovdZc!}&Oi zF3>U_+i|p1%f?pS3~IHO@ko!SwOaP9@2j9TY8j7vkb1Q2z4Ckt(snIlFQ}v)T6S&S z-MLkCsg|)%RMVHW>}AL%(5+g=9#TVhYT13`zYc1zma)Io(mpL)RJjk-x3!GDXCl3z zWnUYek3I1B6(zGVL~p05d_3QMFHPNprx1S>>IV8k{gb)%xbfz3xPfl2e?GU78q?I1 zxnY{GDWm%N+{tv7O-*<{cMA1rYFGWMxl?JIrXCIdFn1bVs;Sqj4&)w7yEGN7K9qYL zeO;()=ueIB=T4`0h2k0TyWHbxR;}_0p5aZjRHz-kAHYMJ=p3Q0q38Trc};YoP=}4K ztP0#Ayrgo{T)aUuhg=g`%V8rdvPD9@NDtPB{B!7XO+8kB#F#^G2(^R$IyOIV4i$yC z+z#3=)EZ5lHjZ=d66!_z=9tH`=FlIt?9=*+ym_>Ek}7vfgF*A?JWU-_x5t`CS81vQ z-a3!=X(}kPGQI#oeLrgqLQB7<-fet5YZ1M!sb*tx-l_DyP}kBo%mF%$TsU#5sBwJW zVk#8sy{r!>?Xi|ng-|*xyu*6bo7fRV>DJ8Tl96n+!r2$P{5SW#> z6gLp6+yvjEyk#`LfvIaKt9Uui8z&3JBZhqsEf(r<)&kEl)IuxMvd`zWP^VDu8Rw2` z&s#;033V;@;>+=^fFBEW13l{R&09_RxZ-6Wycg6OY8HxX=*v5k)(G{Uu?aKoEb7tJ z`PKRKIr>tX`i}c-R)N14-O+{}d7oDVsJH9Bn0F36m)3b*-dZ{!)D3k0=mCn*Z-i35 zw4Um5WomoRdOAU<_YBs#o;o$fI$P;3p?1*k#@v?IMkn$07Dn@@bWh#}YSGls&3p3N zsYj@5=@DaZ-bT7ZQ&rX@c^&i}p)U4S);^tgF1@I!aP2FgURRXN=}q*rH1*TGP4uy% zsMmKWubWQ5;{jd~cKUt`>OxIjYP8z-(zj1 z%Y@qD`)z(cZKdn9?DtuFtZlSQ%l@8~Puu8jEn9>7w$lSz7D0X6=}|57U{;++-`CWN zF--kb=Uh7`pU$ISYFQ^_ee}MTod;PT{ZY$uAnT{UX<0dB{bWoPdrFT|l%*)&Zsbf+ zfu`<5&J>N-)YZW~*7;PWsT+ehds4loViWdQ7tl0KZJm%$7tl;iRTS*8256q9LIwFW zKua`rq;!w9gH~zESC$X|I!9A^7^5%H22GV=jJ`lIO|6H{owQX`ozS_H1{5Vdx{$u4 zW$#t&u`Z;mh1%i!q#_^Z@0+!3GJ1Ov-L7R#=WlIX( zpgz^IuLLRoGV)FnzxM43xOj&;@A=|yPA8D!;dxjh7EltJzbMtSacQtj9zZul;6eU)=nN5qo7u_ul%kwkTWq9lL7A1o0 zfvPj}Z=pX+xogUvtX|~0g^Xia%(0wvW(l>EE->1VGw6`rO8oLH!B78++m~Bufu`2u zth9?-9XWT=CN2BGNO*VAg_>Gv-Q>EBZr9XZ?wed+q5YZ~@Z9SCDy=*&)0W%mY@v4I zn>hF6-A+k|><;SJvNh)RtUGAGP=}4>nqt{~)UYTcyN_mSie-Cfd2>d#ht_F|W%tu{i!-wO=`KyNY%lFvl9BDDy_#a# z1N7L^jO+pWuBKS_b-H|6M)q~ur74zugIp^zvTsm8DCJ8J(rBS}(jtuCgVgAdJw(T8 zSq@|m(PE+0_z9)t`ZTLC&)q=OhdFf}E$*mw_ju ztf{pzZfo8nc{0!>B~_e;GS2zmLAyO%%88Gp=e7XrXK2!=xPvz6E7;SUxOcSiqj3z} z8giaJVhtx`4Y=ck2K=HRG%IVkaDU0qG}%5Lv6YuDM2$Y&U*cj6cawO|On2bKYf!o9 zyfmLRT#H>d?&PuCw%dHP5ck0jX$;eHc z9D@{8tyOk&deLt2khetVgJ_#cUhyBNSNuzC#g?&jy-w->U-(-g?w#_k*>%!W;V^E} zRO#1$(l+Idhh>b^e7sUd=Of&67^L8A;3l0^%N%9fsM!DiEp(3ENSd>7kCB6&PY!NV zMp3ab3iv20H}E{y$fHIhfbR_zfmcL}@%G&TywP+3Z^#_Ln;r-74C??*#%BsXQ}LOG z&$0L%hY#+T@k@pW=mdOb;&U=Sv+y|upDg0_xd70Odm6?o0sYYP2+mnE1U3n57I?bA zGX+Kjb^sdKojy`sjAtKw-YhWI0(KaWRO4m@(7<=uI9fg=E9Vb{bGjMFx$!=eYk3*a zpdSc+0PtAaEIO|d_>p;c{&M=rJQQ99SWzFLmx)h=&(KR_+5w-fX80xSQ9m)a6bwk7 zi@{|m^R zPmt$`F;nu)lsq#f&phEQ#!dfe=3;q1uvqTV7t7uGVz~*PC;8_|{$^ugRopz?deOJl ze26Z`GlZ48sm_L{| z8)p4q%r>dFP3mn!bX@}u-;TE-x-#S&^fqZjr{wIEoSl-VQ>2|DZ8p3p`;qx$8QG~A zqwU7Ridj}UY&g%FVe(B)5*j+JBs6RW2_;(alY#rdJ3oN`>dj(2t8zdu6~j0 zA?quX0L80wP|IQ$LxYM0XK2tE!5QKn-G~>hc14UIhd=MS#CUS_8uKoA&Suxm#^DKn zG53n~W>~W(p6}W#_MBqGt1ovwZhf`t%dTgv69P8@E(5$zth!g87x8?#%e7Bh{*;Wx zQz-k2>nX9`KIzLo>C4Nol0l~%Pn5abKd|_Q^<|51R!=w9migV4MlDW@FI!V_N~|>a z%>J^)XZ1?s4Z+_8{<38hF+3NizSE8S$8w&pj%ECc#(eiRR$Eo6`*}LKdV>2k%Fb@5 z4~&of(}6$IaJ_LrYCmB4@nqwGbrQVjfHfwt)P2BO8D_k)s>MA8Ua=bRzQ!ZQcH`vg zbKD0E)^osk1h;P=h=vcW|1Iire;|H7#dxbA?w(;>(y-0_W2yHosrN0Zu}PxPVGWO; z_!slA@z=V0+=s>5@6s~=qwWukn&5W;pJx3MyJi?GaPFBR@I%r0vFJROxGx`z=1;8r zy5*SHT=rOcx*^YVEb)oqBdO~nV-23K&M+RVU+wv)XmCj{W{L(E`f|OIgWgSW7YV;e zI5Vsd8}IfUhA*u%E-|_)zUA3&^oO7EjFFrZB74;1S~*3-iMDiS+an>FFoZ(*}d*SA)UN)AovgHW>VLuEF4$-eB<4 zp$3EF&pv7SURWsMorylKGxidny5?z|PiKoY&S$f7*P?_N@@Su(*6d6pY@$B zz1S!1-zV+gC+(kMY|O9owMqU?$=@kC4f9q%qJ*?IDXpDhdBVR!q~bBnGACu<;Jb#_ zU~VR*cx()CF7F5e{Ar24yjlZH9uu;XY~AQ&QJcsB5$Jl)I=!{l46NhaSHcbI&K)nW48RfpN%5b?iej4xxnq9B5tM@kv; zO;d-t9-Mv|<%sKwaTodDl9s$HEqPa3(l6uHFXPoO<2A|ndHt{bABt5!mYg3;&VL#Q zCtWWq<}ukW(^oq$`*!Prtk&#ZqJNj@*(G{*iJsf7?_^z_onx{$=9nD2HoIC1UeBIk zyxaID_-v&dll?G&y;6OS59eQoducM@gLGUD{vilD5%4vN0KP#t0RDzv%BjHx|2e?9cr#{l&Rm>7 zCg-#Y-m39UU& zze)HJfvpC&xkLCngma1Dw+sG^z{A2hEcge|v!}o?S-)X&U6lf>P1e&Scm(#_QxFmS zkXZ$MlEwL(1>R{rN1rRZ(|VPXW%pT}^Eq%XDtiu`o66n+ejnhg^lX{sdX9bs_$vLj zY=Vn5%yw~&^8{~pJxu>7TPK`0;S31AQ{aWd*)90(0`C;KU*K~B4+(rnAh}tyB`_$k zTHqx2!<1D%TkyF8o53k4Unh90zz%TA%LfGCDew|-D$92Zey70uz^O0aFZgo;Uj}Dd z`60pI5%>W(ua%QWS|TvZ^Dvz|Iw*Lxz)9e^D`pGcByg_4X7KYW)(PG!umhYu6$66r z6nF_Zk5=p!{7!-Qf%8Jee!-s;_%b-(t2iY1I|4rd=Vuk<!JR|ra;Qt6v_D)(@7zDhra5mukh3f#1D+=b|#=dAa;G0G3a#-7d!2JRb z38Yawsk(R_U{CP?;1k8c+?|wFGCP;^ugm3L4+z|yx0BjRX6FlE;DEs00{06%Bye`Y zPI|9o9pKc`y9(Go6yQ>>0OLWyXA4{>aKFGq0;!O51_jO*xK7}1f%^p>5=cdoQ{ZfY z0|Ivo+%NEuKq{7;0%r?cCvZUEZh`v+9ui0;l3(Duk|)ugb%GBF+%25lg6|i2NFbF; zDS@*Et`j&QaJRty0uKqKGRZG+w!n1)2L$dfXXznUD+Pot9Wt4l7;tb(IKqV zL3|&e62EOzh2Pk%#(hT(ZXYJ$ZIA}6!P9UqIu264DF16<6K<#8AIosuIED)aK3Et7 zev+Tz$}q#qss!MRzHNa2C}+-%bt%B_34CDuMZgzV@}1xPqgnd@g-+GlpGXS>bzDoa z=W4*Iwbujw$;X_xrRBfRXS`h6?=NE9FL>)1#?KcxR^S5yZw)fPZvw-H0*19^3?CGo zJ;M1{1#{+0{>2W>3#9BdlIQfo-N^IxAj21G?gmtr89!+c@Hq|p0GCc+JGYCKF7ZE} z&*Nrc^!&JiHL+jfk<0@wJK81kzv3)5v zcXCW{#{<@4oDICgQVBc+PcYyG)xhiE5eD{PHNYDn=ifh{2s{iq-iie@ao<%Bd8rE~_-;TG?{}{Teg~k5 zr%Go6zZ=lRlcLW7{~Dl)-S6jt-v?;oiOyQ!_XC>P4@ZDM0BGXLODphi0Gik#^V{_g z0h)Lpx*hmFKod_kI)Fb4XyR@4O~4-mH1U>n7w{(lO?nc&H}GzB4EVQkXJ^oN08M(D z_|5zMfF|zYdVxO+Xwq|d?r+fZfF|Bu=Qr?Q2Q;xK=lAb_0BF(=@m$@Y9|4;5V>~N2 z=qG?C-mTaH{AYkBy-7QP9{|ij-^T*(fiI0h+41njgYbtU`aAeV^iOc=>E}ib;9JH- zc+x@O4Ri>2BYuIl2Jl_rVZ13*1Na-@$KV$)Y5+e3KACzx!hJJ$XJin70v6UieqJe27Ut z#I0<^qa4Jn9K@m=#H$?mSPpzE2R@YpU&?_G<-m7x;4?Y!l^pm;4tygAJ~0ZuFbX~} z3S*y#SW|@2EJBcHP}a^qx z?G&;upcC+B$?5oV_>pUe(d6D?wBd7;`vv1~ z_;@_OFt*}zqvzMi{|n<+!2gKPC!SA@W4z^Nt2ahhc_*2NywB2mpk2OCjYasJ;cGUp z0{wxn-OS0_WWML!Y@U+!3uAuPCFX@$<>n-AiJs2L z_PL#rL}JS1wUcS)!f0|uw5=l^ZB2H>y5~isJ)Irhn`X7IT?@(b&PZ}YEZ$|a`&F4? znx?R(IlUd7ZF6JY-NRLh$X2#0-q}AzN(|LAO}H)5?zWZjNOvM4P2#4U5$Wt`izK5f zqKTeZcOtqdlGxZkjVqnIG1Af964?+9FN}2I`=jC2(e=~9b7S#nxOs8MhG^^d*3Rhi zNIcom+R+o~PKH-^bau8R!Dvcs?{1y7e(l=hSkKU=Og(-it}xMvB=omL6A4(1HB3EW zq|AyrW9`}*ES=w-=#590$75SM+M@9}vEJ^s1s(B3lFLhmp)C+*bE0WWq@y#kzB9TY z7Pl?PCYc-QUX_S0jU+p^u-0U(HP+cLWtKNGqORnB6Kw?qMLhR9&X^0$R>=Jko~Cg-+71XiS~^t z;+G>d0eV+NyJB0SE%0Etz?8Mf`v1fSpy%kuhCLQzR?LeeBd{^D&N^W&Ck|6{JBFE> zbM{KkmX7xBmD_uwZLDKf8+en~ITU~~O&CMHU>YVVXB@_#uJ|KbpS4ZrQuc5#<9IMy zqVWz)rSsUI(yif)Ge^`jbQEW`A@9=OPVq;e&GWm(kDv|IqUg32%jdFM&J|5=jm02B*3GOemu^>Z;|?XmcF39SEBf%a%}Ei0j| z4AOH2PPMFidGGqpj>N`j+Y&_4NPDy&8PZMs??x-uqaryE*0HL)Nc3FfnKt#f|7+dp zWddrTg$D!)7EwKbqJBEfTpWwENu;!AH+aK+3CtlOf?Iby1}?HCI;c2!Lsl8ic>;60 zqg!oXV%`k23Lg$H+LYWTaF)c{dOM@DXyIIH*`7#7yTZ-Ouua>-GjHu$;=$p@Qo=^& zCpQiXQk1mA73o&1;6=LcnnGx_mnAzy67L{H`5?Q{pl;IK&S)f_?lpDtLL-H?%2FgK zw-WO|(q^|bP3S(szhHn?>5ewb%2-cFt8{A!LzZhLO-dfEBNKKK;f1ho9L3YV_}^_S zv@ibO7PsAvRzxFhO`V-9@lRfhbJOZLV%s1Nn`T9i>L{m7H@8W@kuW8F&@3Bg{sIJW zn_d`A+Gs29q;yeiD9%MB)`c@vPnzG<)`nK9eWP{{Y=)L4mPEQSomB&Dd4|i*Hk{kk zx~V(1wKLkr1$lW-M(20)64gfHA2y-KbN;p-Y**W;IbmZ7wH0gOZCP8!KS`E^RoF;w zh%W1%8|&)976%!`REeSVf=F*COP5BsF6`}S!!+lWdehpqb0V#qu(Mpy5$y!m_Q2s1 zr@IZ8Hn$DuY10oEq%A&NG|YU%vxwTIkuGeOBdyWl@`aJaaya=2lBKckk=To3UC|y4 z>u^;|V(U8)WrkUaYahZ3euZXr|6A|A&Vy3~n?%_%nN8;^KYzBr)oLhzA(v~iSz7fkU!Bp$*8d0<$ z9_t#e3LTAht&hgFQx4C7<3wu|zJAmUO})w3pyg(mO_dpWxcKO}tcT(7isnTVt?`bd z2v^2NEU*aydbl7HXY{TK{v@ZV&&sMdj>EIei*`oavAJ=$TMJmSp;{SRmKa_F^JX}+ zxeGow0-yJw{Ch^jOE@Z2HX9+2?2lRzWa9{J!&T^rs0LsJId&)#KaZNhjv^~#D$DRH z=0p-v7(9t3XqZp}%&jpJq# z+xSSFgMLpZLKQ+fpDvcgS8v2}*TT^Y$A(x>ED>!>$1@xNx-vw1q06v%kr^BUsg>8Z zOb#xDJAl?rxMn~VOxiI~7SJ@YkS|9z_wsV1dqF&|(e7o4lQcITh5s~nb2qda3811w zVVJS=yIW&zsuDYnN`^F{MnF4v%f?8&C#*x+2>S@x8|l31Y^pyJ{fJjBySR*qO*Gpl z2%E70ky~wnY)(Q&P%((!O;V(-ZG`5Wfi2<8~Al$9-!7(>|D?;gr3P+Jkkc`MS3lE-b{xYJ>!If6@b|*W!3ni_7OIa-;2DwgM~}Q<dIBtN6g3rcm+v-u8B0E;2m(jwi$6 zP~Nq^bNkAUq%-3%m&lY@$(x|$f;b$FZ-O!cRbe!~r~}>U&hTaB;49S(%dVAY${Dy~ z8By5W&DWi>2Z?kZH5aDHhK}}LTzU>tqHHM4717SfHo+2^7Gz?TUaK=AyK$JQZSdcW zz_uQ$m4Yt{A-YcJ!hD`V=1D+zaHI502^dWUInJeLsv z$5v-aB-y%=HsT(eWT8&46MTZ9NKX&18G^F~ntFP0JD8B&M{8})DptQZ+T9KmYj0w82M~nycv7L6VZvcZGGkzPKviH;W5FWXc#SNQcG#iR zRx`p`OLUCHmq0TYtJ!+2tc0r~h0N`YffVh!QJCHK(<)xb?TxOJJ;-~MN9gNn>79*p zcWj(Z#Fx>!`}!t9IN~{i@g$Z(Bn%dgCXr6eq4m*D?SgzgCM&9P4uv`v9>tLJ1h$O{ zMXI(siVfO!584g3b#|)utC7{)A+hM-&6DJ^&!{3#6IhjSmyPNrPkL{~3^vCg2HV6w zv5GWJuq1tA6;X!bWzyE)jB80fwWL1Y7f5zN^kuk6>?=kgFm+@bmS%PgWsLkJhj7S{ z$C+^R-mcG@qBvp<7c+Auc8WNcbknITu|e%7JcVnG;&})!DvC3LbMa1N(4&`mu`WbT zYE#LnG2m=n9aW@{P2G{s?btUYY$o;}e7&W2vXTe$&w0id9Yc9~Ryd0dIr%Gt555gh zO&D?kAQ^|=3VE0f(o{4m-OeuzLlB6~GVb7jjkjN4;(OIE;P4@7at zg4Y<*YmnOXi(f?Jd?>OzX|o1*&gKs8l+B$vE4g;>;SLBsXdT{`7~C+$PN>9TszuRGY@u-%k=WFvo+)#@vQg=+JdRNv)@Wy}-DdLM zYC9BgmuwtOlLId`WBubZNO!w(ZC)572<#L~q)~n%zD1bfRu+X@C1HJd=F!%{JRP^} z`3O#%zGns6?1;7Vw?$hK$cOiTq&!@OeN2^|jIvldu=2gAo}Zt6c`BX9HJW7RR8Qok z{JsEIHJhH-5ozy^;ieR<;h_~FE}UKnN02)sPguErVx;}P-Vuk{W8)ie06_U$!WX5-yNKzsbReJ0-9$t);Rw zfrESkR~5&uU7Ot4k)X^9Jr`}1@xigg9?|r{E6fw<=!RCoV5HHqjePVRJfn3q`L|wy zCUzdB6>*Mi|0 zM%=zQ6gU<@2UqLK)SQVIj$CSz58j60*($EN`NAc^>ozXEoSZ>{)R9xWIX|}!V8Xh)2sM;ilH%C~r z*}VFVz*gt_7Q7FcR=|#@rkY)LSkU6e*~560wyOmxK|OpOgiF6T`)5ZI`|{;jWHI;g z@PyyeQUZQ2Pxr%KOT}?zdW2ShZ>JV=HOY5LQ$@_g5-Zp&`$*q|{KJzRn;1 zKBKCG-x!09T3hkfC6M{saEqdpV{^|Q(~TWC!Tz{K59{!J+2YUBoT@HS-FzJ#_qmo>g+ZdG2KK2e~FGNIt0xOe2C8lh@lJJ}bNDLIoa zPugJe0hgv&4R=Jin_46j>+Y-$q)9ZxM9k6UR3Sl1SU|t-m&; zQGC-dh<~4m|D}jc_~t{9C^8p$y77&QB&ZnVTr!An8O3Nl@^ymFl(kC+MMDs>HegBQ z#Wo)KnyDS7nc^DS!3&d7ITxI6{1?S{9FmYQ6~yFcX=iL2@W>V$YoR~xp@iXiNdV>RnP4(3*~J^nNv_R z8|!3zqjISX7XL#Xtgi=rZe2_?cYzWw^7N@)van44O>y3En|;F0#eD{)FORn2W|&X^?~bG zntP-#8^J%ShKSRtSO+`!2K0y9%j4XJ|JX)2o}hg}{ET!I@`&W%ysctW?rWxfY{_2f zJskV<|7{IRQF^GSsL2^YZ9HnMJ1Olk+>`NxyfpC~e35AzzF-)^mz((OkBzhdoJM?g z>GSy7-gJDeDTS{_8KZdW+LMbWeQwam%!TI61PtQqjq~tj$j_rKG`p^_^bf`_8<#<*pk7F+EJms_MWGl5wn;i9ZwLk;=rX4U@6I-wq`cypO z;JX3;v3)sgv)3lYYuRTb;I^ZD5VoHM$Sum~Tbb6z5y2SS;3yGBRI}@n0Dbb{-YTCR zY!8lJU8uos+foGh#rUrh_8y#bur7`w-RKAVE{{qFz6j6y=@{-edjv-|o`ngd+*kIX zDB=}=<(TISm&I3FM@514z>AN=f0XB>uq2je^vu;3;+TMX#t)r)L*xZKjvMh+ULFZv z-l&2XNsepm0o-PXta@nfm1rC1Z^N8pZ;W704bQ`IPW3ReL^|{F=(b^0M$9+G)~BM} z$hqdA9g9#)0)3%@YdBMfG;3%;VpF$c7@dPQc*uqZdUhRNLfQRzFeaiBcE3*45k=aD zsyPSmKiDx_#c=k1fK7v7YT<_M2)7~~YSJM7;RDXoJS0l0O4$q9n|W)A8+UvL?;5s3&O^^yl}lxuhIbUat)zuc zV-D?{GEFZu*v@>kmeR6$$def2l6I-Vb<9OOovY~3Uh`%b-x))HxJUnfusC`Tt(l{( zUZu7=cNbij+H>*1Z^oeWfT^8=ZSBGBv0ZBL=qbx^9Lh`(c72ZAynbLJ4qUVV1E6;P z>|tuSRmdBZYsOlEe=G*Ycn7O?dxO1puwpwWuQqB2t~$>9iZ<|6aBzCW zV1F3y$J`~}ui7T$Zf=l{bBtH^#}h)yp;jlJ#5}Itex;q)3zb`~O6-{};PE=hc5wEQ zjl}Xzknrrp4IFZ{N-h+edortNutDt5 zC4Qs!Icz71wKH0dGAit2DzEAnw}Y1vd+$uA{HG;(2d8#Pyrgl9A{7x zNrjQ4_mCqiwixaz*4r}j9!Z5No-^#*_E;UwBZKMvl;RwlbMM z@(i&rS=6519yg9Vstp_sc;0ZF=1qkf71ZW={=8RTKj)RX_k4WJgWo-O;!Luzk#_|R z!{-JlC}uQQ(39OkDj2xJ14dxrA(b3(1u3xI9W)KU&s!YWvBU^$^hlbkk})na%v}8N zkeQq7_L_kn#&dIXQH$yF8i5}Cd;|nW!NAo5uS0(Rhwd!oLA6w{qZv7TXoYD3_$<_w z>+^X~V{Txx5B~t~z(WN)cHq~H0s}jMkHIe*1$JD*{}1f&Gh-5 z#=uOpII!b-AF3M12+7`LzXk)K(JAdSqS5>S)A5kBlh@$ z=Gffaf*lXA`O9jq13?bvH$gK0qp1rVg> zZ3t8*bj_}z?E+r&bQ`3*7HavypD2maRJbia=tC+|si=gbT52V%rc#igqEdc*?>jTI4-5oMRDqPW_TITObI+V}=A3iS^`1H7VJAL_mefZG^kgNtY%arn}Ak4yN+(f}T2{nZhoMZ{I@)wyJ%C-kI{htH1+9JIG zXQ@q>qX=Vrz#N$P!;Q@ zdo@*oJn-M}w(FST^#;sUz{HT@DscEJbe7GxWVGwGisS)0(8zrZb79JycMRZ<)H<;K z2$db&fW(5iBH!0Tuqu>o*6VBq3~fSZpA1!k)`%W}4htBZNpKd1Q{dy;z(>Ksmp-Q) zhNlRyUd<0h00~XnzXkc${FP@@h}=}aSWrl0d*Ec`p0VHjy&9Q%aJ$k$QyUV z19a4f=`rLVcI}4??T67Gg$jfA70?rrFQ_9YdlVvhJd$VRSR+t!pinTJ94mkVo~Iq9 zr(Lx$;B-wWC=?5~u)nDu_M*c<47Mf^iA5^o5aY23D&6gWXb6RHL%oVP+Uu3hQa%0% z{)s43zRN4n3<)uv*aYFNfvTgUQ3u$sgN3VrkzLcoNsdAMNs{P6?G!y+nb(S$bzYgy zWu=jPaZROVXeU6xoKkqnGAG1>rIG47D{HVA2LFao1&A{Y%z??m6=&BLje-XUj(`aCO1D$1BuLE0U3@%rv*6BahR?mYF=KHFaAVNZm(bQqBEg=!OgCSpQ?cw@|{0}M9@j8xkRg>YV&!nx#axtRcJ z+6^}E2{xu4k6O4kGk~52@q`0`JJ>O7y@+Di7oVcVnUANG-fr;{_^817123AJXN>Fc zOfYQtS*X-=MX1R`PI^sMWkL!e4bLDbsdiG<=A^8xAZ2Y)|MD#A;A(mR&{926m|oq3 zvXv^`qqBAJoC-By7#Z4AQ>Zc*RwQ*#v{+Vf>0iUFK~Qv0H6+EkB0$d!EZ)X&r+6Eh z?A~Y}IPhII>uilO6Gc~Ma}oVFh(&KiZlD>F&Q-8IFg5Jzr0QlP=(JKpqc1#`sf5R< zv+fC4?;$N)7-^vKxNVFzBm(6|JUr~1Ygk%UQH3rLM?1FygU?Ca_wEnsKRx^0r8VIb zqeETKUV7`>;lznm|M=Z6-ntt8(e~r79r*6sE6Wu=fi0CyjaXD7Ni_`0Q*c75+0AFzt zT}a#MAE|`h##>fWr-OKhf$s?8!nZs4Dg!t|Rq;NDV+3AOGy|sD~|qf-lz#)OBuCpaPQwv^i~J2yyY9O1TS4M(z=DvshGa*Tx7qKWUqWwTTO-$?l^$_@^jLbI&w z%%bd|#y`UPp(@rJs&Ea=P?@TfN*NoM4eXxFB6DV#lB%YANJiQdnEK*iasYV-@=G=l zd%J7@ZV&xvv+x@Lww!BOxdaQWO`e5jyO?OfzV?$I ziO#u+RH}d8-2T3;U48S??a8+GWPcz23ne7@K6bOa_rRs=Z(QJI(`1v0xeQE_*sEP( zPf+#!|0@Ee+04{3Pdz`$@lDX6O@OAp>8YiY15^k=wAs$oDo?#IIaoGM%|;>$yt(Qj z;2|UsOB>vxIDyxNe-?Xc+2rsm$#-MYtEm?}wPbS8>;gujCCMGti=J9LIZ!3aX2bjh zF4H_d1d7F=m>^Phd&n3!A^k#eL~5zVnONqgJ7&96%dz$RWPlNDJRU-8tQ&x__Is+j7!{Gkz{c3y~f7q3Uiy4A+s{a?_oX z7)}~iNvc22A=Lb!rw%*_(+kG@&dE=k9wck2sxlA70DQe?Jay=M%(dMUs9luF?Ak9W zI*=R=6_v|(V$}??52e_x8%e7_s~a9wfH}=m^;mGTh0ElMq(v!gwJW&M>63?s=DR^VDm|xShfEolJ)NMJK>VrntA+27K~OMO7wlFl z1ZM2sVa_{J=A7AvefhBKYd;rZOOHLfl=9#3RN1!VZg>mp_uaOjvxN(YWG#^_!2{^# z_-$R9_vV9 z`*~^RslO_3#cF!c$M8-38{c!T761505u0WshD)jQXggoj#$JV7{k&3Y?YhP5{`{4< z{}dm6dGYZ3GkzJK8Gn^9T8Uum;9joFZe@a;*8Nu0bRKo~?_iTWqgMa(16y~G}w9Uq{fTZeFbMU2% zc3_VBu>;Chl-p68K>b`C8L!%pzH@QxLu(g~^KgGV?rxJK>-p&tnOG!YJq$r%)GMQT g?~Vs$Z`4-+SR^q#ozawd!Lyn3%33JKL5`@I_I9{ z-gECg_uO-r=b2&2=XaAuL@sWw+<8uTbq9Vaf)ox~R`{gfe5P{Es7OlISv-1DBRFllYUn}%3 zW#kCjkyXMB`_G^Ppot+HAFN*c~KU2^+CFLIP?OvkpRL4WuA0FX&vb-O{yUzliJ zV=|R&0VQoa0>p#QGx#|E=3uxQld+BjGICpqv<-eFL>9~;nwupwatqrPf7~{c+_Y{P z(YsfR2I2p^V6+(-LFBK!K&58+HRnKCb(wWr290vno}~HKKoWg-)h5lzNR&3+88=AN zmBEO(Oe+Hqb=7`h7)2h30V0*i(h$;A5^B35qqxqp+PPrDjZ~JhV@53%PqL^Loj|Uj z*~5BViHnfKZ+fiAI3W3E57(6h=<-HJLr-E1H=&2CPK1HhkJdyL6VM|0CnLY)tW{EP zVl2e9T;G}6XgcTh$Z7o>nx7b;*;1MbeKDyNx?w8a7t8KT1a0%wLT2YdPlKivL7UK3 z>5Io!BQ`-FdCmkwWM<9+iqwjXNAAqopv(|OszoFBhvx_SEO{}S$ZKWJMe34~sLxN1 zGpH-I5cw~H8cz?)l&;TfT@xTn-iKT+wz;2${@S?1#tmL8@eEgJB@XC%O+riLPv=8} z{1uJWRu8w3tM)V$SUZH^F|XA)yGX6h1h>d#QUXT-wv|06`_(bZ>fx5FI(#rpgmogF zsC0`^bhA*HcBbMmjtsZky0!HvRgp=Qa87#3;;yaKe{|Z_RqAbWc zq0wJ{w!h4iK*j##ToXCiGcmy2W>}A7wymE#@Ar&3AyLB>6nK)0?EHRDEqoVEan+8+ zED{6^ugwqy44=&q1dKeJAqW_Ln;{4o`8GokFc5fDErNhiXfp%>BVaQG0b`iW5Cjaw zX{AFDFoHHi5HLbELl7{EZH6ExndKSog9;e%*d6e3 z)Sao2)Rigc)RigY#L6J@WOvj^VjN?eD!OO9DgbD;!J&~gM_1nM0#xnCy% z)FV(U>SSik0zjY^KmHur1Y04lL{0%a6N3_tM;jz9&9q9oL$M?9nz|4P6*-l){K4$u zRwW=%0Uwd*UheinFfP(U_(@jydRCaLAA^&vf0M4iL)U+ys$a1qa8jA4;Wh3 zF^BsQ*E%rB=u2s)Q|VCb2>hCLFcq20eaPy73$TuPtRtg!TMP&yPlf~mkdn2Idu zrvpyII?#Q8CZ%^8+uIy+B+$^i(OIpXZTE{g?hhj%C;aCS#19ZR# zvwi8)Ixf{ZdX)~vj=-H*2UCu|oCd!LC>>%`%rZaw#p#k-nKLAHWfn_Xnpq<04wWqe zpJ1I#Wo@k1WQ<@i^;#1vlfZQIaG-#CkL+2>5-Xvn z;w!aZ5OT02f*DvBS&dA(o;9ckQ7Nb!57M8&+U<{E_SN~bZeC$w4xottB1c9~0xP$_ zn%6b|mm2bu7iBXEtL!Va7s#T7_GagH1R=(cJ(<06~hI|`ZqkEec}|9%zPbLcs#!$X=&zblI~FK2rSRz$CR39jgbpbDg|r$Yp0k! zTu}mmw$y-(hBCb*)2< z+|H<^R%X4VF7^=cB|ahDp|Y_ZSSM3T=N2>h2CSTbSNZD$W&&Z&AHEEAAViiqELV+I zu;nDRcfhX91h5f!CvxJ>L^u=5+I=oo?c4~RncE@bcHSwemAOOG(#&2-cPKG$X1IM! zMcPqJ#U9Kv@u}otG!>iT$b}+8Jq9&Eh8Y?(7g)edd_4I0@u@2)_tzEUGpx*Cm!I^w z;Bg3y{)_Y;^q-eSxnU^ZziiH%8qrEDw>_LDOQ7DdfgXyFknOMit##qtIMt1t1GNTC$imMJ={vf8HpfB`x8Df-!t5t-1EwUeKxxyt_u@4R z5hm-)4f%;z22kT~Q9a5aHUv{1DPv~t<=j?gpR=f!i%O&#jYh~^`69|8RG{rv=04^L1V>o*1;=3&gU(x_>6}=Z6FE1}L-qwk6843y zD3Eys0``SRB`wW7Ea?u#j*L;hz*J;A>(9<*)W$mIv5qISj&Dh7Wxg$GX$GBx?j1@T z2`gPpW!FuEeL}4dk!zJHE`mm^M4m`bw!X9NJU!f-1hy84_}rre=8Gq?8z4CaLlwzD z;k9(L zOq(Idz~QhWx1f=xEAkai+>zUmu$q(YQi6an%Vr1y#wj*K5Nzge=H9ZOn2}q7s$(fK z&bBiO0>-H}Ll7|L*bG7JCPL6;3j_gUuFVhx3=FgCt{`B{w;6(fvA|{s0>(m{AqW^) zsgw>u9Mxkprv!o^CnlU?2m;3GHbW3F&afGRfU($S2m%K7S4xKrHbW3FR@)3gz*u851hKo-m^uRQ z={=8yHt+LR;wrS{WuJZ6jO@}4#BBH1ZZUfb&TYD*^SM`YO#C0nR{SBFuer zs&9o(rO58_1y7gPL7q9Vyc*>x)k)>4?Wclo(U-o zv8SNUqf)Og!-M8cJ-}k!m_p>>T~3w}V8%m=!7cPU4h|`>u~sL(#CaZe6dJ~iM;weI zW;_Z;>YD%=_F1p;+{ZvC9tS9PgMrBLXB>AKcWdY}3yLA) z^jPVM2pG9OyLbcRPkkG}?wPYqTz}?ChcL+P+wWj}rX6I;eFwRv(~+luCB6$#>9NxCe#7R8U>5j`-QJ)(1DD4*{eWq2 z(3|vmu@OJOlrQKj*P%682ClaUN?ZwcU0Jhl&pZt@=(FQ*aso0Ts3zxd%DX)XN7@?J zY2j6pRwN&hba?U^Nk=3PbDDWp3MHQ7#G4s~`VJ2-&NIgxQ%)-08O)3P5c0#t{n?S{ z!Q}YUgdXu9yo)ZyoZgMkaNr1i#&k8>R^$bhc_j8=Yal~SnD-s1&+qABi&QsQ6YAWN zA0eAZoJliYF6sefB6k6f-bOStgh?&!{-Wxd=u9x@^G`ZLvaz}m) z1m43_o@+5N_+6aJWm3p(@_l{Xp(8Q@SWxUXcW`>F6ya7)dM*b|FR@Bj-8wHv&%rhD z6#I-CF8-Hm@M4a_WI8Z-)r|`}<>!^i=s8@{pY4mh3~p`HG&B%@Xe|8?h9eCB!ywBXVLs2D zdhkxd$1!)}XoVGdg*CtjZ&2*#u75IFDPaX90XDafVssBP_ zGcY)oZw0wT<^ljc0$2z<==~_a?e3|cqdr7hjs}@u059~)6wOP#3L^0ufCR_afoS*U z#+X4*W-F(1M;XG%OyrT7$gSvM0gnu)$4W8bm3wnJjPV<+(ybbZNwOAPN8=KQ(Za+* z&f^RDBEM4Avd^n(eVJ`2psV$n{N$(Z&?7LU*~0=1)DBLMm14p>s`W*F%__Yn0^b(M z$y0Ii7?{m7{A7O6=}kfGsaB23ZTAvrtEbuks%pUH7w} zo8T6^Dz1SeVc#8eVU2Kh1Lnj<%71eCBWwYG$R9ZhL@#v8sQ%1$R;$L+Z}KylxR>CJ&XRpGcGRG`A~Y;#1m z`hrYPuKEIbz*Kh_Pa&9FTww0t)DerN?gEL$$>%UzB#adto>*MSQ(nwgqGno&IFvG8 zurPx0@*f`iS($v1w~+@nZd#1q<1Y`hrVwcvQvA<%oCZ9aR$&Al#m5aMJTCjk@#A9f zuEqz`&R%=5sYCpDN9pGH5l7ju#E%^iA%0wpB;Qj$yDi~NXRt# z(O%sl1W^n>3ortlI7XjKLC?3KPwzOt!}@pX5Hhdck38p<-TlP6NZdW10C|;+UoS)$ze|x|{3cAmKrO{U-G#y`Tswv&@c}d> zJ_O)l_z0;!iLeq3!%j}*kq!?-BM$@iT^I%yU>G<#R*Kl7!Y7x4o>2-SKz85ROihc#OWlt>|F^ADuXL*pbWO5XN(* zZbWi7+VS#u44^zk7gx5QxpLDZlc6tz&iS?1tO2Tebz*GO=TvLz>TZQsMyHhHQ z!_zW1ItqTm1&=uxpE3gupH*!D7e-_%R8R0m*24^XyP>n;7CX5kdEgct4r7l3 zuM$NiYG}peL66$pjT};H@A1UP)LiDfix2S$W2Ci@@z6Q;axQ}5X`J{N49{~Jo`bnu zf1#--u^Fo- z_&K&pkJ-aqOhQf^&cj78li7Ka&js{SpsFi4T&-fCsNKOWI97_VW+>f=gKweK;V@fj z=q&bPr_N~sy5mu*);9VQv^mx*i{6Bd;I^2DUxo-af`74%&N2Dw%H@r0WV0YxvDd(u zuDp=@SSfZ-BZKb5jI5*Zb%b^lwg~IuIdv1K>H#C>)J!(XX0wO6JfS#sI0_en8g`WG zNE|g{Cg4R0ePl?k2dZ}j!<83FEu!6aA2}Q3*xGMwJM4Lg?09rN>T>vsMgIjmREr%7 zQ9tYuKmt3gRTjXDIiT@24qz$>FoZQuI-WIHBU>ZH>5gJRjxZ-{YcQ9s!KuRCZp-%R>(J}Clkn2%rtIC&r@auNPj@20nsW-`2-cimAu)UI054Gj zb3{_8uf9xiygfMdxDut{C&~cIuNjHV)n%#2P!wmFY$?9M%reS3`@IfE1sK&0t_dZ$ zi5bqq`y9d%1BDMbgd+zEA94sQMd+EJo~=LPkc=8w?3)nYo_YZg9y}3!$_sh)eD)+x z$$Bu~uE?mW+ZDDK->$$bFs!!&^6koOWIu#e5msXX->z`#7+Nj|O+2*4E({?|>S-uX zz6s|Ix{{4Wn9&G6esw93oCX@~t8BKu#(*25Y{+-46dR|JxCX!>(w_*kPH)H?sRE+c zC)G@E24i41(`)iW=DNeH%pT_AG`fS+W2KYq^-0?3jf{nw0{d=G6iGjEH-|Sl^{qpW z?Td^Dm-n5HH7Nl9s>EkFOrqm0o63q*b6)$#{&e+B*X+3mGId#Ri_SEA;4Lo8?Agb% zOJObE&yK|VlNT98a6$O){Sd)-A4G!rnD(lN#pTGWUOf$IPJlTX0KSqzZ(Rw_Q{e5v z_R!@^%z;(p5^W+HCwn5i$7f$Ra2*`6;AAi){1AcJj5P6hW9i0tvw(vZr^iaC*tX!&*iekG)?e!Mp?f!#VU!8?&7_k3PX@fmEKT!$07REbjs z6N6M-c03jJx*CU8y^Kg_rIQGpxge8c+d;-T)~8}Tmf+(UYc`W3-dKb^6=55MF?$#y zjM<||FlJ%XD^H^{n2gwCFq8+%4c?N1L)a2Jjk@xa_iEH(MLdEKEaWT;qxpv#G4W^ySVbR+YTx!~}e3Em!TT3pGiG5_QtlWrPL z>HZSly2*h+sw+`Vm+EjXz^Mu=N zMW#qr_`5}qqwVm0*bW%m4t8PNEmx*9d%g`if)ky;z~?a1G%yC9lXyeIN?@cXIZ-bR zz(@dRhLpioO4B6}J_A9e%(GyUXJ^##IdHP&~ zO@KcfPiV`u#z~D+CrzD<4H9l1r~|MPyXtWl6J3S0z5)2kbh16ZF~vC^Ur+RpBJftP zq({I3O5;vj-HdUh1EBeJv2k-d638ZhChUFInA`L75E5`XI+b6p;o8|hur$l}Td++a zOlHEeMlhnh(S*n<=V>n1giit=gln3H4@8ou0;v}t*b;y5V-4d!54}`+;&>0uEo1nh z!1<*M#}(5BP~f54O4}1_F?@IUGb8=;rfM zsT9yd4-_-!h0*uAJ=8FUao6bkhJ|R1hdEQ+&x|aiE5<%JDnzw)Z$am!&=aCe`MvG{ zjVk%Hcm&O<>#Q6>!^WRcJ%U!$o>3j5i|Wo9=b?kp?4dr`VFcalU5K(X-P?U5XkF16 z)gIb~mIUaj>iQ}Vbrf?Szvg22$12WWCV6fRGv^7|jUOd5|H_H1=Th)T&{yjg7Ki9N zRX)7AdPmg>^&z^va%yFW9K0FgH7dDPjew(ReARf2 zLJ6!CqRL9PNlTsBMC^7ZTI-=(P;ZD%a4~-gEIF0}<=e(gplI;DA`hKgSzIxe7FKK< z`{bCp-vGcn4!qMw0}e5qfG&h+f0EjHXYA?}nYH)v*nqoA}Jg5mXDyduS0_dyg@D zG<(WL8-RyWg0bdyl82sN9&F4O^`n&>Xd zL;vmq)s5agF0vycI~|dbTh=jZJ7(N+dO@fsgWJdXLA@x{C0h1lq5f)ZhtDjhmxQ{z zeDUaJP(PC%WvUiqtk1#;doOh6hZS`gyMiL*ChCUlKZS}4bq-TiMYPaI)J*4T*=S^K zrVDUB<#JD0Os%80g*pS}nyH0;E7aL=lx}>l>wTflbu)D#{XwYHJxq1dheEw3RFeKE z)E1$3(4U2x4Ug=mUizz0FQL9}x|}{1szhYh(EkXvMyM~-KZN?aKx|cjc?E%$I_mNMitEAlhn);nk50hVHwNm@zRA5Y?yT<>+ zKY`lIDZh%|tG587W4(akvH7^qSzI^_uv6fd1Rl+AGqFz)c+D`z&j=jC&DUN2R^X== zFsF7{2&GOJ_(PR1^K;w2Sho=H`{idq!}jnp;Q44(6^-|-0_Rs_&e8lTI#_i< zzQ@z+U2LxD{dvjo{58E-k6?Hd`10OwjL5YuQP+Y}+(Nu}T+;^lQeZRkd@IyuF7Le) z&~CreRzL7_-;cpEYkDI^j4u)^eI)!J3vLuLf26<{#a7b=|C7Ky0hYE&&WK2_m9m!# zXPBk+(z=j&4TR>|{Neh*sf4KREna0#HY|9=O#7n_Fd1dIpRZs&=f>ijG7J@oVO zCjh?T?HPcV`L52NPAj~-^UG+9aid7*n;!a>cMtG)VP`JOoDLu3OGh$1P_h{C&*8gt zeuHkd?n8}r?n<1B_qrbge_);*XBNt`PA>I5T`DJiA*-{~dIeIq`*pyZtzS#dw*mLM zKLAX4xUQdizUQdx<80ZRtxBw4b{m}hPehMXnrly|Rg6;8eT&e-d+T=^TrbyB=YGwh zE!V=2Ttby$1eM*YaKyRUa+XzfRaw|MR8|AN5L_g7aOP1~9bDF1;Gw;vf`C6C zUsj+rbK6FMGqYILI39R)Wd!im+N&LwQ98#@;;{5@YdD%56wv74SRe6`X^<&SbwQ~OcRht^nFGPIU!^PE&my_5P;xV0dc zv&z@*pgyf|=JeLY9kN-V^0GDDIC@KgKTAyr_c*90hp(}+GIwKbUry$pUi-0;lX>fR zLH4CED`H#UT2Mgu3w0g+Hh4$DF#4&c%+MVL*y9Lw1#KC0)Ut6Z=YNYY3uu@UsHP*?cgtvm?XM_R_?HJRZ$TQeXbR!nX*rN-EYe9@|kgQm89@uZN28Ue|anW%I*- z2lYKIV?V2*A8OglXiE+KR8cZ-Yw1vyD#97|oh)?^)zODS;pqdm=?%D$<#D))uz(ky zKn+=n3MbJ5O+8bUUpR$6uc;@;<`+(-E=`T7Eh(Hv+cfp7`pUu+=?j|LT{W(7I^CwJ zqgAzqpQDF_x{k`~Cl}73w}j#uFr#oLO`D*6f@47w%@?ZA_c}bJiB<`99o6{HENr4} zLLD`J;Twq`FnCJkq&RMz=hDYoc7w=fO%$C5&&Ijbt0|t1b8&)VSs(qQa&_Tc@?i(g z)DMMPtf^(AIOlGm-Z6OI&ZW1sthIJ+;e48d(+8Kkv(}*b6xYZrkeUqlaU+4B02jYafbO+6LdT)2pQbzJ*9##g)-6*kkkLS0AGN|w_Z zv|T8!{i?#nbd^v?^FDB&Kuc(MR(5US5_&|acZ|fSuNE%D8Jl%pPy28RSWXr7Ox;A4 z{(B2o&?-#@K&_-}gyI?=DqKak3H6R~Lq!p-rpGmP>ewQ@%lVTmwa|SQE5zUP?*FKL zyzp#AfNHJzPT@J^#XXUVrY{tJo<<3E6Wues52p#fLn2cCay}(A#a23>b_n&3!8*^U zM>NGcFQ9jY>Z3sA%Y|#{l1A3jN3YYt!YJLWssAw#7Otnqg}R=eF#fZ!h2GKBTT`oLQW>PMRT z1pAi@>3vPj3yuq1NXsUvc0P}owTZS0brX#lzMeKwuTWR`PWP>`I_WA+o$D*Y`RF=L zy@R+Lr&~2;6&F#QZda7FGeP%dsoFq-UeGyDELvkF>1RUq`4$xwQIg)!vQ?M?DLSHM z>kzL~^q!Voiu%&@k(PZCaXwA|qh%c^*G(bZgR=#DMlv-*s6O9SBa3ie8mDD9LbiqK zwCoPZw$L;!I}x(2G)v3oLbjC_D4FzV8!gc}UqsGrv|3X?N6u|@fu?R8v&Py^8#Hy> zm?GLv2~ABHx5m1NwrZ+zToKOly_(t%yY$dinz{mZ>7na1Ra3sk+CjH!YHE2APW`uQ z>MHLVD?|5b>N;-`W#};OXyXh`g~*2qf6+J zmYoAxFTJg07edxcf6%gpuzVl=Rm+xO#QNw{E#ncpl)O{K&wM;$mr{{XSNJ{$EA6BT zEjtZX+DTPf_A|8lGOE$CH___LXo{9~geC_rr<1g7YiK&Cd0KYIn8|@F=nO4;c+7NA ztF)|h{H(y0be@)N8{Y&fretD?tEe+eoff!?wqz-TcG1OIYG1)Fx*<#9TuQfPsnY^q zq`R_|L08j*S*pu-HT^V88FVeZt|%X`@7K~{P4W7EE&aEqZkl*zU^jiBsRt*X4eDb} zT~yl=xDGFDDWAW#whdICrrsReMqj3&ri^h13%*PvG_@J~g6nClrmn`m;Cial)N6V1 zzzsB2Q@_hggPNr%u@YWxH)<-4Q`9Z=O-IgK=sQ|=x_Pqq7W##zc3Ep& zx6+528s%Q&`U(~Cbv!(*#?$KkD%~j*uPX+9jULdl(TLDrqvwP=YJ9%lz@69wGq~JQ zM6q%Eg?WGx-V%hEVZc|Qn zJAJGvmfb`r=oK~8ojJ*O#_-9>LK%*pPecQwVbyXnYjIoaLxp{7`N z4}G{OC%cC)(eS72axXonDYnbK^r}O)j}|S?mD@*agi^M?k1h~uC*CkWSa=_8cF69h z?OJxsI9PZ;?G{Sa_W(^hGpF+bny)Et=Y!O>G$(tIdNswehiKWdoa`Z>2K^knD-(Ab zMR-dkT+AGXCjAx9gDjC6G){IXTvGiRxD6;OGI1Ng`QHOHaeK!3`K)B%MkNPZpvTmj z8MkXG^D&--CMl`noQ22E2K{@`ZX1_!;zQ|qA;|g};&z-LC(>%{?@io&+4%7|25#6m z55IfeAF>AA)Io!Z`#swlF5L3*^SLN2;}KhVX&3HzeYnBn{Ci;k{`OQH1-FM;s_dZJ zd<)(kFs0=NrAt_<+QT_b-1~982XTJI%o@e;Y3b2f(nkf=809Qr(79smnKJs-(2sj0 zw9U50{dvrBN?%3aP28w3f2a6>f}h|)pg{_%HY;mH9lpU=1UPT_86Ff{O%ktgj`g`k ztp7^XYw3EO(*M8k_(X2A@|hQKmcfmp;s7^sbH%MyR{d96s637D59}Fny^PT}W$Y9* zfSdG^_?5EowK7Kk@6b7F{k8dVuTY35BZU;krvgvh|ANnT`23xQ;rUDvxs75PWt4(f zO3QFEehI&$@DhIG;w5Ut=LCEv;WHVZDfmpqXBs{y;xiqelkhnipIP|i5wAEwKsVlr zV7v;@kFp&&#mp4gB(PcFa)IXvj0$WAG_b?!7+XqJa+<3$eu(o)yU{VWif)xv>sDE< zo(2bZbLL3T3Djq@{=I+(?GyY_z!Pb|a5jt1>jb`HT1Ct071PzQ2JrTp^>mc@ymgS? z9oYuB9s7!d^eA?K2hATA^+}#9!1?vaYkNFsxiL;e$|-w1j6v(G#Yuv-^R=_g4Xp#3yty6 z(_##_zE}bv-NaJc^k&0rhKea5bucOgyTZv7SW<9fFI`LN-O_%V`?%^Hm3C+2z5lJn4#D(gJCH9ik> zZxQ%>yZwrJ_V8)eE9U&+Gp$zXMXU6pReEubwZCEwMa5!AiO+f_S_SvtP z`)WRKbx6z8^wO}M)^O`^@r~e*ZeUN?SMzOavvoto_pBZCa`lVYm$M}=6aANo{yyu= zHOr~b`fd0TLUE*~GsO9e#LxV~LXUO~Hjkc0CF^7<7*DcKNlg{TAO3K5Fs3;5o(@%5QW{ zHkOWH&bcFsXtKel(MK&lg-$l63qBk8qgEZxx{q2n;5>7V@kk}-xwDe-pVocVwb`n! zy4`gr9jkiC^#E=5x6yv%^ZoYz+H(XC!Tk9GBukaz) zOpN$Zz~9z=Y`h3P@4EIGtY@Dwtj?fUM8hjqZOPwUuZZu>H0px?a5Wi!s5RY>OTFKf zdcP|*HcK3MRKpjm-!&gKF0N^GKPr}dj-JSy?cQ(Hj#&se9QyZ5^k_0N*wN1v_!H6j zs_2|X+?Q8H^HJ+&{CeFq;8aydQi;>UzZ(h9`MVxKaDH`%TgCmS~tI8r~8O z?+gFW!vC{yhFinxCwQKQx3n0WjhjZy@VrR3);D?nAvs-Q2N&$H8bH&$qnvChSU-ujo%fD#7Fy>=pvvulN_^0&rp!D>h?&5aNS+B6J_}cQ>DT2qzN~M4}0fJ8x~6&Dh+StvU~_LNqY=8Pa(MM}t=6>GGY2w!P*(Puf;x@=e8i2Hy!*nS4)CW%B(*m3g%G zm%a|;blfXcncItg>8mnp${F%)LY4U_IIS{LRjx0O`qZ~W+IE?=?J{Xqt608OEZ-`Y zUv93eJumNS&_ct_M7W_5iLF z{<(nj@D9P*{&{$x>ui6E;4K>8L`9`Lg|kyQJ8^&ZxzeYFb5!7O@D$*JQo~>kE@K3_ zOREGQFL;yS^9;^2&*0WZh0`w5KEZby-2Pp{*(;o<1s)a7QNiCs*;j`dChIp$uB%F5 zlfZcm}6YyF3 zap^eVZvs9`e=2Qu-A}HvRu}8(b8)?w3BE`0I|SY-oCAVCEATnt91;9C0?Ex~ErDTy z;{?{Y@261N9Kq)aYzAjU**d{n1h#`Swyan1odS1(Q(Lx2@H+(V17}*<0l}XY_#!y7 z%8m&B8-eeE^I92sq$L9LJoi(oJS_M)fi>U+D&`2@BygU!RHBV1}A^`I>Dm?TLiX)UopH_@IHY%1?~~JSKtAGPYXOE@TfrYNqYo_ z1y%{1Bd|%}Iv@MkI>Dm?dxg_0c%Q(%0-qLmR3PQCuNrx*KP-5a;By3T5`3NDQNeo! z?-P8F;Clr>Ao$aQ9})bh;CQWt^Ap}e;NL=f0Go>E1a{Ky z;&lO*_6E3BdjuXBwv&EWysk+20`~|!An=Gl3bND{{4wCV;7;l+X%)N|`2Lb`h^2D` zt`pcR@Q6SvW@%X99D(Zu_6j^8@Q6Svk(>hO2wW#{kH7;0j|ikv$tiG-z;yz91?~}e zK;RL9R3`Za&JoyK_83~#EBGFP2ZVD#@FN1LTuKR?BXFI-UV(cA9uRm$AXP|yfpY|| z6WA+okH90tIS-AHoC4 z9wU5#djuX47!C_xV7N+ffqMj=hxeT~<0(cD?rOhcJZ>B?-Z4HgLgr}vvgSGF`=(_L zvre&ASW&Cfy4HHw`kD2b^`3R1Yq5K!`!;v4=Mm4xp5J>%`xf|a@ICCCn)gbc&+oxW z+>7(JA8+0j;<aTwTA)S zD{C4aV zKofpa2Yec!34dt-J{^#M^Y8@VGXPE8bW8?*5}=7a*HqxM08KgtB@CJk$iL6}IpA{u zO=?03erC___Rd2Ieu927@RcZG;$K%d6>uYR;hj1_{8%$`;XVyd$PN4^*#h9#;TgDr zCnBc-zaCfF2HgN?;`zcEz;6LG=~g_qHs~vWCVdsZU2o8BfF_<0EC>8LYU5k~mB9Dl z`7__-uLgcQ-caS+`LlrEMdtv&8_>l4`MJRF1vK%b`+VT{0h)9_tp)x7pozQdDDZ~> zO?ntRMZCoaXyW&MV!*!%Xku@>5%?2;CVh+Afqxs O$VfbR!1={tBTYtU1GCVf}l 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index a26c4709b1014d8cc095a2f60af59d725c0ea4fb..4f0c549d3e1e67721c252a7aaa4e96539550725a 100644 GIT binary patch literal 241152 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%0A< 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 FKLCZ!tA79h literal 239616 zcmcG%378yJ)yG|_>aOnTnS^v^%SIBG3B@ddBoH8MVc!=)APGCjDo|KW5Ytm3qPQSL z0YQwY5XBWiMNv@^7Zh@zR9B))9US?A12R$MaYf=lKcc+By0E{1{iwbHdJ^cN--O9W}Whd=B^nDy=u!aNm_%1eM?Yz@Y0FcxPNKR{gbM z78Hr!9OND&1i4PM0)^j`f!9TF&KCpk@5%JK z4VaZXXCuiO^O8n#HUul1E>d(Iu<%<#b>?-Xq(Mw1fSHO5zJ!~M~K(Um?l+3{S^!M?%%!AIwG?)#6^=j?dG33n_n zB#(E1VQEHgr;a0$2UUiOcNS&9RP~;Ol3Y6Vx~(YEK%dLLHpLrwRfVEmtIJ4fZqHEX zSfB8CM?|a}=yytXPMI+9Dk^)%wYubd!W~~kUb09uBzT&Ge*blAEU)0!lqx6cp_H~G9Q}q;iY=V1hEj?q9Kl0r zhr>xWl%l-oBpXVp65%8pN+${Tn-U$7b||fZsfxuUD2BnqVNs6BZdfux?vRm`aY7Tj zG$NHFDgWeDkvemdijiC`5*|DxnJSE+a&@{Q*Q5OPDPBb9P)lb{@JdrWKi%43Z#u)^ zs3S*|ZD@*Tp=d$NUXp>{EgAipjH#K7J}1MGBlMCCg$gqEMFyp6$(WPL*v4RxZfmeN zoo#T`MMvl(SqeE>W5KnQWX4E;DY+5FO9|cYrO`r)+MvmVEBz+cDUI|c+f7jHzFebS zTCu_ATmo~^*O|AZhFs#)n)KU#NwlkMCaUul*>;iaf@`IQK)^hXUk;zxTE9O?3-eSn!p5vHpRu61$4Qv%-z@e-)feu{G3(f-0| zFxa6scthsflS=8Wwx3I0y^WN{x>SwxGeaQYXpUeAgza;JArJ;~f+2bJsvjNYN2o{5CZ{QpBUUl&r6gjs_j>^Rp1WPc1$+ zXQ5Yn8Mt4Hjsr-S;|0|W41vH%?+AuKI3Xt(0^!7*V8{)A|Apy%)N6Iabop{odVIMk zJ$GqvCH*5+R|=w&NPO8H=$9(&N3X&!3(-qAipDk}@~~6j?Fgj%tou!xbEy_~Rx)uP zKwOtUDr&V7O~ILJVP)aZUn-sDv!!$@?YwqrKd90wTqv!JHYtT@E3H!R)K2{&rB=9* z+C^LHLbRp6X4-YTXXCI8WCN`-TQ@M(iCs7Ns2^R5Sys)bxeSc-&t0`M$XNJ}zzZA8 zvERUI#YElMVYuS=M-AC9PqbisqFdUD6chEhM13xi?CyIPXZ{%sFZP=|QNWfe8fS(;!5bDSt;8-l3TC%vMUreLCFqElTO?&i59QH{+xF zkuxNGe+sE_?*M~AdZ5AHbU%ZmE;{N(3pZ|3La*l1pQZGBXXzPHkQ1c)Wa;;E>0NZx zM|%1{g`!uGtUU%ZEVcTyT`Y~C?wZM1=wvu@)bC^{Qc5~Py?NHG^ja#Dkcv0`Yh3zQ;83WPF~3!*DksH1}s z-yaNIbbK4`=;w8>F{I1cJ0^?t(9GV4W%fSA+1rt$IS8iC6jG-`oz0-!)Pgq=8Gc0P zJv4X2#9Hzo1q>TklljU)Z^C3#%j@XyCLT(=YZ=Stnsn#%KKXoo5^@?e(poKiq?C8c zDXoj?`&fvV*BUFh$k;=}eaYGq`7{+BU9Py-yBu9##)$82C3)CGj@@qs}tr(I=j_)m^NoU7*ZJSRq@a^dMt{cy{rp>1q`0&6?=hx)SNO zOu^ssG3L~)pE=!Nke+6+H$BDRsEgK$bZGD_Kf0f0JxmwoYh~)X^0|I%Y8<3TxZ)hC z{A)cbf+&JU3bpuUfN!N->#sVCjBH>(6J#v>lE!HDECZ_*WBrR#Z3_tvkCr&~(Nu%i z?eusDQR#VBUOzqGV31y5us1!|;HZm^b|P>3O@*R&lB_+}^*C8;CF>$fSQB1DARM0)3@LEFJdZF0 z&J%KiArMZ?35Gy8DJK{LfqvQLW(b63Il&MJ%X5Mu5KhhshCnzaCl~_Z)SO@lgwt|@ zArMZ_35Gy8BPSRF;mn+12!yk8f*}yj&IyJ}fpC6K zFa*K{Il+*E^)JjL3?br096%NL$~?l5JObaJ!Ps#KuvcS85WfdUtZB}43T-_|F6CO- zLkJu1CBCx~-v;Q~&{G)>EAj2%PlUr^=&&mDgPBa!yvXaAuW6+4s<&`Yhv$Wz>(8DN z)$lc@HDD8kX&jpdf1j15cX?l9or*KX8|yoUX@+f%4H7TD?STF8t-1)!f{4zX^-J$O zW&zWdJGre4;4gVQz(3X6W)Qs}seOHsg!^H12Y?;9=mWs6DSq@pAhXQqL%`_6T!N@e zrTZ`PH7#1|kZ;*+i%xYnHJy6uaA$HKMs0iq!7DT3$+ojs>+2kv8dm(u)a6s-j}kq5 za&#x))=K}<&PurEf(5^@>FBo5)Zdi61JOypt*^V*RzJyeNM`Yq{Exw@3A-1BrzJIm z(~};9Gm<$5XD0ImSIdHC`y-Jxow5ee$H=1=_FX^w%K24H)Ghr9c2@f5g_WuEYD1Hu z_J|7X6-*W*3zln{7))?;tzm?$R5@Qj?hKQ=2G+|Mll)p3-$nGydA$yq-7&8-S%rv( zrE0J|2nYJCrW$v{7*7`=?2A9Hz_kRT*K%=j!xq=S*|=>jZt7;^*jhv8w07Kp?Zt-u z(I=G4EQ_ArjxJ;wS=@|v-1ww}M0aK?&YfE^-zj<9OvvoeAMK&uc(E=Un`BnYB%PS# zu8mC6UoZ(@*qlQ?q~Oj6LdZCszcAMhCpcK1VbQPmJ6AXdy#++aXgg4~` zLm<34Cl~_Znw($=gtz1bLkf1eHjgj_&g*i5ArR=@-PFtw2ye{^hCp~*PA~+*^*O;1 z2sh*eLm=Fk6AXdy_MBh{gqw1LArNlP35Gy;M@}#VojyeuZvAfHHRwl}lGGcYhF0^V zlW3Pc(Y*wQ`@-ZBdJIR4KcjB{vt0aW**KnWv9;}JMV^!48Lo%P6(&KUEHSGci@3@n z6v`r49TjqZlSPYGl*;<0!1Ffa5v|B`_Bft(#v@vh=bUjoUoalgiaab}3VA(kJfanO zSOJ+bf3aAFGG$oK6cYc-qD5;bZqHY!pFr5>A#itmFd{=6<<;L>M9zHI>x z9_={#<1Z57<^qE+_#+iJ9T{A8KjdK+X?rq!5A^lL4@k(DxkP*AqxxjeZ+sQXU^^Q7WmPF#lY9wf#@6He*6$ux27Cn?zFXh_nVMverI3TP*0`0c4F8OT`gNb z47u9Bw5wWSg7|b8e@iLJK(nLh+r_|l6gbx(30Hkrn9HfpUvokHJ%ulEdQJ4lX%W3e z1*Qy|bMFkCrLsIif?B`I(q9=a`_=1*JNr6AVElbztT@PB@XOH5GI*jB9olWYA-^yB zfijfLP~*EdTQWaPMm4`r1?mr@w-L%_d$L2Q^~o0bRK6L^wXvEv2U-4b$zL-vVX$0U z=4RG@DePkc9X&?ArOw^ypgq45T~8jvTlvAH(xh@Fx|LAp&;`(M7)O7X(O(ArM$x-` zF|Re^UJ&2jCUVCO2|GZ%NyJVu-eR*xHP!jJib7Ycs>e8HqPwa+%bPZNQz%$whtGmVwl z5Vs_&MYkm481r2cldLENv~k@~&>ChA5!+zb`~-quy8hP2M^K^`gz*n$)BdHCeYc-7 zE#qDFJ{p;0@*PtE(}ckJQrSBgJ{oNuS#wr{FMG5WT4igrx`_0_Bq;P5f(rRDDq=o%UjXcpWb@UN1V%4(f zE(P_H%OtFjB+JHp@dRXVuY4v^_y?5HK>t#1Z#!X~kn{4JR}WO;4^f1!zWLogMwoY#9`l^-P<=0{Pb+eP_ za?-WBv{Wy-3^Tn%b2)CV9R{S`s2x7;k8G8@fYsTpgZ}I*ckaw-{;h+qz6Sc{sEOUm zd6!%B`rZIxuJno4VT<8S1V!%?SzCg%|Ak$CpL2_y9A)ZihDL`gE54i-JnD1oH3x|F( z_@PN5agk(M*fs?y)Pk?MKHo`n?bVy$vHPNauv5A$?D6~77OL(6ig)W^UkxL5g?`6c zOj^TO6FVgCxe!}V?GH2aR{G4rL$vMh8d@33gyo@$sJ-;j?sB~}>+Ej)YUGbZ)XUDu zVPAIzBZu%Tt5=r6Q?KMkrqtb)dZk`o@bmsUJ@V2*K63JUS!NBXQ^i`P3SoTnyQ_WO z9YfpJtM!hx-L-nHuTrhoG9JU0cGc0MyQAJwucFA~6?(Ga&|jk-uAi+`S)zhpxgJmZ z5<8M3|8>8g#?{w}f>SF2t>XGw<`rix?F<#;#^pzJ@kMv4{tx$?3a{aYvmt{$y8jk<%!fQ&sowY*iEI8yXTm9} zY-hw@aS(%7XJz=LaQ4aZ6EMuJ#OncFL))-vhNAS1RRd#pq1Ykk0)K zHJ*l83zH8aG5QVoh#yi__Z2dl9zO%UZzql$I1N;i__v~sm7D|a?+4}RZfR6Xe@6s& zJDP$)-`YDWs)%O^%pEMU{a$RB`%S@|E$Cl+M^)^9Fm|kPXKn>UAbcz*7y{w0oL~rq zyK{medDRi|aYY>NH#pT6rV3=Y0MxIz``N?Tk9$7Pk$cKy*3K1NXD~?FmLptBnKJ@= z(>EI&b!^drn3DS)3PpdCW-Xb_b|mx9lF3MEGCyiCNIzn*lrlXunIAMb>ezHfKr$7I z{@Rjx4D~#(AoEL>#!tU$Fi5{_u#|qqU^#ujU~hWA!BNK^;VqJ_P(k(~$lj@7gYR1! zKYh$#kp946DSgynZ~BPAQO6dMS~3+X*nkm1b8Fe)dD(!;ui1c!C@@H`H`trL)!?X$ zjt+IQ6pH?*rMqO!FUVplYO!g&*rO-yQ7C2dS&b9PCmc~zS zGZ>@{Mkeds21i}A&Ra>ALeW3Rm1|)^7Q;Ph{qzolLCPe}WHCEXxm>i4ZAq3w1zEeH z<1S8?`607$lf_isWH1qz3`dTRbTSkw*jzGpEy%bxlku5M#;2VON7hL(l|!M8WGr$r zUXXq6%4E>WtsHd1Du*NMh?!(46#c7Z7x@!qY5D(^nT)Fp1}W<}WR%j?27A+021gxR zgr`fULIod{5A0shjfEmI{Pc|mgY*psd(+n&9Cgvru}+pk1szqsJ)Eq6OUJKU8bAG} z!61FeU@85E!QS*igQJd3=jK#Cg>)+_Yx64KVkeWSN-h17rSa3B7!1-M8|+OVH#q8| zb@)!Q6pDP34X!N>_mFv*=NBnJ6oR5nruJ) zy}=;;gTYezoWXMXM}xiT?+lJQ_UL$528CQ1tPfLv!_vPc`xlnRPk(7JNPlIpl>XXa zIepq-Z~BzMQO6#=+{sp`AX~QD+sO`OtNSdCpMJq$kbd4^Z~8fdqb@pPg(6!i6qRKw zE2n&(DX7XBO4bHTm@`zVCcG zFxZ<;FgWVS(MhiC3c0h>^P&z^Xw=5pVu_R2DO>y{v&COCTm0GC!jYq;PM$)#Ravkn z6G4^9WQ=7pUd&|t+sSa`h}Eg;M4^HVwJ&BGk}*l;*ouqV>STjKS~plqrx@%_yA6&y zwrIJNsgQ2NSsmS*o6nG99Wi3quT@8%Q>~QJ&k6+TX9PGjeV<@cq4>AOx)O!Dnxwj- zSy)|t9-7saAxO{biiuOJuKKdN>d)$`*VUCHM<+WS6ncreV)oFobC}7iWb(>Ro+C%6 zIC%;c?7SOgW46$eF(s4Hoyn*>8IByC>SQQXkfFL_R?w=eKC25q?Kc>t+>oR0O6fF% zz3Fs=qmC^)Ez=XCtE+Xc9)eY0z=(8U&#MDte#L#^a{5JRRL%Xe?*hLm7|$T-;Bm}| z|AF=W?QFw04q!A(LZ_2 zD(a2C68l795WPT-=?o0YLTvh}ePaR3$1)4#H5X{vJ$v#3UFXa%_p^EoSVGn-V&Hc9 zDoT>w72X#4JTR~wpmTPoTN8%6e+d;>7KYb%cT{K1Kf2OgtHj&G(!Z>`vtFy)e>?zT z)>-jfK#O6c=z7Pj>N4#HoMCL$Sd>_~Re>G)|h2!?<7+M|5>V`TGYRR($=YaDxUe{L3{|jqm>eJTJ1{Y)*)0c*WV}A3?M6!)) zaLw?9K|k4%G9({3gNt;DxVv48M|7FTW%iuDcqd@0bZi1d3<;r29js-izZkYdB)Bha z$(`E-&7PAA+<-MX`GWHKHkZcENL@*<`4t4yP`@frPQNBVANruda{3K}VM^uIfLbNJA=LHEQ6ztJvzhnM+!v?5u-Um$zwe8nCnY(n~Q+A~q&A%2H4AO-LOX+-r<#ZQ=y(tehz&GmH zqjQ|@3PpR%uKW89M*cA9=_y5wtYM2#>M1({x9dvf9yYlx`rwSeRL&{bYz97xRqdC} zV}h8uL%8ZlGP3QQBS6N&9n_)iL%sv66%(CHanf&M*$rKDlf5uWgT9By07~h@5NW#K z5}@gR+h95U4lqCK9(oIQ_qxvK9*p+N@e7aD2yI02f+=3SgnT$O_Y`7-r1Pxthvwqx z6fcY!`{;Qrv!>@vg-=E?Sa*biO$2W z?(9lAI*?3PFjwYy*T^KRY#p$}Y(sOoQ*@9O3AysI?SQO!i!SUNX`Cx=;o_vVGK+ieY-0Ludz3JfwM;%*qA#(6ch1}e$)i<%qQ5j6; z5thbJk2DyhM;R=oM;k1s#~AEQk2N^z*fl$nY=sK4v4VF}LH5fmjh`N8kSE6smeQ9S zET<FEYXoq*_KmzhGDMy}3O2drYO&WKCTv{Zh2mcbxB+h8eug~8tR9D}2d zExN=>RVX@-OS_+C71NS=zNPVX?wXPX>4gSM=_?JEb*9=%e6hh%#~#H_wn7EjssmOR zE!me?8b6H<2I-{+OX;f&mea%__GuW>n_gyc)TPt&W2ys%Tqb!PoKnbRg(dOR%MAwU zs|}XYD-4#?*BB&^l@2MVO+$LqQG=sSfS$%tW(v8?2K}I?6nD_JIY1xuXAhp2>=CAQ zWfyUcALLJ@XAuMaAMXE+V4e|lJZ|i>e%%FoMbChkgYmkoNmcpXKDQOeFkm6*JR&e;d1%`gV^VThV<%201Trp zU37)ZM4|C*kNHz8j}KcCU-t}18l)dJSW53SSWZ7?kUZ{kNIAXRklys;21lI$JvJzf z6mpsE&vBB@WH-ijH)$ADyC~Z`Fqq}kxxLz1Sy7_p40lxS5UdT&PcDG{5e4iyWP9Q` z`6x8F<4+*kJ%hZE!OsZ|2fypD`XmuHiMa=4Ec_JL#-~MFt(a&fC1Xka&2~u`_nF7k zScu#U10(!r02;~_6twVys7Xp5mRI+Y2liE9k&6kUGZZ?UM*wz2Tr>)MWDM8%@#hdV z?Dx|HMX!Nt#P8$T!}va^5mRaHBlzAh^*tn8#Ge=Uwhpctp5_pAmRt^uL|@3H^$kw9 zyj!60MPev&<8BGPu!r|nJODP}M@;0y_!GL^FP00L<-AnXmp7X#2{ex^NG!$ov_!hd zLc&cW$E8fs))i(mDcg~k^o%cQ5Vzx2+QFl71uDm%YLzI9E*5Ds(ZxcQ<5jIvZ8mi~ z`tqKQY!Q?SiLVMKl_!PcOUC%|=~me?hH+)v9K*QM!Ej}(d|QyvW?02CVA8l+rqT-n zv<GzndhfQ5aU<%?dOZfHWgA z$v%#+_0fgWhX&S%vV^ENj>}{|g0x@-Q>qypa_H99)bUEKPSCo)!C=L;ti!sh!&Abh zn5`qKTDO8&_Pf6ZtKfrz3;cG6)(X5qrX~mats^K03zT}}>u}eC_#1%Ep=~PhLm=&> zU4GTN!{G{h9^WLY5TxZ$WcwMxQ6BM;5zhp7IX&jmkC;yh(w@KF)C- zMvgWLUZm<$zq*L>u?ng;zK!S_&wcj{2HJhuT8BXWj_48?bp&U)8gj1dJ216QgRal- zeMtr@pnBuGnT&9}j5kx1wv6v>B;x}VQ6qt}ZahLHV}$znApSnr_)(#aA8_4h^iav< zpsmEt!5WWQ+Jb~@$UbO1E(y7DR3f)N=%MVaud`AWy84l^< zV`qG4s(L#jm0`Gx^E}ss#N%paL#Q`Hv6VD5(0Bq_@p@g%0rCB&%DXLh0AA~m{v4T_ zBhwsmvm2kyud*@wf}JKgEO3K1XI=JhPh_IkNuuelw!@;RzUndUD(J>uZDhf!A6ek% z1T>Lx%`fRZn>`WgvF09ptGOg${3L8y@~1$@WpuSNl8u#*>Uh-;P4q8{`TTNxK8I|a zk0lA?Unw7#{MQ@j^TuL6th?%~9=Cj+F6Q%_@%f}1=VM92_!;HnlK)oue4z0=z-k$& z@vJbFq49fR;%fXsm@LNW+-xEjJqInijzV#E^{uXKq0WQpoj06a(sa+#;qCp|%Wr~p z@gFx%<@|G-&87=BWoN4RW0hlDrjmw0_(@JMgr}$1P#jv5#`VnqN084dtRCGcPsH() zdoYdL&gL-+CE)z;pH(COzxvEDfe$q?n#pS zKazV>F8AW`a!*3;<&wKJllz1JM((nW;61t!66YQ|$qnu&HYwVpet-2T-d0v$RvZV^M0gbT$8>ThLc9%Jn%iUoOwKka8sb3wI{dUNG<>-AX zLv%Y=+W5f$m9I!FyZJQZ&NwRbY?}=89L`2`X7DyoW#m*$;1-~*kS#E2_=Qw%9opj1 z+(_fDOKp>+R>-DP?N>UicczOxpSs>Z-yq|VCL-4HQiP@$+^W@BWXn+Jc0AU`?B!du zEp>bPuVbj<0533WeU6FIY|ZY+mXrKv5E`9|EP zB6)9B&S(8>s5$B;@&~8AgnUGlr?s-0zQxiPvKpAyN`k#|3kK^Vt&@3OQk#-vrFD^3 ztb;diHZJEXuZy&H9DIZC-e5S)lO)cVF1&7NLXXSixtHK5*+ynNtqWUPD}(B@qI(4P z`+p^OBnRtV4LoR)6-k0iRYu zKk;SN?7a<++tdbvfst@-Q~`~v3Ufb>aEHP*h5fh_ptYGMG49o*U81P&e0%M#>t`d~ zjnq7UqGDy69?D^HbT(O}dgDooU*ktx0sUw)*O-$$IXVS2h`YI(jP6`UTSQM!)T3y# z{}%Ev2DS0NJU!i7y9^Yl*F+$rs`n>k<*Z~pL8u#;wr1xJozt~yc6IuM8Q;{1^HDOX zaqDiL;|=s)CnvLA?ueUwnnwlEG!S1ep&5#}&sa3-<^Cpi(M`yjGb%DSviVHnHgEGF z%Hr%+tl6BG_{iqGk+Ws=crAsnM=r%}&tmeD!iZA`G|A)}%_i4hr>^^JUdFzHarxo+of!X70aI zySSk>sox-KV_O;KNkg|2`U^2Jx^KvbdqW`nJSP|e;mMp}2!y9{f+71b3+Um|C%g99 z$(Elho9LHZgLr#cjb_rOSu>&b6d$Xd!~^0voabeMjvnnG(xQwj3!&k&q=_QM;RO-9!M!?PY~ZH7m~@Zf5;R~|&~mMe@aoCHO`wxYjBk&N<| zPbq${f=mG{7~iJQDnEJ()=U>Qe{*vhQiD##%2M^TPOo?ggZ*y6m$jo+k7_!)S z58-O)4GzE5N_LI@NtujxH{EE-UV;+6Ae!1mpf!#CeEMS+WO_Wk!Fik7%Ji2wjZd!( zRnMkp)L)6}NB=@Xycc|a^uIY8aW02vpx;kEn!DA~UprngxD<_jA;(J;_Y1isuBluE zC09^s2Ip?&1re`f4)uU(G)8(o7h`?U0hE@VU)Hv*eAz15YC=00?T7r~IfXJhhE|b{ zLA#3T)21PBHS&TLj9C8gR>2*D>e?)SZ4x%Etni6nbHIM(AMdYh*!?&F*rVGHH69Q) z<+OJb5N4ZHOpe8#bhjav@g>kRC*Et7uU_RdC*)DSY80R``*iU^BpRvujJyYfwO;A- zQ@yxRWng{lU1eoBg!ueG1>4tIIYy@Y@nM^d8K!7sz3juVt>t)PC37_yOIka;adkEh zCz@G)W@~^f8dX(I8eBL^Q!Clk(ayyWkCa3W?|#YQ8rrQ=J4x0v7FbH*10%uQo&g&KKgL#_R8D=N!9_g3*{Zs+!PRdnqZ35H zwe`EG6tbFq1$1C}X`S7bJ z?sWX=*{nxWP`!YK*Z9rf66RK=!T5B<@SML3oI!vM(5qaKSIjofgpw+OBL(qUVp-JF z)969<)iMl~r8(;h*po$SwrAIV`*d_RDOSCLi{0uy2V^WfmuurZ(N-%)UGC7T^A*78an^nZF5Ho6olDCfOZ)S)2cKF_Nh z?SlTDTh#uwQIb)owy9IsMh#J?U3U?_qSde}T`ydY%JaS##P1`q3y?7Dg$+45hcYu`t?Z zZnFKk+Dj9cyA{8fuzR)LM;P2z4qoM64ic?`BdMI{UFvp@t|aJs_~m{yNCoQ|^^BFC zC~KF+^TJ{psVAL?@C(bY>|Jlc@~KPbZ=WpOC^k7+gsJiBJUiYXVvjaWRRW$#*PKUh zG6|xH>)`U_Y!WnH3%eg(#Z`Ck`muMktt*uJiu171P|N>Hc7k+x$5mCHKyd-R-fn1^ zos8saq$N+hjf0|l&~Vb{<-}Qn9m?@8Wa&bjb$lJU@#v0A6BhWX7k5_Z&E&~&`Fa>r zW@dJF^j8Lh^cMz8=`RiTrcW9ib!-t;p_3O1MQz+J8skxn-nBOrzlCsi zcA4IveBWZajP*{X4`=F9c#NpM^Hj#5a&?2GQJEhIK=_$uSBG$zc~@7!W}lzGuy4Wj z?uC7e3{FkW3DaoS_=}tB{q$l~ELwb|HIHWK6heP_4F^5b| zsy9fV+0&9K4w;_JbjXZkfkS2{yE|m-WQjv&C5Jj>c5<{s<|Hq7$TrDxhisdi<&f=? z3mvk3vf3d7$(tN9H(BG59g>?J5+%1eWXI$~4jD}Da>!8fDTfRv_d8@HdB`F2l1Ch} zQ}Vb&c20ibkon1T4q1@A;E;t$c%!MjOESeFyCyRovM8DBklm7<9kP3}yF>O!mN;Z_ za%Aa!j(VLyk=r zIOJu??hZLF*~cNrCx<%Z<;jT-IUza2AtxpmIpn0|3WqFBu5!q-B-NX&%x5OE9CB8&i$l&%4tK~ak~17~PI9?J&P}dy z$a%>PLRPDv)RBR$IVY~&j3Mo2+y&ISDxABjgZPLQ80V@!t}DA4k8mr@eT0Jh&~zpC zl6u~3yno|5LXCy=qpOun9rd2-$AN2z5!}~>n>EF2z%(T9(SZkK44pZHAq5GCWDH$7 zgCPY8hi#PQQCWhCc>+TU369w)!SPvwNqGW83JFfwD8aHU!B%+!LkbB_-YCK8S%S%V z0z(Q3&fF-$Iaz{wp1_bog7Y>?@X9Q~lsthUg#^5e-!^5sa|T0T$ZM*RG4$jNh7=^M z*eJ`_WC?on1cu}Z=IYE3H+pR@p|#0B88@!gxZUg{0V{{800z1~zv8~B^aiIV{ig8v2BTu$eAi9x&76xwzj_m9A4b)Oe^s9O_vEWVRJ9Rq}FPm{iV1-wEf=^PYJeB^m zlexr(X}pbS_L$4vvgJnKJCL@adptS11>ztjnJ|;m@I>S2`}Nvh{U&+$f7`tWYmqCt z-R={!Y{pVAv)K%?rIcF(u-P8Gwr$Sl%(0i5L(G_CmVo;Z6y~@Gb8I-tZ;Fa71PZoL zlFSyo2uwO;%9$(^GETWRIakiT*K3k@-inq!GZ8vYpBpE5-gV{!vx!2VZ2;(Vdf2}w z+i6~<*@ay>3%ZuRs==gB-+$T`p5ZepO(rfSed8yL-$nW40k;A(50E@m-cG=MYYLS= zB@ZAu9-s)c78vVAu=4<=Le9I9Q?c(%?LiXWqPDR^ZV#Uq_Rl+%SE)4>a2|Oeh3PI$ zDVa;kH8Yp&$GNOP9q9nfS%KIu`?Lyly|QR3Vxm7PP^bngP>{K#Wn?aSP41E+$t5i+ zcS!|Yk>mGBlm1jzqyo!wLo0}xq+Tv~XPcZ=;C{QvH$9IsYJbyPh}|+LB_vPfxeRFM z@~^!p?i)8&*Bc1p=(__ci@XZ<6XDI*?yb4JARlr;V*xuo+DM<=-7&{=$f z2t2+MYJBh}{_jkuGT{F^35*VNRS)=CnJ(pHL42Pq9t&?rSidFFUF59C7sB{%Fl+1|2N~JVI$GuC*GuVQ z!O>l~PGO7tb86+RIBDgIV2~IU9P4EXIm1RCrK8*U1d=#|neIlAx@T2e(oxMY-2*}v zeu!}VN#$LhQr6vB<*g3J?8|HV1mG&2&>Y?p>#=DWAV&C4h@f+Z&G#4UfWGEM^P{qEfrOE2< zw@^opCB6af-Pt?I!mbdz((aVRh3u*R3zzM(OQGmnC1=t4>|U~|kPAnveOxM&JT%`4 z!ijj2e|mw7NBWJUUa`1(R?x}KgBf8W5~h&dl5z3*cZ?l?twGnB>NCp^=W(| zx|hrFo|PuqmR5a6l+TK?WAr(IBWK;J(nR+uva8ZmHFvFl55k8DiJN^e#Ge5M{Qz<%W@Z*tFoS0 zvGS!Vbw^h|=2=#j1!LX=B-_vNi)GqX<;ytGq6eW2pX~xwt18`t=bki|R?d4_-?7D}{`Z9&A!g5vGa{5$i_RHaVi7wt4V=j0yV5hbLj*nfw>#6#FAS zh#q##ng`1sH(DJWLKJmCrKk>0tLWpMrRZC*a^aAv#EX`imn2|TM-cu_F z^GchiIj@vJdF2s;_RTPP0Gz+1P6IU1^!mo!8vz&B@yFp-2s)??+eezMUHgePZ@Qz+u*#$qvH9& zOY=M?o*!<+^QBDAI5@BIxOji`-|*&TIy{Jf3_mAqxkf)NCT&IitQDnko6gF6yVdI{ zs7uPz0rXAZroQ=>jSO3jSu}DVqYt&@Uz(#uFqtE*hh&b#K5X8-Ndr03 z8G`Q9P&m>9a-`$=>JC&nlHgeHO?mgGL^u*#wY9l)Ugkn3$OPa!?Pk;_yJnR8%s(p= z>^;iN#ZN_A)^6rC_@s5X`b;P-pSj=F&m$x1uMT5&Wpy;%7sOAJ|0DCpk(pV|YkXNU z&MwNB6~vE19IV+pkJUC+SLnm|axRS2;rRgC<^h%FF<5fsf=cvd*)5zB>Xd?;$FO0Z z+fAwbdRfmzW1sW5PGKHHlA#T+_M4(=5+gX)%jsA*EGQAvA@<*?2Tp~i%F1QPhlCUv z#J^S^LC??x8y6~Sf0mc!QLjW#6Ys`_Hn|%825PH4zU@7&aX|$OqGuGVaiQe>6}@jZ zyp3fg z`zwO(Utp}4Q%Fv8r9#f{krV%c%c@sEu$u&`r?K!W)K23$BDmuQVbwX~qra-?KU%b6 zqOXx(YuL0BSy31^{|u8ePn%qg{sJ{$A5HQ;^I*$97a=W({;Fth8pMQbyU!2^m*xaR zAaK^$aTo$2$q9x)XygP#AY7Ic41usBCl~_Z@|<7@gjeSTL-LMlUgHTl_7#fEX>)_w zi^nGD^hQph5_Io}xvq!b>D~`JP_-1}mGq8=KN;*zu{GgQN7gIwb+1RE?EA&?mG2>g zxhidB6?w8IeifhE0Mnh<=P{YR2(fh*xA|J4>~pW;iT?(}I_}(FMIbpBud2phCztqt zpv$HH4$KzNl8#HgPQblQ5tsS~%<6(f#h(Pmdf%J-lae6hp9ty9_k2u@rDq_2ff(lp zZE{6-&iTl!s%P(Cbg z(bf;BZk>K_CJO!7t9T1ot8Nu&*X^~0tZqe??$-g6TV7Ik2}bud0`{s|^%URCbQcxf z1q!+=$!2voStewh?rrkMx)BorF~GMnzZMk(2#odKp8K_uAf$|tmS39~ zOONg$G0v~sNrtcJihTnI!Ru<4+Q0_}Hs zK8cQQQ?qRnao`SZYrF$OGWiy@@-10I`C*M)1l+rBu?EAiwQ^ChhCsm@O0uyvOpK); zXN@*Fw+8hz8Qu7b`g)h95D12cFpE?0c7NJZ}yUWtvU!ltq zGg~0H3b>csvT^ktDZ{IzMP=hkpy1m|f)I6CS-WwRDD+e(6vi3n-=wu!Oy)aE2&oNu?um1rxdoAvGYATNj}TeS6Q z@@=R4I-**>{eA*1-&WwIeOny(cH0_vK*)T1OV&_+SmOf%_J(A2b?i@>HAKZ40tIU* z$;Q?&F_wOuHQMCd8f{-F`1bpdIL;ol#BBWjAW^Q5|1em~7Zhmw!bb>MA1|`HxQ_yp z6RlBiY3P<<6u(ozy$Bq|zn>{CDvApf+JTaw__(3l#8`S1Zx7vVaz1po+VoAgw%YWE z5Lg(y18;BkmN>^u8~7MeweX+-L!8e45BO&(!^`kDFq6`oMp$gS>)qgb{ZB?{3hjx$ zt6iaSJ-fSeC%LHoNdfmxY1Docwby@5;+u*J2->P0cRLnB^L2DmM z8>hApE@5r0GWC z(N;MAIaacb7+VI}9?*XNRCaM)VZ!uN;&p}L2=Zep4C5mPPz3A3QNgj^ZShyzLAJt# zwhPq2QhKSL%+Qn-;(xNH(4L?I7QZxPa7&YPn!=FN=##+Qqk`| zuIe0rB>kA)i%Lro80+N>rCTm42`yzhLRv$GiLvzb5i^K!Lq(fhiDp8j;_`9-HLF{F zgt85ytzG;Ko*#M&-Q3#dexh1q#RCLd-J=4n=K`B}nCl+D0%Bj$>W^k2Q0FY0VwE{? z)KYTWOLm#c4|CxDm;*mHbFfut<`5Ng2o$PYNjB~>O^l@<*JZZJtuC`=kHT1?d<%VM z*<&xqV|7JcKS)&8XMO}DML7LbBK^^C5E0ErWBk$ZIp8BRwu6b^yd}}DEHt?>)Yt~P zy@a0IF%Ofd^*|!8&?LAn{g#OC_UgAmcmF-k3a2e zdPMtcYfYQbwsn^EeY%6?axbTh4SDW##6MH+@5WYsQxWQj1q*$j;O|AQ-<0mQ zpriB)!1o66%9Kj91F?%)31o&Z+yLpA(vc55>g%1p9qISTJF|9&A3Y&` zKW51l(cR&X3Kj+))3>9252R33yCaeXK znMd_FAF|4?*K`gy>(#f!REc(kXK-Afu6s~7@n7iEzm5)p&K9d5$@f6qI{6Wz+#Kpr zuvRCbKzk1L141^35?LL>W58tFcfQp2hXmt}KNN5uC!v2_kA1aAASxY#K%qlWlB`1* zzeixQObER~dyk+^&PRZ}k6hc{1NlBe$Myd-R_`|J6CNiD-B01Bb3erPR>+TukeWXM zCdZkY8z^}^gaxhH4ufRPRzlQleuP?$>M*TZx#R)CP<5nX9qbwfxVa+}V8QN8}kq^TjFO4^;Qw?NC;PrOIAF60MIpQkjqWO2C}vNrBM~Ts5cpg?##Dep6J&5P`8?`Vcqf zD+xk&MM!6MR>P!N@{VW`bT{I+sg-CqsM)@E#k=^j*1A|(@+Er3I$Z{6=j%+Dr-;hN zw*ye{PyC;RA$U}d2p*K<8sXNV`LI^K=E82?ue7+}GXm~gAvD!r%7fKb{H7vktpWuH zRx0Gkf%yPlN9K=1yuHd?kW7CK$0hh;DcS?3dU>qOmM$TA=IO(gYUg@5Jzh=yG>k;0 zzX968fM_u+o6ONQPFY#&VftHGv%)e*|CI_m!wRbi&Cvx5h=$Iea^0b z{NvZ}n_pVbs$lx`Za9?1@>t_TT1RgjulrYa)W%9>Gy|7{c&oYhjiw0eC*On z`vX8cEq5Rh5!)m-W{>rq#v00wOmVCNqTf7(YvWKZ6FYkJDZQcia4~D}JOU&;Dx+Lf z)kg}Ba-hAYs{S498!qviqN<(+$9g}R+f<1Va}1zs!$OR1Sth$HQIMH=xYDic zEejLPTK-tlI9s*J)#znV*)O!S8g*~&N4@E4vpTg=xbLUJ1<`TFYGWN0>3zU#^>56G z$}a-&^~KzAReSxURsx!aWM|oQep{TH(0JT7^X+3oI)w48+~^JFMvBmcMzC;}P3e&I zDYXWABWWJsj04LepkQek;GJ0WYiTdv&pY`aaHoV!i7{+s08{QlN@ zc#I+xd?m2+vmZ45Cs0`Q4*=+YcvirypjN<Sz ztNx6Bn)Xm83LPteE%ax9kdy0P<;MM)lFG?D1V=-za`NX?>8?Lhg#28v(4Q&YX8W@$ z5q?wGP5QIXQR^=1rTa5irZBBZlq(bc*&kIV*Pkgu{h45)KeICZhyF|jd#V1c72oR5 ztTa}Nas64FoI7Sd#%`fMlWhw=8uDFJ&-<{|AJ4w1KYKZV`s1Moo^|1MIKE9vQw8Yb zR#uvyRh!y}?!$F%^jG6Lw-aG>X&Wbj;^UuD0wzQpEM;QIcU2fcmJ($n2oKQYYZ(>5 zXL7Y%aFhpUYE!WIpJnkTUgkFyA&U!+_1>HJc1p*({uDrbs#q9C;?qEej{rGclxnh? zzOVI?sHO_ZlCoZn&j7oYwfqFOoCuz25!1lV5*D4!)y;OISAZh#98u2Y690vgb*NoYOG*{&c_NxXsi${bdE~b9xG&gjTM3$ zjTIufu|k+*X&sTV+%4B}V?~>sH_28%S{N%-*g`ujd6#1!R_FAiy+omZKY;UZuf={$ z4aWd3|KZ7nqAun>~mRcQ65MW z&OfBJ4ar-bvjUtp-xk1wRCe8tt6qe~I~=JU8*q6rFz;$r1`W8|3%U>ia+n z%2P!|XuuU5>&1!OeuC05;9e{Ta>eTCiGHZ+v|(M|Z)5>gyOI?B`+;q83u0}Cb_DG68br)v+!g!yWjn+YQspHkY=qbe0 zd*dT>iNZ%B06ub!^AVP<|0f@D6_gGm1XXqf@aU9XhqxA;Lw!QQIh47&)e%AWr7ybG zf2i8NXw{|&b*q8}=TJH%nREC}W!n)wF5mckKIOA*KiAYy%R_v&($+N<8RJOfI+a_1tL9Sw*%)#FC#@ERX$SmyF2HqJA zZg*Lo>_ilGvH-yIL<4IMjN}%H=@U&#;?KyZBmwiWc$iemi?b}k)ZqH8N0GC$Om3Va-QH(@!6FX z9P6cDcO8V%F}=G?BC~SyM9}?YV{ciCUjYW;0YGJnj%I3fx*PmhQW@4e z2D)qU87fwfm0$ypb5QyX7(=Dkx&JQBsVvVPSIcI(dRO#nG1|HRO=7Fj6+{l^&-ma2 z-Z5C1DGR5p-24i_N*f#+9kMq^IP)&fd2=cif93gWwNh#b!F3<55lfdaUP)rj2AaU^@Tih98`xLCeWH-rz`xWsxqBiiQvrdoUOEI< z@k)Y_QG_&8E^3(eNVLf^A#|ke?y^m8b(gJq(u&u$)|-nFTj(Rp-Vf0KUg96?7kCq=);re2+OIUZV(ga)O0!RO#Ad>^CSzM|`eEr)@E-wbSgj zt%g{aNhLk3oeAxf+2YXpJFx*pSLODae}A!_vwB9 zZe!J&tL?11<0>xaYI-=#nR-=UA3+~luXO+q+z`QL+^Aq-d)0ET+V(0A(v(@*3*#E^ zsH}Ej!nA5@f_9Ky)2Xp=Iy0-rm1sY(S~2>-xqC&e8@t_#syOm%Dx5EotOnny-n7W^ z|8;J_Tc%f=m+!#Zk4A6S=rJdudyqQLCiRZ!weY#qF%=;*F;}zABcK##o6~5|#Oz9(;DO)V9F~6fzs=kkSVgVs#;(_z?IOEut*2$cF_+Kf+ZOVYISlASxCSC|E>E{*y&a ztjQ}{q)p8&lH23spJ~}cg(%pgqc^m&U_!iZb7}UL2VDvLwrEW*2uBfOhP*7J%wydrRG)YBu z+til2Eq&MA)Y4Z47^m;|TKayLDA&F}2j(~LlweK&2Z&7;*Mf>{& zM!&>W+SfAeMMZmog7!+XW$jI%Nh)gJrsmq`ethfuTDmLyak_KPC-dV6h;r@v%V2)< zD_q;{`m2Q6x_?cfR=a*sp{!kh9ej(HP!?F?8v>*3beSbOGfRkyB?JnVP?9ZM!UUS6 zq9xkY+!F0R?jxUQ*+K;<*rMdM$L?o1z_+Nf#GvwH0;50VDwQW@DvOHB0tJH-P^i_$f2mN`#(xFA zMT;m4Eb?oC(Wkk}B3oq^5fzIF6fB}7|H&dI*5nl}(x&DX$@{#**sVeo>`@%Me?ydO z=g)xg5?`*g^WOossG!oI;Ijgwzvn6iCrd%bZc$NCprD|Vj8kyj*lhw$Qn3?jQ(K)_ zu3KU3R{n)PtT=Z6fhgC;p9Axof8^S3<9{NQxA8xNZ&6)|LEXOyjQ*9Y)U9Xgii)}d z1$C8V%j%jylT=iL>Wxv^UX7^iQ0?0%jo*S`M-#u*x}?e_h5LT%svheBEV{wMer zwU{xpw_; zFuys*wcV~?B-GZO*Ebc~^#p~ocI|_2(Gto6O9b$6f`Y3o(VbaBR4gG-u!NFq*%Btu zBo!^urskGt_i=@>TLmcCqU>GB`k!0V%*VgUVxIGrB_=k9^ZzCO&t#M3X>GJ{Y@1ld zbFRtz+128cFQ^cg5vRARg}@Pamrr7NtJ=2(Mjz&?x2pBRyq}f@8fu9+zu5sv&7&{6oT~t+T8|gH^ z{qfrD+os(9YRB^$n2GQ+O+#Wdv{BR~i+XgEsI`H8;4I#Xc>55VZ(k2=hc}Tl*(5!- zIZ5oo*4im~EC8lu1QtWEy{!m9OL3hykx zK)bkGOZsZXM6WNsX)WF%3q%UAL25CB3JhfdnKK^NWrPcI z9>$&{cW;=?D_}eM0I|L}csteeL`OUihQ57t9xFd~@x6+yI zUoYF&dNyx+-7k3w+uw#-|CQ}AsM)@A6Wc%gf3`h$$?R>URxa~}`ow4tv~%0pZE`hQ z43&EXqm+`8-oXC}{Qri3+v)_09`ip;-Mowcso?sF&aDCaro>smBLDO7ZO4B< zPA~+*A98{rc~U(~vpeO!*XBph!9y$1i+JdVwyA9N@UuOX9qmP_hs*0Zw#VI|;lnES zJbJPgmvPVCaK|q@o~mOE**O-SNtSfocmA`Wd%X__BDPV3{VcNlrXqA8La=a-Md^_A zPkM7ZYu~kD`?6YtU0Hd zEp2v;*$Qk0Tn$O(rX2)u>xrGFy4|3&dxV&;dNPB>}yy`3Gi2)r<1p*bL^ z_CB~5d@D}hh(FD|7`xB=AWAM z<^VnKNx2li(EIni=24;7v9qqfw(BnQzISA|_ux^Aef>_Ne{SAq7KYxpcfM!u&^vx7 zT_@Xh#IAcAeZ@S{Cz!NvoO1i((EH@b_l^v`1Aox?jW9f!m%lnyfsT+U7h5exbu0(O!EG@=c}us z_n}a+%MSU{k(0cKb~^8vDPA!Dwk1=%&b@Wrap&8Xgx-TS<^EZ-+o}=q-*u|4=P%NA zik0Nf?Pp@WyZ6-f@k;ZkKJUasdX5Rby}?88VoEaI``zBs`UP~E?)~&|;X9dL`_5f@ zQq6nTVkerdP9)V7@5+VB{re{2hI3{4XZN^mGS>rcn>@?=^8dr$nSfn9nv$lLDVCZV znwl2+Wm%t<)m>|y&HKJIec%87@4e4`o_l?sv)sSE)?Rz<=}hn8oUWnW%uw6mSGVTS zW9rbsZZIXGakv>;Vn4e<2A1`MFB5Y5njxnX#d)CLWAWi)I9_q#qchH%dNhZN1BVW7 z4&8!CzBX;>;I=R+uHGaw4E5U7qb(G)tQgW3o@RM6vSLUFn2;D8(g6}!9`6zy;sSp0 z;n?1LJbw~-EFRnf3xuiu8RMJ7acpmMxQ)^UUT5uRZ2t+5W`kOR zW6aPlY;R~FoSQfYOZ5+!gMC%XX7`X&dAAZ6!HUMXML&zOTBbb4`?E>AV(_H$t4~^0DJVU}gX(sgXa}93@ zE77tc)EO;Dn&Dr)$&V$1#&Ix~HN$%eB#(9_*(z>R4=?CEy4y%E_`>WlEEv3FR*ehB z`8lVH83sg>O-$#<;>}RN{d}(nrRNWylW2x#S$+Sr`(eRY8jBWjG?&5# zjT_q>Rt+3J4p%O=%LSsRU&3+RG=O@zF803}K6IcKHE5k*w>exN`T5Z1Fu(QZLtUV1 z5ZTlpLo$zhd%_@!Hfa>i^Z6mv=P$EdiP8l!a7^)Tm)R9Zd_mn!J)B_UDC)6kxLUnn zD7LW&jGNSdk{d)tZ|u_xo*FQIUL|hzR$#NH5}=A40cdU=!}+hX&TcgM|rdGvz6AWm;8(oTnR>Zdi*2 z#`me?9E0WDnOZs5aSlcDWcs8x=`7Hk>GhEE0ij5~>~rd*29xoG0H2y5FW;COOb$hA z$2!+Y(s|(5?C{|O@afrL@;an$tgAnWbPbWHT+hi=t|7KK6{{eoO}jq~YPK3G`=brDy>AY>h--2C~n9K^=RB;xT71>*|FNHOFt?Ir>;& zwYg)@IpBw9chrL`CUooxfcqIH$H4~S^FXNUIIs%a-WI=uMRDF5MHCG4n4TIvK8R=m zQ>LOtTwkj`>>qNCrf>rq7MOy^vQdea+&P`7Im(E$8?nc_S>nrJZI+2Z!04*&8FuTRO#A+{V0 zMQr&MTMmIT);aYXioG-hZ+?-Nt)t&@55+Gm9$_kGiiUFbIeK8{ae!Ye|A5Qg9pTV5 z6zMcmN>_tEWO@`_8XXFw@Fhl6d(_a<=nL=|&SRp!V~HLIT~K{X2S$wu#j_kU>pp32 zP%Wm86AW@-ni%=>m{52E+?ZyE8dQ%-k0VNfV5Zef>G(GjRNr;~pT|7F_ovKeib(93 z7>fP3m}~bMb;%Nn?~O?no6z#cq)T}E^alQ|IhFgT#n7!{Iu?4#(iZ@PQD`EO0H*psQT&7Fvel@3Plecb|3p;STE_vhD!B5r}GN zfFITlg;IFHagLk1Z9*uH`Y)_Y=(26XaB&E4!I9;t*sbG3aSoW6n)W9;0WM7Q0*O8Z zPdrn!Kod8jkMOlCG@7SI5uF8Zrqs~}HRf_!ErYsfo3NY{`UI$eZcI@@2KC@_4r3;d z3`Jc}rst*?Vf!lJITZ`h1$>5!;yl)m=n|}B>fN8{GuX&9fpu3PpDBuUSK$!T9n@VD zSK&RT6^uRDbev6+Y7(u|=P>>^W@?T!)7o%cD^}r-kCVt&UGjSzviBgX-Y5 zoCSg+iEe`j(|XobK|{9OIXq)nDBK4>o!Y*s+ju+{+y{TA&_ILQv*i)gk!1&+`g6z- zqVJ(I>w2Lj?yp5>)^(XcWENeRx{V@o6v1ryY_FKG%fddbfx6*L{#?#QL^HjD z<-GChv!j>>a=E%5^AJxnMQ}L}F^lPaESIEtie#o`T+UO> zVS0$=l2JF8X+M|q6!Ulv&Wno)!+Q~8A?p@7#e@Yi={N`Jl5P&tBAoOVSco?;=0GE{ zn5hdMhvq<2@hsC4yhg+$tVm`01WY3R0Az z>pm73=SF8pox~dUIhgC~EY>mA&$sb8 z)=-ENTbcGU4HG+NRS4|}OHk#4*=z@(drCWvCD2i*2pagfUyQOAig zJDMgAvE@DPmqc-tsf;6gT$Jk??iniaoFo*U636Yz%@?1sWem1G6c&oBOt-ndXGA5_ zW;{up18L$qQ!MLNiW^LybA2z1TTFReU#7Ut^eOk*I`I`#ZKe&PiU}`6(dTAy&#=U{ z&%vYLH%vI7NV~+hOe1+5_K62fk8`?}&#?0od1b@Cf%4(@Lf@;t^98 z$N7o)m8puoT%kYx##z^v>6*}(KIS%jB_xwO$8ukoncCy1%)vKcI53rQPy8aBn2xX) zp*b_1W1UHJVZsY`ELU5zFwrldbMOa3H>O_PK2Obq$sPCaq4*P?m$c1KZ>>J-64Y46a!+v7 z(OL(l5GRUytk#L?3$A^V7RWT3YfsdIm>P1qr?g-uPcAn{>&8^d4Y|vsRYkB@LWS1&V={dkjbk?oos4KN3Nvrrb+-c&Ofc7NQk%2^a zv{_6aB@lhB&E;~R;pCkI_q4^*2S$3m0X{I*YcpP>1Vil{Ts@*)F{G{TQtqJh>U#2YdRWbnV^-<&VJ~P%aza8D%4nZYWE_Nj@7)a!acl z*sgCQd!mP5Li=EjxxP^^$+CJRJ2xU}#IvPdKeXw`F|=lRmt*^^G1+Y7n7`)ybDTes zy%s}fjMV5=LFaOE032C$M%*FS-!~fILjSes#kOJGoED?mtDba z*BVm(xn?AN>XU5VgyaQpk`0?uUBz7E&8D+3!ec`zXG#Oo-mOP6gzGhW#_%(d{e-cf z$t=HS`xvhA1Z$faJ}%=49*k(`ae4%g#aeDfWYbh@ zghrpt;eIG@y4;%o--+Ca^BIoQK0>3%s1_giSHep>qL+Npyd%zs_y+hl5z{`!~%n7ezoUhlX)mk5G@qwNLV;o4%b)eB%kJ>Pn zlUYuzzaDE`>b(*3O*oTjy-dO!S}8uztlw75PwVmp_5(kTFU6cc z?w1VhKbpOdTAJ-X(1c^_j^pS9eSK)v&un-NX{xQzFqUl#qZkv7wW!j+cu`PGJ zenM&3n+N=cX_^B*_;*te-F+a#@(>>-GG@i(#`0}!U1LX-r@UO=_JQwwJ39H`yq$ry zZ)6$cLwz_hn93GKnLIkf+!<5w;T#$5j`puKU+n1v?>A_K9u_sHae2y%w9m7AljX7| z37*kQw#3nh_r(5*UJ}p!(<8RM^Oz;u+s_kYmP~Ob85}_JRnF<(lF}apk=z+hvX=+R zxBN+p86+o7Bzdhb$|r%ZADG;<+1tTT3+oMrM=>NXL_dLjbuO?C#$1Ur z1Xp)sl9>%@z8UGe^(g06?0*5hnp65*Gm;m)Nq)!cx`4}4DKlJZ-_Z$w#pvJRZTzJp zx-)u?b?A!nrl}9+{89Vo`S`oTRO-WZDea18sn_7bkW9Q)@moaFQ;nEpb1hBC!;%P#WoxYX7iW{BkD=}prwcG@~SsqM5^ zxoK*=v-)VY4%e@M1737=DD?Kn{4Y7jIEtO+W7+Pe0hq5h3*Jd>3EAldEkzi5)4C2q zNqZ9f{bKNXtoIj|)omGu+IE3sQ9ctI=xkV0?Xj3sZ4>`*wT6eqxGMkL!;{upC=&8N z-_Ad2Z{xbNm9^JW?bW61qk8TSKGW@dlD4K#d#$b2e;sp{wcazPjo7!t9qEWnk<)yB z3CDd)ZTmU-S8;AdKYbz#tln;#_F=lZZ+{=j>E1L(f7aeZSSoqy2PhkMvGvt##|n(+ zsoL$F@Z8MVSkV_bLfQjtscpZqD8hd?QeXVef2reL^mfzqt!lL`@<(V{9j7VRmQNli zzdFuUV_Z<1GSvnDaQD2Uv3D}O+4tVxm7>~h{$0`A`e;9FZ(rW$&|IYvX=E2eV<*GL z4Dl_fuR6z2|J*crHu*C@H%<0?Cu0vx{%htN_0Imc^-^6_`)rg{JNaqU^!N3WpPK%S zdhPu;!X7jBoN-fI=F+-uo9hKPprc(&dvI^GcQ)Es-QJt+1M#m}Zkoc`gZ-+ZIj}yO z>}@@Rzt^*Utb?&OjZ*eAX9(6(-7Z^MqtvU8MqOjEF0a~@rqy9NZJ|D5x#zbHlX`QOF- zdz-(G`Ohu?I_AH#|Ld6le?R|Szx~<1cK!bpZ1{N2*)Y9+NTxzo?=k_gh3Hz z0rQ#4q2Guy7afi%`qH;H{@uePMIU#r#9#Cu!&@ro6U*T>9?Z6q|1J}}V5QAw6Rfim z>5PBnb^JUkv0OEs>uFCdyV_HpyFI;CgAxYY>!NG;d~!$t*0^er)ZWtWCw=sa)fY269W4p;lnbli;5V4G)d9KfkTjHDQYr!BvP89NfX8) zy{4#9|A|O%D%ub+4QV^mHPHaC@EoCvX(ePbkgI?}4&~gz|D$Mh%=k5dt4IM^p z!DsJ|TIn9tfe#IG_^IoYyXwLxifVUDM*7@pNxuRb|H@5s;}`9+(c<`(yIifh8?ozl zd06SOsXKOg!q3X*asPBt4|HErr#hVXUyS6;wA|r9WFY;RpBP~dcm2Py*3ef;s zD&4f0rAQr^vS41!4$%<86%B1uC>p^yqa4hNNyi5ilbM!6Y2SmpykWhe<2l&a8s~^0 z3)rXvYo~_>>0fyr&z>tpQv;Ar53(nRo*(YA>0azo305){cDEpHvDSBPS2H+nki(Oc zDtGz98AaZaH<2zVS~uw{q)J6;J-$J@&6EWL5<=^9k|HxL$8m329hqsqJ=JO9{QWMQ z?yae3gpIZ{wc`w0jX$Afn3W*U55_Uw5@gvLvY9gKZyi)8uQdewQI+M6qE#idhF*%C zT3L_=C>k7632k7QqOlCUvqr(VEU=|o6qUMKKZ zI_Ho^S|{kDbmLm4ivS2!y7-ohk&J)kbzD9B<^@`*IZ|gUU5Sj$3$oJJNc7tw{VT8Y zeYfFx!3H4xiqzFgmxIUV@q<%rc?XFfj3qJ+3!RkL1Ns}0;fN*W^@PWnZaGpcz2F5! z6iaW&RYbA$fg6e_mN0zEjH5AyX=^{t?i+9o0^jd3hsXk(Ku6je=zcL9;fcd7~j)(M0!Sd1IiGDFbS?_z20v zzuJoh#zJE&-Ggz^nkfsKw>Y0S9_B0RhBN_=D>~8VN?t7ZwP6VwZx80%GwQl}&a8gw6>WSp8D5+H?%z#FU7UF(l z2KXv!hq{^Iuc#;LWQ`+!$$~Ug(NmF?_>|QcMGJB7{Wwfk zbhS?6OF?y@y6ty`EwwgDGS_(WaP~y1^z3qLzeRlKq8+uBA-?= zk(YT8%U)=8^v$0SvyB=Y$;(2RqlmmLgvE-;%R*RY5XZ6*o@dGe4P#jZS&GJb4$4n~ zGA61aI)5=f1y8{(hbukD=05}Vd1spnw?<6MUjh@DvY=B$a(*g2p{NnkQdn%&W#lb` z*O-iB)pFRPbh9FsXBku+H+^*b<)?RuqrV^}VTG}!_-$ol9}99TepSRYC>?D=NkFmkj8wC==JiD=Q8Wj2>)?GwyHNK!e5B|d)V&TD6g@St z690;$Qqh8e7Nk3hzL>toJsa*T`gVE+(oc#S%~<2U0kqCE^vfMO&Zt1Dt!QAEN_o#i$tRJz7vx94wzQbirc<|7@mv)m46 zn6jW?$btOr(1%ZpjJ5JM3}niJ=LWo+|2B+JG;ct8{!WNh)Mmoz{9H)0()s*6C{)yB z!j=32_|i&W=I?<=R{CdtA^7u&R~Af9IBD7s&oUXcAAl81#(v@eTrhO_2bTZJKLDMA zX%?g+{hD6{-S`wO70+&e%`b)-e2SI|?d$%UUjlpi6wUB?5DpsT;M01I`$2e5QQOuP zNT(F}d8~0Sg$hN19u-Je6n%HQY2KN-vaqJ!VK@lCt-htl~(Oh~LYV|PY zF3qKP!J=qSi#6_tpuVDaTT~$VD9XmUbQszw+J$rJFa#<(iMk`uL(vV?9f5E~(KxT) zgTaa>;JkhhMk$KH^>7qo6-~wUa1;_0t@T~wehi*awAr@;X|AI0ES31|^)rfov{;ay zS5ymqz7H=es)Ih?hqa14QFk0RDr$tf5~7Au+--MHX9 zEK`&e-2&+)MYIAwfhMPj!U;u-#&kwHYY>m-CAg$?RQn~ku83;C1Yawn_4gTkr-;_yXYfc7jml+^Ax3>P zDwm;-A{vz|;Hij4#}v`}yAJE4Lv|5v`Tm@R%Yxs@;Lvis-0z2No%!Iq?-NRYY^*D@ZqpBl{XM ztz?0(0WXyCAMLL799$2>v{?m}>HDwl;v_I?HTAi_%9 z&HsdGE9IHLfk{?6X}S+dRvJ?9Eo@a(=`p(CJJ_SBz+*ze19(@_I**l}-@`>kXT#$P zet?IHUK}1*@GlAk|CQGXcAac~2tj>_vf$dp(FG47N>Q_xGYWo$WJPs*%_#T@)>?H> z7yJwF4tiUtf{T%e0BigHnB5(gD|p{|zrL{UtS#RZPyx}p|HwZ%7z zf_kJC)Dhl&jT+*6yi{Nj5sLhWrxmz~wTg}oODn)fP{Iw%iNmuB>Wg?qKMu<(Xe=t2 zvf$TAn+uwYpA|I-*jeB!f+DC~7JM@)uArr8*3Y1aak~rr#70FWaR&=pi`@Q(?m)tO z1#Lu;qOh>{3fhX}Oc_ww1E`#Fme4_XGu?8ep6?)hnU*{Bb={2A z-XNZJ9Yq%_Z8mol5q9M|i72L27>Zsxi78B3P%HN1f=;6TK&sEEJwPUxXqigux{x7e-dB$5vTL=B>nS@6iW^X>s+qoVI7 zgzp|C9w`c&;ceKd1()8UU#cf5s$Ijh7S_DNImc7S5zk94$qG)G$ z*6tW_RMEp0S-ZyzharY#o@>tT2_j0-XWjPfjujgfB@I5hd$Oof^i=5i-EpGNP@^2g zRqc)!FDjZG`t$BYQK;zF6o)-Cg=H97X27Yg4tt&uNlaO=B)Y+#S)xeM>l51T`G@$K zX}QBzydp{#`fw_@++jDKFC`0SgLoX~2oEcD+cQT@VY=l=J-)L3;E8u;*pr zJBqwy!A!R$doo1TXrc@lJ@xrLuL|!mM9ZP9%S(GQ#SkWApS4EBFr{Jbc*QPe7?uvZ zyH-M$bp@Nk-ye6JDEV<9tip5N+5I;n~T2aPS4peTfIIW1vtrItx==ZTT zdtMijV~xlb1--RrqgbNovu?ZgY!a6hHEUV6Cr9|>-&;}}er~>N&s$=JqEDtA-Lpg7 zP?R+I@}6CyPmEzX%+SdsRGC^j_lmy*EVEB*XH(#HzhtitSc1 z6@D$8Cs*s56@DWYDC*%ATKI!Vv(li#AH@bMjW7H~9I{eUp{9MKXdlMuphZkEeD3pm zb#HBLqm{Ppt*gnnYF*i04=q_y3C7t_J8q?_y^S^BsfJ}qqN&hFTVbVUg?`%iOc{_c zV@aXE<}i&cGvK7(^1}97tfEtiFBNvsRx{D4bhLET-ZIEx#bo@gN6TZn<=84{O<{mW zKImvjv%sE)?8W!V8@f7V8Kmv!a#?V6@_MBAthA-Di*`oQPm^~R25VQXy28S4+I=g% zQ`kfEh$pAy<#=I;7NuyJmDcWiOj}{4UHhKawpr=OzPVbtl`iZ{(Qa6&YG0~mO02F=+rL8dvr>coFKYv= z)Mx)+IB^Wu_F##)e01K44QD@bFIuu@dqlkQ;N<`e)7OIEoi3UbN+-y2fon4tn|`> z8`@ASZ9Z^Qo2clysGf16}=f{F1o9EKW5bMW|Vi)KedjE zUYQ(NbYGifrSPKfv?MD<7d_C@trT1IgSOpD(~BNzpDQ{#c}~&K+Lu;(w&)k_pNg7B zZz=pudt{|&i$HgN+=!)V^gD%`K3vg{LtZ){^>jrY<5m`#^c+PiqE{A~^;|_W+N>?A zrSDS|=CHQNL4QY)sJ*txQGZ|2(TV$VGo&k>j9uit6eYtaJ>i;}hh?I8Iyi7$({;Edz_5Y^BphZhEej zDvCVxiv~F~v0N_l(yuA%V7ZR;l_ENl)YHFJbRfop^s_;bI_*wTeckyi2z7 zL%pAsptzwPqiA~@C~l-bt*B#gtzvKexS|2UF2#-YW=|PjGTOKlH__7+c?5eFH`Q+| zn%Bm&xS2lqX|l|M%CXP5`skyWmP0!?@8ahA5-a%@x71fNrNYau-o>r-Z_MNJL^lBvS9v% zmkxB+FB&>{3VSI?zh|Xk#lgCqZPfnMw28&tb#E&@Q5>oVD>^#)+2X!>gq4;ThwCF0 z{WN)1afF_z==L*^Nsr2xvg=_)O{4K8~#hl z8oi^U2GiuhEPbezTn?_)XDGTp)$8Ev`U)#GJ(#U;w^E0L8}(CG>T__b{=iD(4(94j z7EtYUjo|LONAF-I3l!=jnU?c9+NV!YMC)ju9&cDWJkx)@+kQPsQC9ya4(`|ID0;Vl zE4KssVnv_!Pd<1+U(U4Lp{#Cuw<7%|r8`|W73npm4Djl{=wPwF&9H>Fy)!*a^n;4_ zPwia$p#Hg{8{?K8EY-iY(u)Vnbo_}L|1F1kv9BI{M|V+FG_7;(clFkaE>3Iaen_9I z=-9M+?uYedR%+({p8l$$>r-DpcvLU6(zb)|>vx&baMroGoz{Q0QUkXS^*W2VKjHe+ zoo;9K=2q(LR-p%3Da`GHKF~@d+^*BZ{a&w7bgpIH(jWA% ztkj_Nq5i9t{7Qe;>px?7nd#ZN^jFy+h4h$b$DrF9nv1c&L zqXt2m+o)2rv^>lGf)wQ8AV(;=(mc7;NhVlnX{obJvC?B6b!CN>7J9hKT}#LdUGc3h z^^or|Eq6$n@p`G3JgI17$Bjtm41%AA-*NGh|57wR;4ReEPX+vE9PR7L)=b7#WIfs8 zInph62%oV+)RVzXsSZPCEJf&7i9TKG zC%0QIKSlCRBhy=gEZfMZnNnfEgfB|l$=gatca8kzuZrm2jK6eRM&+o!?@Rq<1A`o> zhW65z$ry+B@|zW8nFU9>L0NnGi=ubCIh1vf-YX4VE>b5M%w&`clmnQI76r;-HE3)N zn#@%0*rDYHQ=pu#s7K37NKe~Yc9!#N&=O_&V)zDAXSqVr`tVCg8FrRIa$ODDq%8A- zCYyug4n?Iwo00a|S$2^nHRwnU`k)4#Wh!^1Sh~ndiYS&Y@(Vl5VEJ_o`mP53T!Zu% zsCUa9{X909f@N(*fgYETJeZ8$?JB)%kZ%q0uR%df<&Nq8mC#j&C|c)lLF#8`*-Z|q zL8EKX#2S>qRPOl2^bMwN@(D%XPQQdS*UqxLe5M91uR$->pe&|x$B2m=Ox@)hilQf8 zLfU3$*+b^npaV7N-5T^hQ@P`@z8g$EkA( z@350U+F6E3@gj|wF)AU_k*VA<)OUj^M7k=9^u2`C(9SYcHm^Z#YfxYf>cLd*NOLz- z_Eki4H&hO`v+N~DT4|bBFFA$jnuv=R&_|}FQ=Hetg;xGZnTkjkCP%HZ>B3~ZBGUDh z-Cnlo`pSWdNEa@ft+wgHWhX_Xi;(j(Y`O?ZX`Op1QRA;IAeD=Heu?e_l&)O3`FWHL zw335g)3U)e%0*dq_52FFhFZzZ&#!Elm8jf^8s$b>b@lwp4vw~xn_pnrSSwMv2{p>m zTXZODBhE=yqBtj8iONlt%el42esG$6g~^x`)8y++OYyBYy~?J^or;EPy~^TcDU&fq z3G#R*)o6@Sg1n%J`ZG~FWZ86yvc4kHO_%Af*>uxuv|)xd&U$|R${w?ln_pDf<5r?J zJSnr47xMX(T)o!j^C|fTlhMAX<=ad~`<|A2n3m$ZvTo>4%MwNHOgHpd@`zoz+44iX zaiKU0WpQ$qtH^p_lnGSdpjWBDp~JvMaYx_E)-T`VxJijIq-# zl5tA+Eb1^eCSz<<9wB98J5q;=1hj= zGqNqyQhfJbOxZIsP|@qADP_;fZcIk)OJuWbTkT6^Cq*>Usj|-on=VxjWm?X6bw$U~=W@A45j`9FyxggXo(+9o7ApG9Jtu#KELBtobt~jCMW2kATeec3 zR&;el3eqQvW{q1~_JX{s=-F{EAbn{No+05|R^&gKjGli{{#-++zd?Pr6grAm%3hRp zn2b?Lm-t#6)~%LjM7oS+GR7fY4t$ez#tKiD;}p?2tdgxa+H|XAH$|j-N&0TG>0XjS zib(geY_{2^ds%i;M7q_o(-xa552~C8OT9>9S<3BGSDkTko{#UX$Gvk#4Q* zmTS|kl>-%#Zk-&SZ_}-lQxuWzbs1G))4eWZ6_IYejM`(0D&fy(zsFk#3{xR&3L4lmiu!ZjOp|$?9=Qi1m$yim}WrUsOb{VBC@4;(j+vO-GW996SGmhG7*dgaD zqT1h{zh4zJYr{=FF&-i%$J`i%jLLd&zE=YEDPk1c9sQFoTl2B!eCM6QXnl% zMo;XPm5S(0Znyl#PPa!^d}xb$kG!FXTC`VQ_{gT)D{m_zU7@^v#-=Nj4;7JapFH}p zO}9^0C?ef{S$Ni_+b@qQBHaO5aL%SXAP*@bU6CxUu<45ADMh3!mf7cRx?-8Dh;$`# z^(Qu6iQK4&bO&YTr#9U|nWKnwr84J&O;;)l6_Kt?F1cvamC4nLNcWC>`jSoej$ERM zbnnWf&uqGPWr`xw9g_1e+jNKI3Pq$lEWJOs=?=@bOvYR~A_JM0LOq%3c|`WH)4eAL zDqW~7b9qlrvC|!uGnDQ-eQViKxyVj;OfFSAlguqUCbR5x2GJV(Shi(a?l5C|C7hLkisnqWAoVne z&l%3iaHSKi@abVWSP`8)os**!&F)?a6*5-QLOj!{kO>B{m-F%or6Vur=(`_+ zpXAoyP9I8_1(25h2{_WST58a%52ec^EciXk{HfKJ8mwqlZDZJ1Taq8a&-fcsgOP4@ zeYKp|MvO+o%A!IRJ&(q^1LL1A{;!Ka{jA6hj~&ddIB8V#Urw92&GACuook@ z_o=~P9+CK9(i&-_UB|EwHGD%H*;87;s1_v4F*f_YtsX&JEdt-SNH!!jXg<9W`q0vRep7iMkLkoJQMo+c#LD55pBaRq)p~?gX)}WKe%tfKG$Ii_I9;5!+zBm ziae!8Df08j{62g%C(qTRU>sZNsHy|~<%3j5H=|eW`_stz&+S+6Sj@y#spA_|$@3YG ze32XV*rpZ~VG}=!#2Jsy8r$e>BUL_?B1^Kll}M!wdqW!D4t6E2JN67-akHg;I+l;% zi^o$8G*S}Z2W_#K@U5&CiBsPF z^J%Z8vl>lBVx(vADxfp5nrA+gFaN|c824<|`Sxc@hCOLbs?-`j9@+W?k6f6e;TvqJ ze~fKyVg&VhRP&+;ikx7yV6f32lBpL3>hscG~7 z>oWTG|MosKt~KoC5uPn$ct82axo6}XaulvX4d^Lqyw7T(w2^P0rW_5*c^~Ti^S!>jPf%-|bBxuRVWjOP?+sM`f1Li~-sAUs5@YXC zy`P~yNzF9b>uN9bN3G%CkoMY>6XKL;htMkb}t=yXH$i7$A(ZsI*ZL>(g z9zNEb<~d1HgH^vv>#)w6gKhtB+l+~#J|w9@_ur*;7|1!)hj@$&Cri3=so5u?!+xJ* z^zBQ0)!Cj~L_M#88+z0EI!l6)Z?Cma|IyOkgT(nD*^f#2p_z&IIeC1kY_;|sJkO*z zl>>f@^RN7qjfri{%7#WkQ)y#X|FK2n?T!*q^S>WE{3Zn6vn9 zQsZ-8d__!BgGVi^bE?~J)M#jpId7lyY`D$-@6)+>2Oih;aI!bjsW>-iKG2H3#`PL= zqq-K_L$>4fZfNN!Tr;YS8IZ8Z_k|qkQ|c!1n@EY+rDk z@%>3lcZPL!kJny1W&*|VD4L|dGszCUsO%}euWsB8HqyVZz2=<%&$Sz|$29nr*TQYS zs{JeZAzy>geGGg8pl-F)U@p!F9Y`zS68C_;WeWEd$$w}0I{MV`8%yNJme$$7{7e6a zJ;^`wzn!BsTcw2$yVA3=M|i|*8W_J02F zOuO@4rcjoDAED8r`@Aknc(3*M_W!H2Mr{ANtjlx5UMAylM1bMpAg>EU8WGx$+Fzw_ zx2grr@TgcHzqLIP8o(52gzq0~3d!ILj=~qu5`6KS+`iy~TLaM&@Xdsn-xBj%Vtz}^ zZ;AQs@H@;MaO(|2L_cuG_rE%e;rJGk;rNZ@5%~WI{C_OIEg}}?ia~2EyHakZmV$1z-u}qE8-7;_x0c$QFdsJ`+*)cIvGgX~HsiJhH+&Bs zyp7vV+;VZt!)+gKMYt8?R)*U0n*b_BQga65|IG2F^=dmp#sxShc51KdvH zb_%!CxP6G*N4TBA?PJ`|;&u+V3f#`)_6csE;&utQ&v3hp+ZEid;&vUkFL1ko+fCeV z;r1nNw{g3J+gG@KjawCNcX7Li+dpyp2DkgTeT&<#xM^Ymz6qS3<8wu6!f~Ut4@xHp zKxu*QEW=nvvW#XK!!nNLOqR1y3RsEK6aRXi(mPN#!u|@tzpJ>0X+Nx+p6$2~^t`|< zLH;vP2Esa&Xpgcx6myz#EU;Un`~W>+&|KJo65r#9av20j%1`2N0VeUc02gqL$uM_f zG0wSuBi_TWTvIxQ)5-9q?>S79#NO^)330Mk>CBm66->V{Un?Devh&aN+IgE z?;wQmiVH%S-qi<7LF{<^_7KEQ6%9n#keMQlzZaOs-wRCR?**o@&orPnl&1l`Z#)g? zjpS)SZz4|vdRKWGzP~qJq(eQw^&*qsLY@iq_VH+}@hD2FF&b+;BW7}M%oOxg!%Wc@ z-#>j3w)kBaE9LS&Ux{p>w^e6I(W(-%f!v8gYm)a;HwyxftNBJ<0=`ws$>qMV+dLer2hmyP%LVDNHdMWp6DSzjw6zHj9d@~?M zNaOgLeu}lHSbGZSx#9|-?@LwSw-7!>NzYtgW_$9Fe_00f-Kh$or>`l;OWxqGPu)QK zE|{igt#1H*iRuQ>lh#%IC8{daCdn$GC#oN?w<`WNRTV!~UBzFhssehZ`VoJj>Ji%K zW160weuUqbibF|HPCo+rX4NC0=ccJ=K9CZ}y`L_5+$E0tXx*7}oH@stbBbkop9ZEl z?LzlR(=6<<;iePve)CFv?&ddt0Sho^qUoY^4}8qDQus|wGcC|^5?@65cI0a)+qiBp zU6W4jw_w_D;@hS$UQKb*GpN{fM|KQ&*K}Vl#W!7!g4R=N>p$XHU&6F&k87A;8vmtf zhdk8x9?JX#lX(GrkMDHz;Q8P!&QA|Cdy9gAO7IX%JR;0HFp?;go{1yP!nC7qjM>q& zJYh2C+)ao#yPB5wTqt(PTXBz>eT8@2Qk3}#FPL{oOZ(O4mFRObO0st~Z6Cg!WuCc# zso13u<@VtvW`C~NAM08y{JHE(5jgP^EEPEMiaAcs#V^J+Fn!{h=5yiDcaV>G!|1J)rl+WvaP4Sy$34=mWo}V6$(mgQJAxgLho`YCH zUo?!zzwKBrk}y5jAsN%F98z%HcWNm-?kPC#2emZLN#mR}&PnH-bk4!O2-;+FPA2DM za!xkqWOGh7=j3os4(H@>PA=!=M-{IDd&`OPATVf7i+qncRY;!^O@sO z)*fZ;QP!T~oC-0ye`BW#LEnF>5cGYZ3PIlrsu1+OkW*}bitR76#*oNn+a+~85TA!rWY5Hx#lh=x6u zn!`->+kfg5Y1$lg#i@!%Cr$>0+($nra9pBIZ?~9=d-eT2=(sQ)_s?;%*F=Zfv__V} z18&g+j`;z{d|0Qy1%AY}JmOl~=vyYbn2Vm*<$TMze8;%$)djZ69s1ue;e_tLKOFQ=^^?(&(!~K^lDtDM+Jl(gbPL zlOe1PVQmO&Lp1uHPzc+EuuTNpM6gW++eENUghpQyieSqKwv1xSD7K7Z%P6+QFSDa% zlt$mSiDLUGwjaf60mHtB4W&Nk_6lg>8jTw^+0rn6-xTV}FlCR=8*WhPr@a%`DwpUL*w zXkY1^&Gy-BpUv8A*5#q@I1e!`9%HTvO@;NIoG|$+H2a*n09q9t93DK zO1HWh+JV?9b!X}aVyD-w;!+vfkU^PsA854it>Tq3(?t8;DvgdEkJ#oB=Sy6(^f7c= zO}jaLQKPq-?$)1-vRIrkr=x}Pm!j4`s++|_<@iU9x5VhRqigHln6p@T>(5QZ@4x7; z1*{OWa6coUO6wT+ip5tSmY8Q*sb8sEi0OtsBFw(JYmfE9U**rSyl?U6e1FalQu)8t zt+WJjeh}yTVl8;zgk=!Rl`Ka)VjN7=)GcmTq7`@ zsAcGrCiHTRQt8LX#<`B-^h%TCxM$F^Y|u*A4AYr$FS~BiXU1i*+{AJRN~-<7q_=^@ z=wuVmW!IVL+_+dbwSM5b$<(UlPp;RvZ$H+$$C=!&Y3qY)yM3$;=PB4ZSh^g;l)uGDme;r!S&q>h!LH%Q`&=?}{^grDq&oiR^Htv)`9J zqj7cPw_Z#uf-*gC=yXJ`(&;!}rPGnCN~h!a16;G$Op>oUolz!g9xSE&pk+HRI)@+O z<;~hQEaUO)Xqwjoxqir8FJDRh?=PwU4}&>!t=Et6x#tSJqCD=o0n_CZ1zu?m=~Lh( z#2HT0)v=>l3w+0`yD&$d^>P(t?<&ah1kl-jj93-_J!%V^|LhfpHlki6+eEX^NVbf@ z`DUrtKrHO(T`!vbN3;KE{@Z4{vJ0pe#Ic2NZ0lr2+yu1m9rA3w2x*R7T`x*fy-~6p z_k^Q3Czf+!Ij4ab74|vWKaT!m#7hA;P(I%C4$5U1TLbZBSMPf9Tq=o6eOLW#PRE&6#a^wSgKfE2Ki6mrx57t@L;FI`FXep6{a?!3qmt&5RU!_7!Y@S<)BBZeTo#S`|w=OOy?r*@H8CaAps*-UWQD{nEV>9&isoVsB~e z?GbxR<5Fo{Dve8}u$Hdu=&h#IlPRoCVXZXLh&!8T#M9Z**+k=>&X(zHna-B?Wyb_F zu3@tGX8TOG_hx&1gD85=Wcy6E&t~mP(JgFQBX7Ji&1{s-HrZ^G%{IR5&7Zv$vb{fh zD`d+;wk%{zA9HE^jYdHxIywiL=;$1T>vypTVGj}PA%{Igu!kttMzLiMd&^;OIqYo| zmx|?5xm+riOXadn z!ljOKsiR!#D3?kz(fNFuiLRL1m=gwFX?$NB>~*_wnu)HS(oA&qbO*=%UgI$H8uuR> zr*k}+>@&?oU(8K2(fMt*iPlag*OG0bvB);j+{-r6ddcBhaYhFsCYDdeb;F-+43FYG2y)D93+_>w3Vwbc$VJRs=Fi^z*_*$auGjq8r$77gXFow~8N`-BY#GFs zL1wxZ3u5~qwhv8lVTL_m5;Zh-7DvC=*aj7US6~#7DY!ihx zjh#lZ%_z1R#WthZ^C-3)#g?PkGL|i4*)oYU`zZKDNMow!;kH3~_SceBWZdxz`GjAxN8Qjt_bngq`HZjNBl0OT z?crCNBk}(EN^>o@&E^VRm5JJAUYi-_=YpzyZ)1fRu4G;5$DKSl;g;LQq6bq zP5G(jpYT2Vspi|Um5^%w4!;bUY7T0HZ_qaPYqJ#Pgn&z?2WGlvd|;+C+bW$_@nz0& zu0?wTANID6{j6gT>$t3QEh@E%Yu{m>J|enhl}@X^N~cv{rPHckiRVJITWa_VSMhcS z{H1DNO9%YAUkS=sco*dqIEpeJPPBBvYlRO{28oV-4*2`jTt5?}Xp2xT(H5gj)1F1S zLQC~?!5^}hqRmnLw-gsRuFJ(Pa7rKlmJ3wq`6w^wM^IkYKSf!o|A6v_-e8*x+}1mw ztkMUd{6>#Q`9NQQ@}a&R!&pYLjA6NeH%D%+T48m#ANU8naJB>ff?d)QzW@sz z-tB+?h2a{PYM%fwGq3j9QP=>?5P!0xpr~`}ySCkVte;Ud#_8E@flq_jE z1s0*4#_4I$1Jeo67rb^Y;rykXzm)Tr;yVp~I-7>tgd-dO2W{^HA6Hec4X>G8nl!yq z+S1aNq-lk!RN8XCCQZ{4=mpvo4k9*_$s`?`%*2^V+W;O@s|S0$aI|{7a!f5=5D`6! z97QpuAQa?&m7CKGN=3QoQ8@y>@AEwWwP$uRso(p3@9#@~``OR>ueH}+m;d^&%U*kr ze0R%tw|sZQx9+ha$@d`4&PVqPBN6h7$OUfJ&2{4Q#g~aUi^uT{J#l9ol4&>ZiZE4s zgm=q#zxa#dktlsDqKZwtQ5X{r3G*f|W5}2=UUri^|FHq_ZNlwkd)<2<+a*3!w$n8a z<$<3ba^*YSy+dW?HMq9A{0HvN$E(Y4cTYWDFUbN(UVD52Bvnr|mNWh)$y*?w_e2Zi z=R6UUJPFBVPb49^=7|AGwh4EXKjyyn#Gv>t;f;{o{KOvdec*RIv0wZ!_AT1fKT%4&eUh zcPX|T!LNH^AMl)C@0a8-_)EWzjN!fNgpI=HF}!0;JR!bKe3x)YxJQ^5?iac$#uE|N z3hRUoRXg3^hZ@D3s+jVa_%`8=s@vVp{4Vhu!M~f|Bfby(p8R3pfqZrK?JlyvuA1>L z0I%KOP`%TgzNb-=7D&$A9}`c4U$%che4B6wBwO|mir)zSmHk8Fd#jm}eUSWQe_oRP z)fc!gK6@uN7Yae)NF`@kU__B&Q!}6ORd#khC7yCcXna zb6}VFjo=?YFf{gl#5p9%9^pR7zjYulzF&A4lDiJL8isT=OhZIiU30tp&4F6+I^hCH z$`3XuWP>D)!ls%UT-5^K;|{h-5);NHPf9+Zs|FKX@jb$Q zkX&{!FTP)RP;nlHJaf?DL+VJauzK9>ZpXn|@jBrGNOm1;5N{N=Kyt^yHu0D+KJH}~ ze=G_4uMZALvQ4-HlBz?4;=6=5LNfQz9`SwPwfpyr9|k|`P-Hw)Qa%25ck!V*@%r)i zL$Uypu0suyGzy!>tE?dZ;Gs52V!|XOUpce`ICN;2BsYS;cxaFKKJc;^_lq9}zwBUS zg6=qhiVzCF7n**$@&x)Ji7 zFAhO|?45fg-v`NeU(CyQza$4I{KNp^r=_nTefyA{ukkTm{wk0f_Zyudy2=srkZ z`|W;74kCs-9y<)l^)E#xF(u`bE^yy_w0hF*?!v=$lGIO9dLa4x;f6^&-KIMmC2xV` z*5Ad%}OEqnL&U@kU{rFeZ#2^(Pm9d_a7ga8S5Q zxLel_iSH5Sh5LmEaqW)B-4xwdSSzd()=$xW#T$if!k92V1zPd=Ht|8>ZiOEb&kNnr zjJZr$E36kb2%Cg$!nklixLr6X+$9_m=7nymQY)+#)(Pu{4ZIVeB`g!x3G0Oo({{RV-`OPIHmwFZjf-y=?iTJ5?iC&smQ81z^}+^W zn=mfiE*zZB*mjHGIQ<9i^jC%?*(=FDNG^V5zxYAnVMtQ1xMOy@zuZ}N4CAlH=hQBK zr52J?_SQ?X0FoWAG#ta2n$zFoKjk~yypitiTQ2+7&64vFs-?t|pi*Ye^Ag@+-z z_%(N|QYb7F)(Y!{^}+^Wldw$~6UK!D!fnFs!a?C~;gE2TaIY{g+%G&RbhDHOVVSU2 zSSPF(HVB)9ZNiu^E*ubU6K)p{3U>*23x|Yzg?ZsYp_|RSmkDcy^}+^Wqp(TXCX5N= z!U5qn;dbGmaF=kma7egExL24L?iU^ux;ZKVVVSU2STAf4HVNB=ap8b)yKqprTR0@# zE6fWI3f*zasjya9FKiGt3EPBm;ec?va8S5gI3(OFbhV7LR@f#S5bhE-*3ma6+$P*5 z+#}pCjLc=2I$@(QCfp|6CCm$5Jwrz7IsUH|udC<$u0gy_I3OGp?o!Ah@x0K@Q)-2E z^B7Nqc$;uQxNRQe926fC=7nxPuPvYdEU;F*LD(i75Dp55gn6NRhwdnB5Vi>ighRr- z&>gRk!UkcRa6mXH91`Y*?gWJwHVE5<9Vak_1LA|iAz@zV7U(KrgRo6FARH9#T5y58 z;n5-SJ>q$B_fB3Lc_)2q#p}cy#M^{1Ne0BXi4ThJ63>h87kBScZ0}NR;&tK;;%&kK z;h=Cxm>0TtD;L5BVVf}aZr165_%`uD@m=CW;(6hIN!*D_!->);@djbzi5wHQi4O?3 zLGsf_2gP?O{E+w_$nSl0zj$OJW2+N32pffM!kBPCxJ@`H+$9_m?h)pN`-Sd3%BiqH z*e2|FkM!`Q8r-o#*e2{aNwqINC>#>zg>DhU*9zN&`I8yHJB2v!l!Gq+s5_OsR@fkH z6Aqk4`Jiw}m>0U!6<*jNY!eQeKk;IH4^Al?Sv@QXI_0q{@!VnBQl{OMl| ziVuO$xo1c`55DQ1ytq4Sr@Q?gcb4K8Hb8RJy$#}R;63-Yi4TD9yLUi*kYV->iVvN| za>xq@&fe+T_6-4V+Ls6ZWuH4|r(1eo?Kuq7Ak0Iu;k zoMq@d#n!OX{pbC)jXT}%?r#9r|FW@>zHQ)LzZ?X9^Or+Q8M3yCSl2|~2JtrGKvNCm zgH1c#pMN<7Jnw-aN%G)39>|NkWjozt54dFvSqnbeF!bj^xQ*wDPwUHedjcpLbm54DL8fX{w-KztB<ZI3&yq-D-swHVE5<1HwV!kkGABNMVDpO*kMN z6b=dVLU)nE3kNRVg!B&zhlF`yZ7bys!ZzXH<&+Ew^FsGNN@|4-!ZzW6FmeTb>x7NM zm~fkLm#}RE!wd)qg>7v$ln4ifL&Ch!#pqirY!J2y2ZV#|jBQBR7FW!|LE(@vFLWLB ztra#1+k^wck95#t=My{KQ;!UED$dRtN`$V9e6UM$VeLlp2H~J^NZ6L7d_Y)xrNRjF zLbr*MLE(_Fty|%RwLJ8la)BWYeW zB<^}CX%KewQa&I)?*rr=!iFrv3E*uo*g|!2c3kQXHVeK}_g@eMpu=c}}3kQV*+bJ0mx{r`I2nU4uk5W?m zFS<%ND9j6Mua#UlD9j7XKc+F#$LKpxe3`IKl0ji!Si3_p2nU6ElCy2Jn;tcHsR29OiB5_ zF-P-+-@tomCq$M;R!8oLJQ+DB`iba&MDLECR<@z+%ChUrZYf(@enaSJfs*kCjSA9}-bM?j5S5#-JudUu${nhGQtM^qOsQznp+1RtkoFP<>PkLz5tCRjd z>DbAqPhLOy^2u8#Z=Zb2g`icop$B4z0(d)d&l(l=?_ewdCc--es;{18QW)^JhNeDa^`1d{%Yob&s=frcaHs^ zW4F(GZr1qO7tBu1zJ2y-bKW=SpXb~$r}wze9rx?wPN{@Qqug|`W8E~wd@SDNorU*w7q}DLJKag{UG8*uqB{%k+n(!|xJGvho;IH9mbug1 zd*O4rI|ut1&UKsc*6!7=!Ci|GpTINGPq}7yom-AKeb2}HpcmqIvR1k;xmE7VZVld5 zyvSYeE_VNcw|c+o*119Kir9rc5npqc;r-k9xo^1lyKlLeyV1qnO>U#R*(LFQX1DvH z>v2DFz3z5ARsAX61W^yWQvU9_|<5bMr*7x21M=$m=}N#M0DrvUGI|Czv#o!J09eq1x~-;QUP-m{5~ zM_&NR3GXAHzh*u7<0p{UpWP1rlli=(rQGsp`LaA(49`vOLdbtsoaYIje?MdR=N97O z2I6gth&@*j->fGNtnR^8-(I@~XyssK(xp@xmdeAD=PzSCmY2q(uR%P|Hw^$^IGOU@ zy8EfC{soeAR3_h;NBIq_i4UAf{7M_KUwEhRgXdFn`bNgHMEFm-_Jflt|Lr2md#)hf zI+ggT3yH5SCEl@`_gXK!@Y0WiA3lNd#-oXcbVn-_%Aq$_xi>> z`o2Ahe6sF-obb%{&pHLlEwd}o&?e~}Ss!v>eJ2 zLHVaH{66se!k2_^)>D!>=Qd#Cw4VWQ)!mJM?hM9bd`9P9`l_A2_}+csrbYjBD#P@t zl;*Zk^VgpIID8G?H|ZI0^R<%v*rYrp#=o@uH{j1M|2^`|8zWX zsEhH~wGS(#@lE1O)?RZ*m3u$FNixZ80J4{0AJOK@A&CJgtAL~(y~iY2%d;%mB@n7Xqa8Gh+ z98ASz;AHeh_@b4Y3Y><%DT-qT@EG(?_}-734V;O-DhhWUa2EFHL?N9Ioac^59_9n_ z?Oya^c+U!mFHXUQuhame?mcit(6^lkemY$EIv2ip5XJtQCBU=L$Kh-4=;5O1)y@Dm zKo&*Mb`G!^vM749M#QiR711-ag7)5`&9{kh5sQV1!!*2}%qwcea z58rkLM$y+^4*q#y)O`W*;dg$3QS`qXz`v||z8-ap-`oL4(Fe!D2Z8wVF6uLao;U%% z+jW880F1h?qgL@7Hb8vQ8TA=K54{QeM${yJT?QCMU!4a34iMk2#+Nyw?tAE|@eOI$ z2mGPi0_1lzqUgo12L2d*H@>6eJ_NiSeRvdK$=D8j5Pf+BU&r_;_`?`c;B5zB6yL|# z0sc5Jif?3m9Q;XO6yM4CB>2<7D8`}Jfj1jR~a{!522Z3jQ)m3vUJj zqxjCoZtz!tQG9FT>)@{eqxjmzH^Ki1jJiLev?A`mfl>Eolvc$31sHXI#RwC}p9sx#OS>!hGav<7B3jL z0?|eyKLeiyL>r0x9DEKCUw*vqpt{dxjq4Y zYUC;K(|~A+kzawI0YpoTJPUpn5Z}O#JP&>j5Un!uYw+`cXqA!u;ElkjTN*hC-UN)g zWsw)bn}JccJn~!c6~L%FKXMqn1sHV~L|z8J5Qw%M`2+YWAlh=|Rq!=HwB^X_;1>hY zmLq=xUkAju7$biMUk{ABOCx^;|0iG+?=Sri_|u?uy9U;O_@U-G<2j z0&fFGT`Yn>*A9rfc%%%x0~mFQNCkK&FzUJ@W5728qxeQeHTac4e3vUy1Ktgcx}L~* z@DwnLZ&yqN&jO?PQqE-XJ|Mmn6`2CQ1sKKGbEbm#1EcP$$aL_lfl>D%eAOiC1|r7- zKM|P?{AT1h_elJoF$@hU#_n(pZ;6DJObw`c|-Wpi|{88jxz@J7=gzwLQ zQFlk=J>WkFM%_?k5%?Y;emNwv1bi zh~bk!*x2ZL@aurEfzeCBzXpU2j9vzOK6*JMF92aZqE~?Dfv_IY4d4fWupZGE_#q%# zZZr;jE1Cel9qj^6ElUEYm2CnZTh@b+vw&!iWohs^K(xm)e6z*X0?{7Jvfy)pXpd!m z;PZfJUu9c>CztgD&ndea@^gXco60^2z7&Was_aAH%YpbMld^5#D}hmWaoKk8wLs`? z*+;?u2?+fxyB7TYKJg$2fq>s9V`1JcnTPGA1J#HJOhlnEoGku-wKRk zANo%4eLz_9vd@9v55za&%03VN01&pl?2F(J0b$$Az6|~dFzOyHyB_>8Aij)V_EqpF zfKm5k*)H&>fKlvf-wpmNVAQ3`zYd-TB0c5b1kV7YE?a&hcn%1iFTV+V3lKVAelvJK z5ISFe3;5N*8h18E4ukG5mB$0$s9XSB{x|Sl?k(`Ixxa&d4WD~lK)XKXcwjmB4XzUW z23H0CZMPWw+wNrWo7}13H@VZnzvIpX|BgEw{JU;B_;=m;;J3QX;J3Q1;Q!@52L4~} zU%`LuJ^}t?_bKq7xgqeMxjVt{aCd><;eG-Bb9XQJ&)t3CL++R0L+(NFJ?>%fJ?>HP zJKf{pce*FR_qwOS_qu1m?{d$9-{oEazuV=(?{){kf8h>+|HAzS{2uob_&x4-;P<-U zgWv030pI6d1K;QV2!5aYZ}9uvU%>BoZ-C$L{s#U__ZIjs-QU31pTal1j|aXJ{26yD_%rTw@Mqnb;Lp0V!Jl*Ifkg+y2=HW*Hk`O**)f#F@GI1rfPcC#Z~dD z?y3)0eWmLARnJwuU3F@8yn1W(*Q;-@eyMu=*r{W$9Q*LtLu04coLBSSnt!SJT+P0k z=V~g)%^$aF+y};eb=>{qo*q{|{)F*s$6q!63*&z}{x{<%OnCQ%izZw(VfTbPC)_vT zl?f+JylmpfCw_I}qZ7*})lF)gl$*4B(oZKnF{x(q36q;AZ=C$Z_poNAEuRj-#JDx@_wFseMzwIQ5%TADjB@)WcK%ICb2#%cp&8+P_U( zI{kv_JEnhW`pwgSH2qK0-LGuF(!WadpXe>ijevD1#-bL{=czH`(Pt2~E zGk(sTIj_x$95>;(^NxG#xQg1()PA}4ncCmgPORHnx1;XsbvM`DTK9{(Lv@k4bLXBk z_p-T}x!2A8-rOhVzB0F_{@wK#*I!wGZT+|E|6Ko8{j_;==Uq4N@p*^lmCrv4dnXpm zUp)W(`Q-!rYG3&88~7zA&fkK+kImmyPhKH`$v-{+U(cbFv%BE$OY?8R7cCuTXT`tW z^9LK~8Xj&Jz7!b5M~2_roqzWwJP!|d4!%t~Qg)5*5e|o$_xYvaroW%EF*qto^mi)0 zDmpU0Pvg6~EP-mC^!J_lSd7MBIp&tZ-haomLCJ2-B3?|>zL2gc_oV0Lo?TFVLUKXLp3#}9GbiuvV_ zFr&N;v&;X&@nal6aVKMbb3WEASHr5WhBaReE4~`mdo`@~YFO*lu+pnxomayuuZA^V z?e4*GFOGdU?!$3Ej$h(<0LOzk9>Vc3W}A=TcofHDI37ofegemnIG)1sG-iyy!p!p- z9M9r-4#)F2Ucm8d%o_8UeeQ=1IDq3Ijzc(J#PJ&(zs2zqj>9;9hvQ`&zsKd@Ux44NlRPGv@D464>Oy>D?_Z+_2>M*}H_d0jSyXju<*2frry>}@Ze&*LL@pNTq`yUCGLsxZgG`Ojmc zI==~hEO%49e2SM(iI{w}AslQ74*Zhi#q^V~=T z?X4U$2fP3KefanLc-p+Y&CA=oyxq&&y}aGW-|qc8ynl!H@9_Q|^2eH!&;Le${$k`~ zC$Rj!=H1`+=Q|_mcFOPa=U?E=^8Q6+oyz-O@4grADCGA>#@8_XeO`W_m){3@ndBeD zmxQsN<>PzMhkMY+_pok0KkDU=`uHA=SbUHB_@4CPp7ilO?cGoN>z?-U zJ>%uic=gL zO#dG7=imDCIptQ~=i$t9KCj%$xzW2D;bu8EmRmVDd3lqUH$l#FZYsBOY4-80@ZnbY z_*%TX#b4Lr(^6@48 zc}w{Z)oJ$o^VR;m-Jd_IbGgIst}EQ<%B$4%e%_zI=+9rpndS4Hd$+U;%L zeVcdx*t>u1-M4%9?LPk7ef&T3@}GJ6&%FHSUjB10|GDJ&dXmbCzxvAZ;_tTF`B{J7 z@6QKycJ4)g{;fYB_UD)V`49g5sz1N3^U?0l-d#~~-F)W1x?9vl16Y4}9`Qeq`1iXtWgA?g>^Ar5visfbWpCp> z@weT?^0LV7aIXgc1dg3Jz69Co^1be^@)IME;CQBdQRI*1r$xqBJmjWSjKhl9S&=Cf zlOpwSFRVB#vJm{_iWQMuMIsWZ?81SSj7qFjRARPYc}wKeW4a<=81wzeO=Erl_x+JG zs=9FeI`Z|Z7bE|L<1X-rt6q-0h~xFD*CUnHuSbrm{&i#yj(1l7HF93{i;)Y#FRgw% z(p_B^-G<|nIKEh29lfP`VsvkH+&xr1Blw!yCAw{>@AVs zk4;36t4Tyx*JPtt*8DoMx#kCvYijzV*VTL|`qP?g@nyE>@rZY?n>ubm^fVlo;@F1c z`{N#nzJg=I_y?jV<7gYdAo^h(U&C=Pj{k;i+Jpz9r{Z`Yj*m^a&0SMdRq@n>50o98 zkij`u@z#XR6=f4YRCY~G7w-Ap@@r~-SUz*&Ps)#*cx_p(;sa%=iI0~*HQ^Z?c^o&D zJvHGsIKPDB7VynDZ^iKu90zcGC~|PZe#ozlE}ndCbPbNo%wF<-3MaLfjm#qk-q%VykDk(ja8-7@2;ibrScuXyLo9q!DT zpFtVCUU9|DH!H5f@h@P zF?j4}P<~4)pMc*Vz?aNwsk{)!WjKoaBFnss^Q5RM1IU!Ik$bh9t7d^e6p z9GB02828^&dEM+Sl{e4cS$WM-*H^w{&X&s6bKX_aJLfm@y8-U+&1rRS%(=dD!Ep~E z%$CY)k9$|eUL21c_p8bYwZE#IRr_Ye3LNWee_MG2j{k)0Z?$h%uC9B#@_jh2th*)h z;kwyl9;@4kx`8enHG9k}aF3rmd(4u#*H^~oc0zuAOy?~xpEz$v#lm^ht8x_|LjA2Se|gr9ihr8dRvw#od{t)N zZSIA6=T*HhZ$s5t^H)?{Gk+SM&`rbt44h}+JR9fPI?r@<;C0}2cuqIhO^w#$+w1SZ zi2faLEx>sJ&L`r0qR#KY)3-S|=Hhq_fA@$dLqI7q6;5s+HVZ*XywzoUh-_#w;W*42b0b$NPW5WiKh4EZEb8fqL zHKkLX$*#UkVr`-;naw3Ki4KTznOHoREd&}FVKtV7f#aJ37`SQ(fJOTslSXg72awjG!x#+i-p?yHQt4 zqASH3v)M!@hjedFWU|S0YE>-NuP6%PEZB%U6nszS4MyHy!jU;&bV`u(#bPXXX8HVB zs-ruRK^&HQ^JNMZY*k-(F4+|8?zU<}?j#<0O9@w|V;zm%-Ax-~$&{)<(vpOnT1bf4 zh=i<7^rScYq!dDmG;dYqu1#c-CdF_5BbDYf#XnMd`e@Q6qe>T@F=|+oqF_V{$~bCZ z37esf>E8a<^r{pxl}g50v#2jLpG#uheTmj|Z&(&~nqI6+WHu+`iPh=c(sW-+%E{^u zbVlkQ%Ry~MgkbyZOU3Ea*q&V4zb@H@mWQTNOhEJIL@IYA&(Ou8D>9jM23Le6J`OKw z$u3WJqaC)Sdi!$A)0v<(LRT`0thGsZc1u?IEF=j5m6l?(OJm)!R6IeWfZVRn#<~*C zTVp-F-GOLbtTVAJ0VCmqgv?Rbh7GNm{^f~WeB-LvRv4-5HHd>vm|+(!!q0{$I+2=< zVN(TZsr`bGY9CzI6zgRHT2d{lRs=EI1X56klQwwqVv>>VL_%J)WHet1>3i~Mz7kr) z93|#cc*!U&(5L29dXLtE=zltjMrzrV?oc69*eBu0)(b=2M&FUm%fu`(GleQQhP)_| z=}c#OtKeIQtL8YE~X$yj&tDq6GF{@z3fJ0{3i z_nCzQZD~&R^&~P3LD!m02fK^m!sZY3;W`U(eq!s|i<%f2CkncKQH@d3}FgX$pdzHvV$ z8s_O8*<37>^E{R2{nCAb8%A{4Q7HAT9>fErQF_ljB_oVx>Y$GSNK{~wY zFQ#ZjOFuaX7PQ_|gFt~`(dm#-)p0VV?1R;Z!xV6_D~v{v+r9*J(Tn0R66$u=^ySd` zKn(Sd_hmBZZm~>1#0AYACN1di;-da8_6jKVgMt+F7m*b7SMtTsTo#Mh+~C4M zbK!-uYz@^QRc}eDk}h$rkhXWHwYFgqn*kgyha77H``>utTLggI` zRD=ycE*0aFV(~5s7cX*NC|>M#@9N4Vy3l%;gi0EBLLDpM5|npvc~Hnm;qbx;M(Zr= zlihkmf9lEB2-i{RgSG`(DzPOP44}LrKtxMf3DkOXDwEy`v(H9ie&JGCd{P@iv&2s( z8D7v5(eD)cjVSR`gYZECpH9I=nFMWiNO8Q<^WKY2ac5(ORG4ug<&YGbM`4ZyVK_T* z4j&>QD#$K{*~d6+*sW}`!&{x|)}7zD_>@y|Z47O5V4oMOUWNy}TJjUC_$) zt;^weX%gcU>Omnd5C(bijStsA$R4gS9%s|CRGfh!Y$}=4h$D1Eh)b_ue1;1q!HZ5g z1wqcmQF?E?7JZfV0=O|G)E}lBbXB^e4})K~qKRV>-w9%Tq73oOPM2r(G0U9wF3aS- zEOZI_P05161l_ze?Dj*%un74IJAH^|O$QJIENwQI>EqlyxBx2(4=$8Y&K?5 zth|V0Q;W!RWCVARm~j;R3linLAP%`QaY;4$Yfi;6bl1q&acWf<2eY93T8)wbE3Jha zrJ>*`tb-IJJ=v~83aE;O1PpVmO<+=#l3%8~SLdJx<-pB#UY20;mL)o47@0_7)xg4F zgdHTXoo;z1-4o1~UCI2}_4tXj!&po`3bGMTr##PXOlCaAjSDkO3kZn~DLCn7shGGk znaO%ua!q5lbz_3VTnn1hm0r7wgZk{k6$uQp5ow@!BdpWHuyt~+!`8vj!ws_~E@Wbh zqa8))%y6W8!>+)DVG@+;@co1NcR`t2dgG>dILk)hJgSagkWHu7!t-nzv0!O$w7K-T z*tUd-eTUi7p=gV)VCV`D2GhNKpn&5B0gc-zSV1q!q_4yz$pIFH*K;T4*89}y2u0=Y(RATcvgkX`Pmsp<# zXLSZ#Mcvoa*NwHH&7AWTLNt{~F^sfjSlp1az4e$^bVA8F9mE2rze`KD#LXoclsTs$ zUe6GAL^b%eJ0;W)k}*~b6ud)9dPzFTymn-GUY*#oq7Ub@S-$5cH*8p*OmxH9njYpr zi(Pc?rVSgG#^Re;zd<0#7au{sq*RU`vQ!v!0_bB(Jp)@ds;7FCQGM2y#A1RV^w0LK`i;#;ahdM~Oa`2Eny93@W){ zb7v=)QKaEV2(pIjh9wsU3yLKkt1(F&HGDP!BUl>IDy;5cLR{*x8og?%^dhJ$f{*Sg z^%>oZo%blQWw4}?=^x#*DVmxmsOj>80zESB(<5 zHP%%cRQiL4gvIJoPp?Bq^2X4=^cp=%DXB`$*hcpX%}YiPfH69TiKF|iN^Tw91AXg7 zvE0Ve^l^#2BzeApm3pj9$1xcy2~WeSP6A`eQr~s`J?-gH>U9yGs*EOY?89pHDB(2=ERALxHl9xFPzzEN%qE0XN& zhrJ4JQ<^fU>B?kJGFR%;)SX1< zoEY6JT!Ev9@N1;m(S5P%g}UPUS7|~+aci7k8p0|p(_iYdEZNzajAI>O6u;JVF4p~z z0yOvZj&_~Ob6GC!+ihvgmubpi{o{zm>V-1Im~5@bOr_r(9N)BVgsyH(V>-g8U9IWn zREH)ouCccllWjb(Aly8r}tiJW1T*BpvC9*E*@-Vu?K$+ z>-~5-=u(LsI;2!bEYlHQXIs%n0j>!a-b{e0^`&We^v1GT?89Ngv6UvC2qumiGzT+B zb8zZdGOkvTQYoSj2IsEJkJ7o2!s%cVk5heqDGDf~=a^hEicsRm;}QlO7d7WLhFk${ z$|RuTEyyZopfHLnTq!(%8OKu2)*Y~V6{pKGtnScf*f?VHy`<}jZEftbkbZ`t zkO9XSEf~ZHBCc%(yfqjK1cFX1(o?wtx31UYvOv;f^BAtAtmTRY^x7VIn5&&D6Gr`0 z;^wV!Ep0eF#X|5^i3|`8q9wH%h3b}K2Uf~+TpR07;Hh_aI+ftchE-WMSSlzyTBcV^ zaSh+Kj94~vYO`9TP&C1|mmWNYN8OuwN-`F#^ye^iV<&67nW%zvaj@wn#YZk$aI_5w zzDZ&=0<97|u&`#xZCtK3wkdJx#v~Zz*)-1KT`0;BXKtovB-UIdgVB(R$-&AG%>s2n z*u6Q1rEp|Hfo%{h+6Plqh@dc2)a6B2uMJZA6)?qQVErJ$L99~^uJ6UNs<}1XTZz#i zGSt(~vz4~Gk5#ewMv9;W!`x_bxkTW(D#0g`Texb^id7k4@q?x80)-3Q%(XnYNF_pv zw+V6wtP^V*VtoGrtgE$5qMaK%OeYI_9iUPnSqJBjgJ*;0a znYKy^xm$x?M4>bGq#3eYI>*#q$_Fr|%c$%K7B*o_M4hpXiAAe!#ns)N-m*NF?8ZJK z-Lx?*P!VBhSy;BVhu%deauu}n;rq6z?b3=;ad3g3YlL=!xoof}%pR=L78z4L$XR?4 zTZo6Da66g5mX49)q6Hu6<4xU2vCYTK_5@29Bg1G=L`yu%#b75XLG6r33 z^R$s(;p>CJ;Xevf9JG{#vIR8%lqr{1(Xz@4-Cc>7FRc=JI8i}yl>{mjNr}&}0xR(i zM_wqgl2D-{EAb1*5R}7!XEN(NNXECU({p9El+qINQH zp04kDl?zq51_05~8@#jTKrfQ&)5>OSJcO;X%jJOnQqR zn9I)7;4>L~LT-Yy&t0@(gUr6e9^A|pE)uwA7=CUJF02x=59vkcn9*}D^bsMiLLhaR z1sBFdOaZ&PqAb{-SCo{bv*^X%zo#9K;*z;=92zqy@xG%fUa_W~Jva872dkUt)-i0s zlO1%G+@@aikgjmvUlavNIX{WKr;2i{xhGQG;#U*}NyBrR1g4s!dve9ePqt&-M+_BI zy9Tz!I|S{aDAC#=9vEdWNoF|)YE2jY*e0|Rz&%4nF*4~pHY{s!zs4wGdP|msT`RX> zHQRWbBaLh^M$-eObuG5zZWRmp^Qq#Rc0SfCUK11+lG1_ByXay4chQaH79BwWn3*Wb z0~JEKAd&D5+@2rfr8 zP{TqI43}u{EA7B=aqqCp{LX|R&fd6nG2V>{)G&7tS}Q|7Ok9IL=eGcG?I6|x9l*n9 z)_xYdtMC|43PLFs_d1?_)x3FMtvJ0_Th*=h{#kOYErDisi`1A}H zsu)8X^Ma&##a`%bkfjlgkEB%T8ab}^UY@mN@l4+HjRm%@uRUuaThr??L+Fw&Ak7>O zqc6c83ww@Dk!|fIvmH8Q-3-d=4y9R}2{ou*D0}SC)-YLdOJmsIj}@C$I(x<6D6Qi_ zQ5_T>XNl8S-J@J=U_}@5JIpa`fMm*Bh$A#6D8w{U2K@}S=@zboCBht}a7oC?l=;U? zN_xOIG7DVD!5*nxGwetb?lqaNgU_cx*M?@la4-Z!d@u^fe!^en>SKFja~nUAI9 z;~!Be@_<{*SC9)67{DNCZxDWEBGm;qo;zT94*j}!cT2pc(>s}L%rru~Q{X^J23kzN zPQL^}4lmm)1`b_N8xG|D1rmo5l-@>hF$CI@NV;_Um6)7kM?4>bwBtFd!>WQ2Y>P~1 zFz8UtDW9C?n~T+3bafWwOfy;{t&!O#&oLU83~4kH!&Z)9tQKtJD7aI85NDcEs;yiD z^2_#0SHPL7fDeEDM8T+a7pBr%Qb8DoFA)xVLxl^29Kz^&zD*#)&PsbYB#}8N_^sr! z3>p~`J74@W1b5^Onl9bDVI|gyS}~GclhIoPx=HxSq{?!bz}DMF*f;E7OyJ(AeTvS2$k^5Dp8O@@}*FEQZ-ExD+O_JCGp=P9LT`}AN} zUST)=@g!Dqp6M<=xs^ENgf(SH!GL-ZiUf~rQ^A$~xvnk?cpt*7NaV0vG1-Y{pqTY& z5esHM5$i!GhP^Y&7y}hJdNjViq2!2AaYe8kgA~{RNCI@ee3~#qx~8)emvDEMzlvoP z4qtFv$aQ!InUghro-+_@%B^LjT#9%bHy=+8+Dwx zEWyW9Fl^Z6z>zT%;fJN@eEgee4sEx%h1IoCC;d`GSX?T~+AFD{K=!yJB*0GKkSosW zuv8SMK!Lq=g@+df#Vf8VQdC?dD_jDpUmpvLMqBF%`>T7WMFKh7h zQ95fpZmVDgH`aGDSoiV1c!R=%=|Se!c%oMk&?Qa9lOHc?%yi)$%9Q%Cq7+YkFa_-J zwm6+C`Y;Mkud$6HEKa7dC#4u_9qPDni%Ze{hTXv}iy;z)uqYX>&u7gDprOVycsrk& z$9N4d;%oZEdAhT?ie~beBn4LzxIorXd~e@jU66a(z2THKYE8Rdc96cAi*~^>mF^`{ z@KMC*_PCEk`;8Pc_cB9KtRIwv5w>JSt;-KRo-T}27UJ1<@D2kQwSwlkrK7NJI=rzA z6Z_UOOcqwUU}|#d_VkP03!X=3u{<)po(f;teew7qY_#jqF6YV2Y7zb`#zRa9KpC zw~`j(`Pv6YDxV2$d-IieHywj0?QRY@YaeQuQ3^yTF`ZT#&BmC1>7_uY*ATpzfkWl0 zU|~0M5_Yz8vg0r9{JhvGV3=(Ca2R-OQvn zCwUzP++k-6hN=ZWW+3b?L=YAtg0M3ay1vEtP{Se|DU%@^DTHC-w-pK(ws340;}WT* z8cDWApMnHw7$H$340gH{!fE7GBJB+#E|^vn4eCex*!=T3d*nAvqDe6K%-hD0AfUu0 zuaVo7xiIk?euFUSfqEl0|D07hONm-V@Jy3Bf@Bq z7Q|p{Lh2d=(b?zbHf(6OMZQph*f1lbTLcN?bS;o`Bs!YBFdqv7Qsu${wd#ht7#Tqz zM}D&Y{Wjh&5F=Zoi5a^-FMyZj^`%!2dAb~X zuo01#-xQBAYPvC)G$Tl}k(giSFqeOkiOOICCI+KubD#)}B={~UUWyz(0biBC%oJ~h zI-3oy;Zj2GcRDhVuykqJ#nz9k9F{W#O?_ zQMNFyaIm@>fUU!WSP7VcP>WWnv}BtxZbq!Wj|c{nkmx~A@KDU2W#MYBXT!54q-f1s z6Y)L@d4tj9NO`a}TnGyT5^4!pS6PTQy%2ArW);n)Sr__{g+zWVcab($tEz`fc=zz` zYHKt45{|zHo6QQlsud-Imu$BVE-UrG<)y-|m?cW{a!nFi!YJly%uz$G7zP z2*AqK>t!MB!805hG(Lzg_@megJZl4-ES~b=vs~>--Zfa)%VPM-2l7~?Kq=nRY zn1zKl)L97XH)-)2?r1C&dke~o&xT}MS0(Lf4B}$uLoI-lZb)f#N~JQnBR(GBFJLqy zcjGIT5}``Fuq)q6yXd6vdhOSjkEeQ+ZAs-U(vl}uoI0>UhLWu5W?{oKRtyI+7iD%#w8|Qkq!mRIsZfTqUr43xg4hh94;Og+`m#pE!VT#p^ylS_-(T6Lt0M)$Nk1y2k{xz9*1yUR$aPZ;kp z(rayJeDUdLoNiCBEE`1IgmZOP&l`japT=zuQs*^;GV_{%6RuGeDe0O@$&b(#IKDT9=aN!@){AAGT%$#Q*|dwhV{#roOn? z>IKCl1tS`?D$Qz30~Ei37P@ML(F^&QIuvYA*e4hkVFVl6>JSQ1Sj`H_*s+#mBjk^g zD$bIuNrimTIR!ZjNlW5m;i1;B|IKEVp|C-@mimOIEuru>gbxWyZdM#ThC(qLnw0sW z;|Q<9WUrtRp#Z+`2uXrOheS3s4G9X%7aB*-)!WHrfEs#NfgOB7DhBI71T8IS`Y&yWoaM7Dh5_v7YrKZL?ToNDVU$lC~y9XO* z7B+H+3fd6Xi2q+S;9*yd+BQS2#SGLi!H98>%=c)co~Wsh)co92fHI^h`*OrCwS&`KegvU>v^yna}^FUA&n7Z#Ke@oOz}O{Ypd z+maeS&9~@>clR>%oaAvZ+?uw=H8Kdb(-xsa_iAp!>NtT#5%+8xtJO1i|neJ{iYoC2;#Ds&*B~sPTbX1+xE#Z^MStZ3*`?Hye`hsZ$V9 z%*M~!bHR1^rd(Kog4-TJeI@#8qpHlNwaO!hjNUn7`o+C-J>Dy!d9dRMC-_*|=tDhw zMQvfQyUZ(pw(vPe-JbiY`@DJ@UBOp_{Kp_UR*uJVK6knRPw0ogU@K)Sl@{9Fn z2ksnx_*9TnW4-P$b()8)$pjMZ6)rj%7;}A$oBfMk-Vuk@@Dy=)hFOPa8M}l-744nY z*HMFoNIvOBS*H-?N^BB}_v00KSUxP6Bzq|>PJxFnAtG%dadP+t$E;b^n77k%;)4P9>GjLfeRCxy?s18k3X^XQZ z_2S#Xj)KtJ!gx+!cyri_$sRifYgD130A~Pk?`t2k(*zk%~e19=cRS zgqQ2hj)J)8qF*Qqy}@pcw7AM@LWT^#=Wg-ar~EC1Z7zTTNQFQ1Kg!NXAB`3ginj@* zNL&U@10RUSi7fyX#vz2`G#z_tvw#d=Wp0jTuyMTLT*(z67#{yoEr&sRKh`7Vct^T9a{cga9p zO-;|GpvereCgn-DxlN}vWbzeJ7()4%5@;O5{vic3F~$hN621uvyO+%AO+$DEsjw5; zM?7+a`|!EFpM_=@+BDN&BdrNbP+7i$!%}Q}2|GKB-{QwN*svHftONB9JZj)VB}%p! zphU1P$xUw|aUt8ot_$WVURW3ud$*}?p^UvWZFlbUWwxe|=~#uAQdVP57??rM583M0 z# zCLG9VH^!EMD&Vn6ANKS1`~5s!*ekiQUwf?ia-fSLQ6d<9X~f+NAzqLmrVt5iJf6Vg zo@nYKHtjJ}%^j)ciy!Sk*Q_7!K=Bnn74G**_O&;`Xk%k>zX{ZAvFEcORfFM>z%~u* zk!8Q%MHZ|N;bzOd$FPm2_#CAdv#4!+j2m%MRdC<}Hb;E$lcQ(&25k?Ic?vQ;njI$a zFIf~qppdi-i}KWPHHBB*v6&Ap-nzKeN;eNVp%dXDYRHGzjrfL(wVvVMby56MQ~4ST z^wV5cF&LNXHy5w~VPf7uql?hTUTk-7Sb*OsI^}A2wX1c@UB;#H3#hg392{5UcVR#1 z-VN3YX&_q!SuKtaIyZf->veJbsw=PB?2`Bm)daX3zYe_1VPhp-$F~AwaADOQp>yy{ z!`1Az!awf%AW7@0X2g+z4@Nc4ZK_4MEbfFY!jROucAWd*>TnC;T7|eaA#^Rm^xWsaF&8vgzrQcSI^k-VFtJ@rar`)#PwZ@A%{D`l%W1if2hRsOY<=n(L?qy+G5TBdaC!ZXy zKgFF2H_MpuTN$`|bK@l>*YD$K!hKi^tTon`n`mXqvSE(hqIHnQ;Lp@sDJ2SZSBvsa zBS+oHOE(yHh59SVdjC(aD4PqdoU3vQYe5W>UetKI$}A4o@U)@KrW7@&Pw8Oo^&+)t z{DL?&4&x#4lu8;Ub{R|fNWMW_%=-s$U)D`fPt=xhy_^1RLEIVWChj`DSQo?YxE`MY zFVs@l=l|+%1CIqN*o@4vIWkkJg5v+*L{8O9Ia7XXCS527HcQKNyQ-DyOO>v5TaZ0A zX_{GM*|EfO zDm$uq*sPjKWAmdaqx$z##g??-n$5~J&2O!)-HLPAD6k>2Hta3x_vHlfsv z^%PiFz-qEENimh58&9K@!hZsHbv3Mc)-Q~E6Vpx;%%)An&q2;~nE4oK^eMNRI}>57 zgK_U++~GX1UbY-D4!2=scpns zan<+^H^RkGo9tjyc9)8ia1S?Qq)x4MD{)VBl;;_1mOcd?D%(o9<-`$dU@NSvOF=)_ zAw()Tm~b`J-ZbvG30(_oEQi`Qqvjt)&(z3btB7$0Yas*0(vT){sCz}W9f3h%aWiruvZ{sJ@D>qJBI8}jHRL8WNa6#7jm=bWW9(lCK=Po^x1Xn zSLsj1XU@A3OALOj586e_sY&L#O1bZni*X0c`U!?HtzlVlc+J*qX<_*@M~sQwa>7(H z7P~i@={{LTDP#+0I+))S>|Nkbd&0X~O|oYVG{-EB^{%`ot7dQaWo{UjCBb@2N^4nb zDcEhMiI$%(VlTp3$(s#LBUL7+jin#Mm?#$LbHOP9Pi=z&n*^ja}GtM$$ z-Y92l?t{z1hi#noF@a5C7;E``DoM*rpqI3xf%e&Sxe>84X7(kGDkYYqwd&1C7ke$* zXZocPGtxtDv{+~lDCM}86Gn3C6%XU=G3^ck@~(C@bUOK*#pGiB7DAT`W4$KEEVR?y${$kN7KSlLh>3=tTLGc3C! zbKj4{a!YMkia1#kJO^QDugykK${M#bb&srgC)OqPeJQS>o-rOWYL7A6IxA<&E#163 zHIN~wZPX-|gx#O_=2(m}>w8(s<_gNb8?|6}piQSAeVDp5Vzv~Mv6L7WONiP}ZD4He zIxRHS3lx)(LY)E5lmh znW^KM@z^!gj38FiDAu}-3@ydv*8iH^>d)$x$ovPoMmKAN?K)^PeUMl^_aWa`VOfT@ ztsTf%&BZv3F)d{5br>6Y5RPR?H`8xte5?X)wh7j$@m`%RK3X>mYj!c5Bm(9Zb$k=!gJyOK2!loNZ=APsh76a>p_vWa{e2THKN2ESe&QiB~ zvlgxQq?|3L35U%@sPl9&9TsD8`ImBAv0xdJvo3>B*5+7hys}towxr6EBcrYw)E8VM8?=77z=XCuy$`-pP;X4tMy7OA2QlQW3+O{Xcft54edw5N8 zMP{|g`?B;IstJs}E6+?ddjWDQF`juxTWq)St-08ajM)g0oOxwi`JRBv$V2)sCU!_ z#!J1hd(q7v+Ro{xnv2moLL`Mb8I=ho}&P>%I0FaSQG5AXcL$Y)&?!F z^}}>A-`2|MD%x(ktbbrwT1n~`W8j^s-{e+r!6@y78X3%E@$joIjf zoav$cC+B^54*D+YD&4dZJof`>zwk*noH^d${f%4wkjEkK@N(K|mZ`-=KWjY}j&_TB zWG-t9L5y+SoA+Yf&_9TQ_Jlp5No|Ec;Fi8%Rft#78k>~&GM%TK99NV~6_ADE7GlzCH|yJL`b=v=tnl&Dt}COh3yah>f|S+v1>Y>QNmqBzs@0U2>KpHPB+A4p?rO zbLNUQVkxFhm^+TEg1WW34D^OB)&tM%Cur5pMQ!US+?Q)DfvzwVQy#RJKyU2sEJa?& zSXhc2E0~KTapsSGp{>Ikw>24R6WwfS*7w<&YlO@}+j;HpOfg{Y=YPtF+w95Rzran2hsI#+X;us=2o4%yvg@VCh?lQFDWs*pIW`&2msX z$*5yR{WiNy33JagQ*UE3o@o? z7R=t=O z8fR|EIy^E*)F_j&oGfkB11nv#1zhuG7#rtV%BUaKtI@~StC-3Z>MUrjbY1Dwm{J*7 z{j&C~S7Qh(U+Mz6wMOz_Qw}-Hjygp~+hcdKF&3po+e#nKr??WynrznkHZ7kqwvA@Q z5c6m`=6x+R88wnR#&C4=&TKm@*Jk)qzu4Q5)Bdq^$P&25O2=%L)wreIX6ns|!RA;j z^}u=sSJBOM(vs1}80%KB8TYOb|$Th|R_b~b%w+u4fpvOeCpwJhU7eKHKKK5dWr zuqG^he3lUC>Q>yDB~2|Rx4PsSOfzbNBO%t=7CgP?YKCbSIcvtwHa6t*Z5tc$%)8+7s$`IMfq&~7uFl>k>wXy@rRi^lxWWnm~amr2pQj{kUEAM3auoRlkP{wCZbvDwx)O02CihsDq=Z`rib0w4c3|6AaSZ|Dh`QZqLt&fc9v$;FZRP2)KZVO%^j zy}Y04J(<;~Nm-IX2&Rty)FCTtx;QQ{dGPdxE|wVU&3I62YyoVMl(H;sgcH;=T~?w@ z1D}#p$9Q*36Kj#})LON1_9?7&wq@p;=inNq!mehn+2-iWHD}{2QTp>fOexc5$Q1}O zt~v!4fi9BLkys{jCUVob}Hu>0<79?iE_@O~N%&>nG`Nqg;!PV|2TCS|Ty=vtgwTdzu z%^PD6N4rZG_b3F6BR`W_>C-p35A}h5toap?v($Lz^8{<{bg|v=Ou3!yKGb^ZEK~Hq z*?adGyRRzW^LI|YPF2|_Rj1;_fhu=(E?mMSF@7a+x(zpu?KlNaY~nH@5So--WxH^_ zQdN#!T#)Ki1r10<6C@&WC6Kx`Fe0P)P8flP9ubL1AQ4Sk>Xz~cNHftwEi88*&kOP zE?{qltT*5+Ss>yDmwL|NSoew8z}uG_LUurK#VMz;hL{&x&uHcYIbsy!;e$_2sOi;! zUf_&Jw%>soAWlmRu@WIutmdGon#}GM#w$J$vL>AnEu`!np}{bklyZ0ku$;8%y#hhL zW8k{jf^qm*L&%XH$oUF}9CwjPd7jWM;S@cPLOp!|G!zKFKtkN-Z-y7T(f&vmn^IKNMQdmAMb82juLO zeto`A9v%*9RPW1yk&mz5y`@}Q{fA;s%n!)iL4(QJC&NAGn1x}YS>hb%31K3_CW5m*h_d2cZqvYfQ=^ zr^zTety<<5J2s@v+-XDVlP7ZNad*RBD}m7j^C_JeframQB&0&#=WRgg**Me4uF1Ug z>7jWEjP9Eo)>b$|dn^fxksrM${sTk3{f5i*y=T=)zQi!Ia!-ct>!oi&PQ(X4kv z8j12WJA5TRb12%wJI8+u*++v0pN#{bQa!v6u&!DeI(~} zCQ`@ytSVp^bY-kFk&fn9(?tn->hzQ#^qL$TBxOXd*n!8fOpHZ3jIAG|(ci}eLk%g` zZODET93JtIC_kQG;hyu%6v!)nf)@e@Hz|Wlq|6?fVg2OU-{VVxed+>a{W8QHfqZ&l zh*@KMl>XR}b zY>k%YJi28LTFWRur9MwYO|%hP1q;tettqUY?!%?nC8b{dn5WkRQoSu1JoCvb_0c0N z&>HBISkps$D5s9s4xsb;Gfx+kLY=;=qoWfQ%~Nn(djK;!SKxKM4nDX z`Z>`z8xS&}hVKcumg_(flv0WY**2UzrS^u>>6vrbm;3NtP_RUS$jLCY8-ikw#N5(s zI3q>(T!)f^3Z6#-kCr;MEP(B448c>cY0i5@pY5KHmPv|~bC$((ypvJF4(mSs!B_l_ zVdw;x?8`Z*#7DiO{g!P(lP9IXg!pI!&Z?ruwxuF&$+Xava@%& zeHCTQ(tY{a4sb-*PJOS&v+-&Q9{Y!u`_vY%X~_UH1D|YA#uF<}CzLZawoqn?yxa$^ z68FGbuYi2QNL_pbaS*hSbF>Of?BjWRK?*mTZ{&>~Qp?@V@7sWW~!Or}ZWbbVDc5WS-7Qa!?1(l0FwO{p($LVG}0| zTbB2$HT6k}I7pE=DISwH9*I0NV|AnyS(?k_xGO_^1?+qHK#WbAuIXuSaLm|pCC3=1 zLZ3T`Ht5^^8ikmP)E08TIB2g1WIYC&6g;Jx)P>8oFJK~Zw8yadhsL-jI#Be7SEC-a z=uf{%8M#D-*BJN3T+t19Vh$GT3MJkT0_l?-s&PhF{LVt8pA!Tp!C~k4dtmg(l5s9^ zlU&kQV6@X(dsr>p1_)ZF)DwMAs~+tSiyQFaur%sqel?!F=SCT`r!AI!So9J@9Tq$q zSL*?J&MMg9o)8|sGYi&EW`GR1+H(OhyM(3fVYT%*q-X#b>ZCS)KM@I0lC<`4)I}!X zS=&4^{+V@vND91TJVW$K38Uh@%^SS8y**fX?|RIdcW1n+91iWJoc<4s4r}}2kSH9T zR&D3ZO(gA|n6YV>by(6u14%t|Yx`l@3;gEl9ys-6eqamBKdk6#I_exzKS-7|ts%g) zA;rg&PUsJL7}gKFDep+a5Z=WQvonP8r2dN*ZDe=!Q~8B4u>L=rcI( zHIRBf>=sy^Q%iKxT%ZmXxiSyN{@>*u8Bc4u!B5A!9>tbxy&+1qx1p`?H1Te)Z8T9z z-s==)j!kXD_uEsj6x*ow#0?Z-}TXjR2Pp02U1DW zTd;nPBK1Ht&S2q;SS>E?Aq{S;8Tx|F}x~~7A9Ov|N>47~HDZ42BY>Te&Z#p120S10Lg#$o7 zTLXfRq~@R@pH3NOjRJzNqXD7IV3?Uxudu+@aiDWi#tH~k_;~hnhM)?J^%$6l$Jpb+ z8KM{PK6P*jI_zl1CH9Mk86~wyPnc4YG#!}JUaths(PlD6IjJ$t8KPxNh&osUUes{% zPvnwi0OPgJM;-e2YGFLy|72d`xntp$2DZtcV?F9S7WOQ#HFyagkBJT$CR#USy6~LT z0f#3dmM{!0t}_!f!atWVbC*0C+@8%#9L2g8{D3;xf}2+4s(!$A)}@Z@dQXM?SP6Xf`!>LyE9vPdgM;9` zx&c`mfV@L7WF5Ev0fQxy;!Dg4xPZlBm9~ChM~a3lE1#!5pdP&b0zn`B0eJ@r?7LmY zqaTjRDZ$4&Wsk@Vz%ggf2lB?%PYjRW4 zH6l3R*^tOlT}SoZ2d>_$87A6beIdu%NQ(C%#Xj7|@1E-iFawLm7}AIJ0%KZ%u??r@ zJ1{dMMWg04iawtfIe5Xoj~p?JTf$#Q*x=D9Qrg(3kau+H6wNf0A_sCGVvbr(%|@Vqnn+R&T?|Gx;f28*;YW1kVX$ELvwx zCeMgyh+%Bn9JAIW{y?$MsHum2!J!m69TnfvBw{wh?0pTfo)vh@5{WT4QpycM3HxVq z(8Nk(IQ540GYiTYpA`LJjz}JRHRM|8g6Y5)y9EDg2%ED1cHWxEzJhqq^=CEHQ&Hci zRdAi!XshE~dn9rm9X~}KX21#!WItvIZNmPL0h9nkH7UD!Lupn%r*!m933QnT#2C6G==ir&II z&oJ>f?K8k94gn?30J}YrE*^!NmR`~yb~$rFq0gVt8^`7Fku}kRIpi^)e4FmRBykVq9#EuVOJ%9@KOtwED;=RKCq2v;`thySPsgX`1F(4yIg%2iW%Lh=v@R?Y*gepU1JbL65D`l(D8U2j9~sP0xSgLAE9X<)4#K-NWirGMX3NVZEJKj5C{Vnna+jz_&aIT~>v z^0uFXFV-_4w1kx16A(Iu=K`|yct*jV3dpsR)__TCfbT1?{&Gr4bd0X}oZ31?4v8~n zI$536$5PYjKM*>Ibb(LB648amS;MY{mXn`} zE8~v_gk|9qDRaa(ELy!&0^&J0pLdXB^`jpk?>ZQnGf1vbGB4^)k3G7n^$Lwt?4Rb9 z8umKpdD~lo$H$l|;1oAdf@V5pBp_zQ748^v%mnN>-4LrkF{^X)f{=|VhYR56Rmc5f zpOnKn$#3MYwo!J)H0cOd6eXhZIkc*Hf)SM1mn z*@L;JrNoLe9KF%f{@4)_xpcY#jFgBsGrv*j9^ z4h(ArQ3JS>s!P-ejIZ%IDLK40+B+F#>Dy;6na^<^1q}v&Mt|t$RODDMkT)gs>Wz8v zTm!c5S^Bv{m&}L;um8tHgHN8JoE)CZG&(W^=hYF&E9Nm#>gQpB(5+)CahwF?JRZk6 zPWhmS5>^JRk6fb76yuK;vQMZVpAO9D@LAQH4A?$`8jiLN(WBd0E5J@geXjtg19m(~ z8M=?A&jlX+01Jgc{+gBLOU`||1o-? z`M{fQtl4_^3AN%`W3OuDh}0A9AybL1Y7DTQuY{zKh08ppns$DwN@co$?$S)IPW(Wkmo3 z4W#U+olfK_n(i{@NSR|aq~qLVo?7;^k;B_kN-X9SI)E$&Tlvo&BBq zyHz{Yy}EuX`%HFoR=Nf)fFHJttOL)WuUp^Y6UTY=gtz2ly2Ls>@9X;Md+1mjrEppw zyVuvKr}brRc2(YQ&@(dMDvtq$I|V^Iv)0#s7yoBotoODZl?;rlo_(}4~$^LL=v&S0-7LN{1SeVZe@bFIeMu!>LD-jg@uVwgJ-Sy8;5M1Hi&`SishQ*sa+W}bE1Ec&v za;fFktn>kJ&2|NaYkyE7`#`g&L$_fPN8tD|d>lcV*w(=(^|xi&U;mx1=d(}idTVy4 zYTT;2EMxa*8T%iy_hqH0k9}Idh;U;NH4`1qDfc&O0v6fhNRgu%+FT0J)<4XF9isPf zw7*f9=5_Bz{iM&0s&B1z4Rk78)o1q zp2zZ$tSW2ed+AwmI)H@zBR=cV%x=j0Tb>S1r(NsGa&=#CRhAdy8gsQH_BYPnT&64e zhvd)%KLZa;9Ot_s3*sJ{jL%{Rz2lVbs_N`ks8g-?- z^#k$<%$Re9cj|jC=DV-@p3CsiF=_HT97ThG^~nBw0r zg4wCFLAcI_`(n0{sJyb#O!LU*&BY>{t6uO*#H?4n;MJW?abocAxw9#D8haIK^UE@9 ztBDc*(snxhu-bZlzu>^V^1j?7S#QND_O9+HtvFZx;Z=WFoSv-Qkve8xd6K|E62FJy zJ7?U9c=yi|){eFE3}kIIWy&unj^<7%cVE}DnYX%o|MxsKxs7JX?Ey_4fF-T1PL%x3y#b>FN8$dABca0-{AjT8}RsjbB>V-kfK} zeNk?Qt!Kll`$#7Ne@x$SDPD0NMzq3t>fPEq`P6iuQh38NJKVB(CtQ5<^LAo@wWF=n zxz)Y=dGK++=9QlB^O+52x7gmhWyL&^zW#_S`T6Immj^>14{45m7X01iB@z6bY+~hT ze+hgXjyZ9X$eji5q`kYG*yyYgf`#!#rI%$5aOIIfF`m zY`rM=fTY9kIdZ1OO;ny$eRt)Azh6DpO8Wn_{l+2Dk4_gW+0~eH<(}%z_4`uyT8I>i zM`(_|jXN*zWWT@KcGg-R-sS3@d%Ohqhp)t0H>Yg;Ch}W5)p{pVzLfr5z1O$;Srshu za-K8z)4JDp>3!FwG~lWSTI=-l#5e_Ur)V|oPhHa&uQhyLej{@e9O+3m`2(;c7P`u}#N$Mu_3 zI}}}Q7k+2dzg-XLyPvFOdzQ8BQhC<0OMkcNZ)cYE($9AFep{r}*{(jbw%gS{>!7}J z-K31C@*HO5Y-52}UrjmH>)0+D?oj>Rs>%Ptbuw0hc4a}0>QPF+o|UL;!0NSwCkUbF zHjSUP!3FwZ)~cC9noSO=bQ6^Ne~%pfx6x15u~Vb$4(fKm3(Z!&=&IT3su4s_;506L zr8nr}kNLwXwdg<|v}YXJP#YSyxmA?Y=gy#=)>-GBf<1dfnpMnREj6~T!P_0`Q9b8y z;{Ptqdw1~j4)wK5{ZJ>t^uAjdByTD_4y^;yyeai~@R1(Ovz@_5bSwDOxl7~kh9BLu zxlMo6gj>O}PNd=9ku0Mk<6Wv5vkVT4)7|9n3~bi7Bg&z9NAOJ)sQk`+CIyV_t&x_< zZOli!3~kfMIgM&-2oBz=^!U6 zR^YphhFU_fU-GFW=JEqi&__4xU<{*Ihqe3po?xrjvKxm*6eGbHd`CnE|iY(04Y% z*8%tf?ws~_AJYH4l{T&(IjQuVPbpX2l_=iU;`N*l_E!nxb4gANEkU39 zW&^3bxCdOERb?MsU79$0xAdaOUaru_3-Qpf(M@Kr_*+`_laX zQ#wtyMcEhl)ho+1ym@?T6Q$m!IPxDz2BU|Ptg-ElcibS zsCQ4c=^U9epFzRf1(WW`)16AQ55E=KxEnYsDfq6OWKp`D_dsvW=fZxZ^tbkje$N}K z@qb*?Yih>%b)@u4TK>-If4Gb~f0Z#WN;PvRCse z-g(8(WCw|eS-tLzb;uDVUl3r`V~u0|WA$WZBT6E20UDJA&I&%M+)n9hVfRPm&3H4z zt4h}A=fRNWeW8yF@^x$9h-rR?G~2XZd12Sg=X~xf;H%%hy+wI%7Ml20hG67O?JKFE5Og-x1Jxet=qZ)9WVP|OE)lbf>*9;8x}N7UAJ}=oK`xuQJkr)t z>Ro!gO`Dj-ddId>snoM2Q$=u;EC#$7@RtMra!1x$<-c}~9*NlX#K!hbwLPM~++HoW zmtjL+2FuG5Ls_iWyf)PqpAzX?GI6+1#nEC*)|H6`G-c{JSdH<%8dNcWiSDWb8 z_^DM(yYgANwsfEWb$7JXmcHSC8+uADTQYHl|249(o=R=;Up3Kksef}{PpMp1Z{HL1 zl{|%lP;>ELMRo7uzXjFLGMjo^(Ee;-o)M+>QmGq>1N52k&vXvb%d6xO!FQv{cRMB9 zTD?>MklU`#o^qaT?<&{kYhS2DdGD5ti9|iAD$}k?1eLa|ELjCnKdz`jeZE$In3j*! zM!QA6TWEre_`?p-^Zrup7E|{AMA;9atatHirmR-~YbZI?i4HHlsJWx4q+;i!gse_` zb5_Y{7`xsZbo9H)Kj%$IyXi!ntBr3dtJf{%ZuRveF@B5SE<{CHUwMN-;W4JZGKwT@ zK89M>ddm4sQfDR2QJs`Y)Kjf7)l?y4pdaT0Meje(dv7AC1(I4es^(8xP12T@f~b}% zME#`IMD?{mR!b9EEv6w7bwjS~-hS5TExPzwql*y3OCk7|+Iz~GIEU00zh7H?CILT; zO0QHbtEFE@?N3$^z=Q z)#`UvH5)-Bq;y~Za7C`Nck!o{a!W_4LWh+BtfQr?RF&zdg8#|hs3nDLpfHH~hr=v> zO7YU8)ru0eSbDUrqdd?icU`Vl(ATzVB`|Gmdi`IS4vF^K+T!n_MBU1Y`?5;A^m?Ez zM=V6QV3HksVm`F#CQfYozkYOJAhJ-V7ra+@}VS$N?+USHin$5M0nw zJ+5DpOB-kt2}1X3knsPFfus&v4%%oYhph$!eVJ=DQ-~WZ5B^`q;ntY|w)zRV+%N14trYycx=(j^cySAgFMR4t* z4OyGq*JOo17j5q9Xl>IFZMFL5?vA!LwF$V=(IQYyyFeP;(9xm7N>s0G$cGeSpv?wI z)Az^#&27xN$scaP5UC+c8bB_op4FzJvRX&C`l^UBI*pFoI$DHi?Iag-C@i!K}o%s+OWkRmut@_Z~y%^x4l?l}Q0)Ah>w*-7kz%fbM|2&Z4vzJ=~ZjA~X(g3dnazh|{0`3X8 z5-=*zyWAgef54mbhIJ3O8RXLMsh}(HYXQF&m2XOwW7%51DUjRJ&{1=FTOjwu5PJgN z9q{ge2Rnli1GV~OUc;PIU?~2;@Ms4}9 z(x%?!{jti>BMX%C6*F5QO1qq2OZz~7xxLcam8wT44@V~t2Ye*pBLROh;7_{q;k;8) z`nuPhki}2bp9rt@wOaiv72N1oYW1(Rc3{VYCF#^t_)(047**Hzc5J9EKO(i+Tap=6 z%2-8Pp0y&&QOHI7gPPOK%3P_oc1cCMSm8sZiJofp;kbTHsy9$=>0P=I#GlT2YoVXs zm|JnJ{?tH!rF+nROt}bQ_o|ntq8XuM@A7=W=dTIz=<==dK!0t~f<7N*6H#wMCS-k@ zNz!>e3T9F?Fk0=mqxc1@a`Mk%PAso-6}9@Pr!h(!`D-CG6&X=agwbM=FdDR0f8<)( z^6E|;ZahLH{vGNBc|Qv(erC~qBNrVhqWh#Si?3UL;8^~9m%mB$P?DbJP-|R6E^?~ha!u4PaHjIhqGW>^ZhwjjgH*tcPKUtd zl%g?sll|2O*@jHEVUzu26WIwi$th=&zrKRxB4=`oyvhBcD1bsz(*$Iie$=4JkZCe( zno<}BD-&#*QqD9LK^SZ-a;B-so2KvPG?AJnAk*|rgC;|!$*^g9wuw&(HccsKn!dk+ zPesl&6?ug;Te5zI54A~|@ABg!Mc#;oq`wRxOzfP>5uku&;bB9Al1>tcW?B$+jc8sN zg%{MVKOXwWOO>vicEX@g6zvV`H^^J`%l=#Xb(Q@rzeo@H!dNY{mtkRRUJ|v~ z*Ovb|ko~NvDvZ5UeaOiVG-3%azNz6)CROW8GQ6jS#RxIi$*$Pg1ezfN_+W=UTud^r z_!NCr=#QBvWG#RdsDb9jTe20+up7pW2HL<4I!2O9tJNto_jQ+SkWbCQ0VHJao%PPE>U%-cw-toW_aXo+Ci` z$8v45R)0=%lWXf>jd-p$Srl9d)CC<;;OU+(3Z9RG=e5t$p0@siedSMMk$FLT;Hdsj z1WvX3KQWVUig3bN`O)VnTz;utQdgJBB|mSE`Fs@q+=UlX;RP46hSZk-TU=jpmFH5G z=Ul~||FSjXv;~@9hR-gmfwq3?S6MCV;}I`JQmg-}x^YlpU`dpO!CYAIID*kQcRQ0;S4j}}j8ty^c7XiIXzvvv)s`VQ&_%||A9dAh7 zVzwer#gHKZwgRPUYzS)gS37exiU>1Cl6=&|bJZqQHM2s-KVXGt-ZH7@HX`*Oge6L$ zuNhP<8z%NtFjs+Yf5?9625l_*Ym*vFN?ohJT(x?O?d{vbhjb6NiayU|(_n?ENE*)j zx?!+QHFDH7gY88|<(gfooBf@(Pw`J0TG2i=SgU|hTNP=x66r#mhbex0Ln2JVs6$1I(Y_K2tv zQBkY^D6TJZB%%Y7AJytVsc^2=TboQL2RagA&CrR5_SU!bezA8%JM5;Fc3f_tHf(Kk zss(RYi*4^0ySA0f9JKaqDRp#})l}!Ku=k-n_qbeMNlQ>W9WQ>xeM@Ns>+}cA(wFn9 zUzRoLNZ>oYi~mr2NdB&O@j_hxA*z2Ts(+_<>8oL+PpDM?I<>LYnXUe5`(LSzs>9kt zIt6TOiJ|=AobpIT`NL`CCquAH_w{#lR%&19t}VVK&HqD5L7T41sjJ#U8p0!RFs!r8 zZXX@~K@4M+RP}DjAOM|k5)HgcTP!3xK|(pG@?JRch3+)O8?}d8+todnd@@Wc_3}pQ z<&B~jIp}BPMn&x#8&F& zx&K2SQ~Kl&w;$)0=>$=V+H@>PahxF*$9!n?i`b0>qBwwvaOt0wABC32ez|g?>0EF8ILZ$}Sz{8a3U3zI}M@5tQvCaeaPaOBzU|yw>i$U^S z?V&Vkj!5L>*}ldIIih#z6?=3}9dAZzi$7jH(jNH_jh|>IQ+p@^$faM)9psY)jdSqi zqf%oq_t3laOG(^t?&_9)EgcEp7;}7oPm6*+k;c)lfToysi#RE7A^%qHl!>dM{%}c; z$Jxl^I&y2P=*EiZ`2%-Wti=j`BcF6vd-&h?piYZ#6jhrFUu%M2uSLb5=M{B&BYTyd zE&e>|tpKb1&kMc%dGB(zBG+2QWEbB^gcTz!S3JTijS*hSM|dTTAiyKMQuO&s@A8Hf zxt^vjul;Lurhbd4Othu3m4@Fa+KSfAMeYsd!V~>8H>>5%-I)|rD$WsW(;)rViZfbB zCUe38D|f3fE}4s`{Sy(|7$YId9#I{B`tiFX7zRw64p( zoA`1Ua}2Zq*|*Ar0E4~Dcij*=cNg2Sv%U3&=u(-7v^;9NzaJ;Zt=ii14YlO~RII+B zlW?t<+O~kXDm0z03FZ zVaZV``dwS&kePDtpZaR-rTNOL0%RIc{evXWLjyg~#I_eW2k#I{~%jUs4xJyID& zvL+7NT~aiDy?6O^lQN#(!ctrRq`X<`phy*GtY|n<Fc%nH=sj~(gW5N zwf!`@w4Vk{RMl_EsjA=7=uY*QXBs&<*5#QSLdP`0=uzsLpSIQ>x+avm!00?ylPvPr z<~m(qbaYEtkoT~&qYJVNgh($ugXYrknmPAgTg8U+4N7r{MQ%~v<9yn5JjE%Lf_I|j zIMdSY8{|Ti9sNplVb5O{!gk6r7E{qtwAa~z{-&eP!dT&n&Omvjpm+JJabKmDyd6bG zaftY2ek(VzBw8kwLw$3-kxHriW@&tU}d%^$UGcM$6bhwVa}~Tze|X%qzXiKa(;N zDi9sMO6d1J-KmZq4JTnbr}~?F8k?cOHO?E-vZx+)^R-&$?zbG^(ok%&7vs3A{xSi* zhU=>2hZh6#lN1NVjStXZ# z8zJCNgIalA?;N>00Ofgz;YGp%U&h1HK!=SCXL%7z!Dgr&qxP^Q1XX!voP9SDx_& zf+BD{BR>+gd4_v$-Xs0;OesHa0gf+gP@88Z`5h}DBxMNh`j@4^Lnp0xE}ij!Ch{x4 z<>Wlyc?RNFUXcs1zYq_^FI9~M4mzRF?Rc)8a-Okg<`e3Lr#F#YdTta=a_;jn`%{tg zGvwe4z452|d0LnE6i3vXe+!Wu#$%}idnQoHQ_CJ3$Xo&Po7X%a3?0mu=Z#Z2PtEf5 zu%*hc=p@bY^R!3-s(JpI-)b?;EU618kX!oYFmn8AB2THp7k&+JuXu)Rpb^QzO@9BA z9KU=(nPJle7Jag%0`tY~y-Jz6(_}4{0XXP^8s6LI%dJ4@09W%7$b180d`4mJaG58f zM+93R{WT*?AK1U0=vvkf&xb3&2{9ttm>+p`GQsI7@4dpEQF-zEo4`C#o~(-;Tr)oP z0oK1)1)et@kRea!pAHE!Iys&KC*{ip{IZZ?c*5Mk^K7qwIn{Y)Ynu7)HRbl9)S>QP z)rOOv3tTdekQFEB+`?zcK~vaiAXSG$#2q=UfJiY@OmG4Z#6_gAnk*m#g8n>PwBc?^5>Ak&I)#q_i^QFxdqBlV$P#_OTRkFa`T;_F4B_j{ zXYi(*(a}I^c+CV#vR*V4*jc742-V14&MpF1z?C!({6GS< zKnKhZ&)>D-AKd46M31XK=<}~PGix9`64LPRIAix%H{T)RO&uWO2B%O*o_^d0-lSfw zQAos*p(zIT`fI%9XSs5P&q>$Fo328W&kEytoz=WQueVV~VlMWj&e4Y$0!SSswQul{)!s6o7H<}^ zD!ET0QR^IKv(XQccWR5ayM*^E4G|;E=PKI@W?HZK;jdtXrjR_O%ss_ z?fi3QhWO?(_T`a~Q0gW9vNHAHy2r*ld-Vj5#q84`dIc@?&k6zW>CwON%xVfuRAu=A z`z|WLygmVF>=ypL5n&!=4Q-q0F&2Is$~1 z8$yGbAJ~(5iYJ0*aPS<+o`E?zmulPEj3Z)TZ6JqlJdyWo@8?mlalhF{E&npGr9lo$ zG@f7U-KRcSf0-SeN2`hWTtf8dmgwVn_!gJ2w$g&P%-}cc1hKLqcmM{!#qX**cP>wz z$2-!Or3_6#XacmL2j(D<#@_fH1SwylUF791B5>`gqJhKuk!-o z4V~KF!62bT7n*w_+OujEkfq4DaF1I11hEd0LN%)ZusKG`hv)-~rDy{L;w zyl3v7k!a$6(l~x89L=Bxv{?IqyowonGB^hoE|FR$K=!9VNn3!=#jJonA2YR&a%=Wj zSQb5@9dHQ$7k2T)#Or+LJF!uMefrTFO;2DQBtzFnYd3*%vg0A>4 zelw1*B3R;vEg#?$!jHz-z^q~Lhn~pWdJKEjgGx%!_@c)X$}twQp*;0~KVc;_*1xcr zVAGdQg=mF0HkPrh^WfnRahhRk05Bdk%@3(iG9R_@B-BXf6NYKwUO275x?G#J6JAmu zDY-2?f(Gz&nlX8J<2*BTYx?1bHH|-$r;N;MZmj)|`?c0sDrf}Widu|?-$(xBuo;iW z{+gP6Ef`IK^OJdwe!$w7GCOkUJdk@}Z9)dFi>*>-Zx4mg4=>D1&xXAF!0-DFX=aNSyhx7W(@LhJ7Z3Hj&5Dy!JWej1V4>Ln{+ZL}CeH_xMBiO~eY# ztS(M%3-}cKF3PNBNEOe$Up3(wJsD;sL(CPaI(IHo><(>!`{o#$ntEa#NABRD%n&+O z=(qhc7-mlj^^VC%@d>1?BBbsM-q^p9I^HluYoF+x6ttjrPzc=zVrIzE5V{34D;gJa zXev*!Ny@OVRLcB~qc-d5bfn10XOCdv9P*)#_lKltG%544v<`#~AQ?*dg5?3#^3E10 z?MM%(ch-e-DrZk=`cpgvH<%fDqEvLpIo84==kw(v&mPN~M{P!f7ZaK0V&O$oMrAmm~#G>jzxjpkQoghm+$pG+HiVD17j zzI$_=XUbTmysFXK=T%TSC7C5_CHJ|U#;M?e<%{&Zs!_xIMHhf=jlk@$(0O2ZhfV?E zdlD8+23z=6O4v_v5{V=a#9bLYpCMxN1L|QUzk0@u>)JqQBsxYt@{Ek_z}EvRMZehF z0^|Rn0ccEZ%pLnIOWd@3r+z>^c#j3wllMxk$U`Td3?E}?B4&3$XF)zSFl6~thwr&1 zIRY1ZNS7teql|ro=SdFhb`SV<$1k*j*Te>?lpgH~D20CZ0q}y;T-&(Mbra61^%dJW zFMfHAH|%x9aFQo=yn}=DuLNJ})XPOU_^pND@Rs$jra^35@mf>z{DR zsbj;1$iWS;c+dG9LPp^5tWKc=2zzvDpJmt)B=A&}B2V{DpLjUu*ws+0h#<*%RIkp? zvmc+0nrOT4icn&@fxOmPvV8S}UTiJom^G&+SOd1@?c5R#QHtCpBm7F|F~$A@oJc=!|E*2eLek zg_EhqnY<=CWL{I7xWIMO-5YZFIpk$HNev6YBEiB-w2d{vawcbvLIZcn(J@9hP0SfP zwN)GTt_aw(CQWUi!mXJ#Hb*IE&W7PA<%|QR(B>=q1|W9z$s>?6HrdcYm8ElMV04lc z>7Q3!!_1AAl!AI!U>sT=zyygtZt?56q9;Tz++L@EB~0R)ASOjb+vc zqiwQr=f+ise&`i08}f;$VSmZrCGgY!e@9PI!RZ;}#4F>_$ch;I#HgG9F{ z^AhF;7B6uy_%@oS_ASPlE?XJ2!Vi3vAyzp2E;*i2NDz^qappdyX&m%{G9-Ucc(_K& z6BM>~a@Y+ic&8o*tw(2}2)yt4GLxkDNF?oUkfQbPV9frw@^ArrGi1F1XUPH)H@Fl_ zGQ_%1#754(+z_$@f-6orjWxu)(0WEQAIK4-7!Mz?VUO(9fL`E?N4DRA8X!EdAyy(} zO51~?YBIhO=N126l_6`=3DH8z-VquMqe&@;M*z!7o4+;ZI|i)$Drpx39OB>8J(w-DPlhV#B5-D>*tC&4H%sp=)pQ#x}8^K{!PLVfJrE}1CE@0>bhmUqC z8Vm-lBE_#cg=YB773~H>pV2gA=R7p~?7AjUn$W40|lE0q8JP zkvpYcpwxOuiqt(*;8bdv;j!?R)|&;v*8QQ-a<0sMNIf8Dr|{k9`{e0)NTYgR4vc(! z_3ka@(&|4Hb7Fo#<_;Q6&ORCLImavv6U`FmfKPF%VfYUBoFig$d;H#MVM$XI?i~J% z`jpuIQw!#KK1$f#rd=&HM>PsOH|*FPUXni<9E3JtuQ4e{o5?6Sty<<5J2s@v+-XCK z=Z915-yEwOMrIxbO)#I*i4is6J01zCkoS2TP^G>1#gQgoVwhREC*n8nsfIKgYZT9-S?`8466I-j_)2`{P_&14j{g?2 zj|L4s8wWn6dUzjTUpa&NsMn6w5=p;E*VCH+&{ixcM>BMLnoRn?9!cNY3d@q>lGlRlqLj%2;P29nG(% zixTwG>8a4r$;iP$u#CtRJMcJ`iLpqBvB$-Wai#P+7Ae+k$bOSDJmMiyemuXzJ?EJz zkXQT!F9Z&5QU;eunLRSY`pL7u$Cm>8)CI`;Wr#Tf`SijNv&JgOu~Q;7b;PF5p+n4; zoSzl|;)L>$#`Xz4v;v>ZQzUK-nhb=-qY2Itk%2vxU(qt>;pAw*tUyHzpCMBxmBRs6 zPUGexg#*mrJs>@7gc|9Y2ViJoJfB9B`o02jjB`Xg=8N^ymQES+bjl3UY7ArvjY~pE zmegE>?`HyITKv=^zJgk4Gikcx4{V-sw>Zs(Xps7(%m-VeCBBcGcZ!A>i)aDLfzU>5 z)i4~#V$c*;Pxs+c>=LY3Kj!K6fOJ74!!w_}QXf6S0;HFahs3&4T;}R7-k3@a6)Tw0w zY)@mz>sz7(jW?d&&gXE^lCvzHFTb=(0(F0tld z`^bWsnTtSZ2`RndSIN!gaSy$dr+w-zost=EF4=D&8~UJx*v>uU(ZH}<1oC}#Quf`h zPrT_ec0}w(@LJU2BrKKDqqQ6SY0=D#;0t-YiXpgz%#sarpB;{#6yEpTldKkEX7>l( z&h@%a_@)RO^#ruUGf0HT6k}I7pE=DISwH9*I0NV|AnyS(?k_ zxGO_^1?+qHK#WbAuIXuSaLm|pCC3=1;+$H6;mrAdjY7;tY74nv9JE&hvK|9X3Z7C; z>cVB)7ch}H+G7}+f#5JHI#Be7Z!*??{#2ezRCtYXU(6NVfG6f)v93_!{UFf1zL$+% z9o9%_Jn82I!AW5398U|3{#Y{3C2o>S`U;G8T5Auhh1&o@%anSe?`hSe{b6wfJ{%4W z_SJZ6G_Algd)i{zhea=Kr?ht<~O zkfH%#sFT`oj$sK=lC<`4)WzZ%fwj#edu2lc(8<+v1EN<-7!~hr-r&9M?ZLu(*JIYa zJL6U5aA+^(tTTs2hqe81NHpyXo%4uD+B-30(=O|dE}T z7M6cl(baU+Iih}$ENNOpfN4XD$0wc8AM!9f8L1-)FpM^lXme!^v#dlLt&;FP?@QM_zOXH*Eo}cv{&L2@J z^g8v<*H|==sFR-Q!B@CsdckoY4m!p}k0U7H^z0h&tSrPf>zp;;uw!>%Mr56b$A+*& zAUKKF0Y;Rc?O)D-r#-=s;>MOJ|8z^@_L_1J`J|iDn6kZX&uui!L z{IdCu4WZwZvX34SRA>(nGoepl+L=0X_zUBay8WPM2<+29@Q%X`K|2`R@exr$4Ca(k z{G_BI#(-`pWh7EYH;g`m<6Z-)=Y#ZEol{G6(p;bpTwj?7WB>1RkBq0a+~B7pR*z!K zwcZe=+S}09cbblboRM6j6uEnyqRg?WZI~Q7#T6mwF zl~z0VF{zf;9s1yTS>w^p2q;SS>E?Aq{S;8Tx|F}x< zN0yCqNDb~~7A9OuUJ^h~7eqGof5 zF{lG4oVtzm8H~@?fZ!vkIcSJgax%xVMuCN|qXD7IV3?Uxudu+@aiDWi#tH~k_;~hn zhM)?J^%$6l$Jpb+8KM{PK6P*jI_zl1CH9Mk86~wyPnc4YG#!}JUaths(S})4;&ls{ zsKPu3o)re}11JAPE?EXJUh90+p?|Ly#^e1@<|Upx7LH|8&bpZPw9ZrFSzv4M5aMM@j{6!MNPouZkBQsh7m%Q7Ax zXR6RC$1T)wT8SXQCK0n4X76i=^{l{KmPm}bky365 zO4vV>gCKoB$1Eskd{Xp>IU;%N)sSnU3#J2K>=OK|A#BS2+j(mu`wHSc*Pqo) zPepy7R>5^@qpgl}?UBfNbo>-`m;oy^ko}k;vip!u3OCX($ z6upIao?+r|+Gl`I90E$50d{*LT|5dkExn{ac%iwV(C1I+jpK6oi0+#+tkBE{oHc-1 zVHcJVkjsIf6-%+^v1>$!SsN%pr{FRg2F%Wqag(kQvEu_+51@iQlkE?PcsaH8yj=rN zlPrsR);!h^??9m)kAdbf1Gs^|Vh3W#V<83dUQ-O2>J$SQ$9jBJ^YI?vkS!4$w0KtJ zI6I*Rz74$uD&|ejwhLq(0J3+R(KyT(`thySPsgX`1F(4y*y9J$0VpX#Ps z3!(yjVMR@`yK_DdGVEvv*!Jj%h8&vhy{Ubl$Fa6SkFC*^v8FKx-_s^d&wv4=ja)hZ zFf^CXnbj`!=y=mLtY?lrusF|ybFE})V67cM)ajIQ{c+B!uJ zi8E$8S)I&=HKKPWK?9OA{|4P4LH1@DI@1+9b5+;F~oZ3b4=%%5w(ea451;= z1=gdX{m_;)i4;u%6PIK$B!)Yu<8A|jVgH-M3nQ&ukKj3m%{_rQH?bHhm^X={+M{ftd0d$a24-6qCAwD8-}eDV^QL}nBdv_A+6cK+j7C9 zd8DirL=A?~=Fx!hH9jY$1h0+uPDWY!_L)oObDT#(gTWWS?@W&M0%-xyt2gGwa}C(K zXX)n-T{0sYy#5~(4L*5>a&mYs)9A~}NK5~gRQ;a`a$UdQdd^#|n!~Ev)WWe?j)Nr(Ih#uX}S^;({>U#w^9kAm`%Ful@ zeJ=3m2UsWs;(2UzgI>wGPnTG#vw?@tXsT<$YeR5`c8tPFiQ%~z6RIdN7B0{~xcR`F zZmijQ_X)M)S!1ti$-laUWtD7K8qA!TsDM6H&EbLI`U zGZN)c4+p>$_3S&rKBm7>m7{~m1_I5(N6mi=tx@V1l^i#df3AWH-2u^h7?JRTSwp%t+0!!SL9 zvqTN2m66=>C@=1?fa8l6_Tl7^!f4d;_v7FVc=VH$D?S6gG-Qm|1u*moM;x;_H3xj2 z0tN}%njZ|g&=>OYtk76v@BoycL8M54tIvQ8yCy5Q^GJm{_;L6FoH)tsTz@Y5KpxPN zaPSoQ(iXdTFf`<3q&}Gi!}#u-xBv-@_NxN21k2UT<7pE1`7#G3_k)NB|}`lGC+v+~yv>n0+QFzw}%YoP(G7 zY%m@a!)S3w@MR*~nQhfaQ4D`tJ+8-%R5#JRk|vy`Lr%9(bgkqluFSWw{8$*AgzqRv zdhF%$B}fQ`%y(qBWw)=nuiXxlC8`56Rj2 z`td%NL0k|fxS%OA`d>@c}##+66H+|3QRcr0&kICQR?b1rSa@AhlzIj#n zbM|;_UOnrJ*~YsQ&Fs{cEscED3pU5f?@r8m)eEk-!??P$`Qz_wik-$@#n*g(|1Wi? zvs3#m`?i&PyMhDv$_H|gw0;bhcE9c?tvFYsLZ5M5eAT_2J^Wv$KXlBzQrkEZ<)iUF zUgU@_ML6%?S;E?}-Yl9j<(Csjb6m_3^?Ek*R(J20J_}kM^R0~;3rl|MrzV$@RXU4V z=^x&nyoz|@O8cWfzRWI%XKN+#_W1V4kp3T2-!IO)eOiJ10LhTn<4Z^5@6=*=B*$ZM z<6u1-Ud{J(67Z+OE6&3>FW@}&Ztb0XYPwG;yy3 zKJM4N(nAnFv*GL(&--p!F^}!7KjKP${(0)dv|%sy^1;6#LChB68JbA zbMg&UKUDYba+3QG++VZTqWT-gZj+eysz<(h&i;L0AvKq^_=^?s1vpe+vaXk)ryZ$J%+->&qyez#+Xg6r+V?~MAl>%l?y zQ(OCV-?eK|JF_k8A)D@-7st;RGx2NJJN@6Bkm>L$nMeQXg66Z-ysMRmg`%EY`c}a$RsKYvm-drG22S z+}_sGUK?v|uhnRo)k)Vugo74FjCA=O;^I+t&9`Fk4vuH4>D<{M-vTl{Wx^NVt|zl;8U zQSPoS{aOX}JzVxvGWl%cHJ+AbPs_ggMM=JHax zy`MT?;qrJsP_gd2t6YA^<+*%(23mZ9 zSuJ&ztD>e>e-V=EV#zHr*)Nr9!{X={!HS~Z#izM^N9Cib{9!d)`gRcdRJpeJuVoc} zA!hrBQg?9r4<$_tOuf{Ec|$$b+vx7!)Kzc&{iWJ1&=dUrHqbMgP;dR#(x%!TSXEp4 zc^akOTPFYCQhw>z-5WHEMG>&{YyD$bI$ZkoHK~hST#9?8* z?2+P3Dqnw;{Nf)XpLz_Hvfe&H9W;zOITQoD28pkwg2mT@v+A}AK!4S8duQr!@uh%n zg->*NM3?2!#MAmy{i$_-qr=x5Z3BwYZ|QO0n!vZp1N|Bwgvcon^p0GYztHG?6b3FY z<_xSze9#wW8YRC^HJ94T5*o72?dhp<@5+2_sT5+=h+%O{C4{#m-Ky1pg79Q&1O2K} zTl|toP+?ms(|=v1tW2s*>tNPbY8@<<+S&%Q+TxRK0_AZ84|3TIw!SOMUIcNT%Y0zx z0ms##ccd&t@8T2fYOG}ApqQ}uH4Q2au3j_P(v(wv8$8O3w`A4cZRK*2FIBf>HEO8s zmMj?1mu-Q}-u)W}TT8XwwY%irYWFhuZZ3BPao-0Fms|t>kI7Gb=0GTmLW^ zDx|b3+G~ry7e7e`+7Noa9)-|zIP`ZY=2;)A#5A6llZF|nNOwmJJJ6?+Lf>9zgqp;_N-i1rZa0%b>$%se5E^U6DI0ZD&iI` zE9y_3YEJ4;|5TZtV;rG6)Cq0ii0ZdVU#sPf5>{1=e5%}+^_OL0sPE&tyUQ6 zP_IXXRuu!F(`Ync3yr={nzTB3?GSA$X~ORyxu;j zC8b)uUak{#v81@TC&x>4jrvtV1^#v8J8^FC;rkn~ZlD*HxhAIbNF!g3d=x@d?_iti zreZL11&~=S%xSbTsHs1~d{MqClE}z^Tt$9x5EWX~`Q*LYIW0<}kMSrd@Z!Th03x_?>kHg-Q4fMC;xCi>f z?@WReKcCLiNmc>8-lK8>!e3BP1DcfQ5N@)n9>j|asw?JR*ph7!AXY!4?zd#DE%hgb zucDBTMjzv0(NasY>Ycod!Fg02L~kbd6cwa*fvF|T04iiuPbt+x9<=Lgpaxj5-4}d{ z&Jw0CQ!JAAo;tfW;po4C>?x<3Fwp&NY9JXSVWmVlF$Hc@*3mRh>h!vV^+*kLPfMyz z4-!^Te|-b((Gp$?nv>RCyVjWNKx48EmQ)+KYa2MxkSc0k`3!^_Nb|a`FU$anrg zW%i;&8|3uDpGtX$#2i#}FPE9H(jn=~3KW$$N$powqw#xi%dwfa+`&_nONND-aM zGc>h>)fZxnXformQ%94V*26yC<1S3GNSWMdqK%mBQn6G(JwIK5)M+u67M-f2N*Hj0 zCaY#rxEWRPGLBh`%aawG^>YzLJXaGM>#j{2{d{DfR~A1$si>wbhEG<*jl7_>LzQ3X z#y88zFw3rOCE}fLis>rV?!ybu^G+@}c~1Sb$YaYpZ7XR5yd_iUCyxb29T?oAh)jWo zh>5{2DB#d2$%eFmL@wpEV&wUR(eNVcX(yte+@lJxtR+Kz+t%uX!~P_CxR^(17t|bI zQDIf&f5qDd@Te;47k_l^*StuWm#~_bwicvYO5NL9RAdXTM5)ZCJBn>T)u_<0B~3m? zj8NiHu>tOG4Ck6$X9o=am6mCE@hh!wZ|GkTBtDANTKzWyqVzY7(qL4|M*ZstWt6{R zC3g?L4)k9;D7Vv8Gb(pQx5DR3$*)XAUuGhdx;YGM>yum+9`=cmztMbvs-{bT>1s4E zU5%`IFdy^KicQ8kcA1B#CGjK{KWZUOw2>_z7FOsNkmi+wu*c_sO5 zD%~h17u&gN2cG0dwOg9@VK2&VYKy<>t}XsX79)uX4ovMKP~B2wVN$VznApZDq+=qB zzl!iKTC&$;j~b^=Oyu#_=yEiH=lWBvH%X(plv-}es%_$gm9CNzv^}0xN{S)*Z%aw1Lc`_j9-JMSxqo`wrbb6*M{oJW*zBA}`0!&pwr%}bpmRq=SGfCjNNK*EYKer{p@FV?9Q^=OWF2I^))2+ zjE_u=f4-^NomqBUDcg3bX2WB%;{C{c(Q2nAduJ)zwSFrEv~~ZO*m`V!d_q%@{2~jT zYPq+R?YTtDL(`|G&(3dka^J|*$f>c}oA)?N54*DL{!%t{i5?C-Ho5h{V`EeEN2Vtx z#%7!0oA*3$b_(>N>FJrow~v>yLvOdcgJbh|PfVXUbN|`N<72bYqgXmr%J#qA9`{c} zA3ecl9jEFH^&_S1&h`7d`|S9{Xy{5n!K#t7QzuS0G~@P5DcRnsk%@)*@e^}f_s)zr zGW#aR#l4&N>>HVxKRY`Xyo8|b+b=>291r>)7&|pSH$S^@WOn+o@lmJ|gQA4?65YO1 z_K`I+xkU3r(<7sMCnloF9DUrDWgjhN2iEN)jXJmWfteF2bKv~^*c9eJ7sT8>GBGlB zVvMfDUb%|9-*#8~rbnY6aph1cJNUNyIXXW*D=ptU4^ca^>}V;w|7~|RJUcQqH*x}x zx^MdIRP?zs%kC{@``&h+q2ajzuS`dh;wMYl(RW7CgX8n3o2DD;A#HzmI= zs&+}eTj?d_uGe+_m)qUJk+~zYF?|su#^Rrqs=e8z@;K$BPT-ja9 zc3yV7qhnK}AsY>N@n~nA0cpsR)@=Ej`+q8Be{ z`(2tpSX+}Gg@3p*UG0KPSEj4mVAPfA>UMZ_(Utzqd6jf&`yD9LmFQ?Ue7X`H-3gbj zKu0^a!J~Ee+V`EEm>1<7>1v)(I@)25D z*zQuMCzIkitO9PrbGV>0tXAq|C1vuqbaR8dsVH!n(e8PyW7g4bmi@<4_V}4hb%x6u z_fAYqp9@aNwF}WXG{R;QZ;a!8nE3d-u@bSYty!I6kG*u@Q0L`cl?)N=Gp|lsh>#)^T=xYJSIU3Y#^D z4dB^)-8(XOy5so5{Mg)1DV`1xtEt3?H$|(ww-DpdXn}uUDZ5^6_MM%b)%i$tx^H@X z>bOSj7#STEqvnD+H>|3(fBfXh@e@*^g-iCO4bP$R$?^H3())D=x~i|?@kuSmT1bmp z?HKh`DAFNnkBSbB%&o_RYfD+XPHVK9wod5;)I8rD=d;xf($|@>+4(pd zjbd>nuif#O4^(|nD^7B#x}rgptRn=gWLC=ew?Noi@dNf5WlYkQNW-u22KA-SLki34}8sO12HA|MD*PeDEO ze?dq{oO=O&zZrYii606`MNFi6Pt#siFN7dw6m*)tfgUP~K6%YDn=TMw`Mor^P*jyK!%=Ni+_oa6i6g;F)_ul+9t zv_qPawjupOKw62qu5CDP2{<3_7%lKrV9l;h+pvBu@b&B#?mIL-*#=g;3HWp>&{t#| z+HVEcp6fd9b==Wx#QT+i_l&E(4z{sYgi4>GAK3==bAhW5C82FF#V6JdpP#lN6>kDt zPP`dVOglAbA@{h}@m9R9+%!(Ywrz|Rp~6h&v}4PlLK7&7#b-L&H7$zu+fa$bGESOo zhmo18aa6J&iG3$nZux;1i^((}b`t7Z(7j4vhB_gfuVTS?+nL$uxPc!-X(<&P4&Y~i z#uc`qgq2dyLxRq|o^d@46Ojbero?AzRUk2%X}7w#2py9ke3>O)PrrL!p!`@8CQi`T z0Y%lP-P$G3MBGq#BZoqg*oQIZb383n3(?A`lVW{HgktSIClq{y`YenKFrPys6%oNf zXOvKJ@L>7@dQoI@v7f}&P+b!fno-z(Qb3Cb92C>ih^U}}f5#Q=I2GZwwN=G59JYrN z)iGp1=@9k}m|-#wiGxKy&%}m!=t#^gD$yQ@#Ivz@c1OH~9M^>wOJABi4*M4g$J$93 z(rU-^cg5~+pQed@wZR2Q=WLMr4?PTru!r0{lOkeqSLjFmBJX(B!*a`bkfGs}O?1V2_ zI)*ak(ZuWFFK8*{dZtYIeJ_Ub4Jz{YDK3iI$1z$sKJ@hE1cLqatEICoD}bXuKexKY0> z%CVVIf7KH!#jIhml)u{zFvUHR^@}K*0WFeDqd*o>_u7px5cL($cj2`P;KJhe@o(vO zYT(K>dfq<5o*Y(Ga>KaPm`?6Kj{PO<_mFn4kcLz0JiiKCeQjy&*UD!%X7Aj(^6B&^ zzck0D-yn_JcG&i7QQCpZTjTV%+WUMbA>|7e#ltvqYm3KT(x`=v_iEW25;d?G^0$5s z18-E6@=kQUhFV)$ptCl^arjJzgKfS2V}0!Q-J2hDFHP^S{M>J6gU8iELkfrMg?vhF z;&p^2PKAMExgERcIDf(m0-gWQ7eV7VOA3@89R7bCfa4mKKLroxQ4G8dC_s;;WH@qZQH%Q)tCIQaV?<_cmB+|2Lm=8vN1 z*?7FO6Zl!ej+wcNE72|^dNvp1T}5myE{)FZ1zl<#sf-NGDCJx&)U5KUGpK{XyC6CM zObp+}h?`pirJFj>B-(90vk3JD9w6%U1(aPxZH(5p!72iI=?aMia{Bi;+j5)^G0=>YwcGtosS%C&!8_ z>-1Z2Qk@eBj>i>px#2xK(7Fu#j0hiSu5`f{2;iV@Bw bpd}pa&-=6;RMaR)C9mBldJo8)Dh~VwH5{lC diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity index 39fa80006..75bbc69df 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity @@ -104,7 +104,7 @@ NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -117,17 +117,224 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} +--- !u!1001 &3042951 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Mint721CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Mint721CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Mint721CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 3042953} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &3042952 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 3042951} + m_PrefabAsset: {fileID: 0} +--- !u!114 &3042953 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3042952} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &3042954 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 3042951} + m_PrefabAsset: {fileID: 0} --- !u!1001 &8717329 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -291,6 +498,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 8717331} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &8717330 stripped GameObject: @@ -317,6 +530,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &8717332 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 8717329} + m_PrefabAsset: {fileID: 0} --- !u!1 &21975176 GameObject: m_ObjectHideFlags: 0 @@ -341,13 +559,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 21975176} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &21975179 MonoBehaviour: @@ -410,19 +628,20 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 24448129} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &32227533 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 199502202} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -588,6 +807,12 @@ PrefabInstance: value: 18.25 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 32227535} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &32227534 stripped GameObject: @@ -614,6 +839,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &32227536 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 32227533} + m_PrefabAsset: {fileID: 0} --- !u!1 &37375164 GameObject: m_ObjectHideFlags: 0 @@ -645,7 +875,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 270218415} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -695,6 +924,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -858,12 +1088,23 @@ PrefabInstance: value: OwnerOfBatch objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 38231116} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &38231114 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 38231113} m_PrefabAsset: {fileID: 0} +--- !u!224 &38231115 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 38231113} + m_PrefabAsset: {fileID: 0} --- !u!114 &38231116 MonoBehaviour: m_ObjectHideFlags: 0 @@ -907,6 +1148,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 67264513} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 2261.058, y: 457.0261, z: 2.4452736} m_LocalScale: {x: 1, y: 1, z: 1} @@ -919,14 +1161,15 @@ Transform: - {fileID: 626054679} - {fileID: 496534497} - {fileID: 2077011803} + - {fileID: 1993709007} m_Father: {fileID: 0} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &83828806 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1090,6 +1333,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 83828808} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &83828807 stripped GameObject: @@ -1116,6 +1365,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &83828809 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 83828806} + m_PrefabAsset: {fileID: 0} --- !u!1 &98914093 stripped GameObject: m_CorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -1145,13 +1399,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 108046414} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &108046416 MonoBehaviour: @@ -1208,13 +1462,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 128166330} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -2296.5986, y: -535.81323, z: -6.6975737} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &128166332 MonoBehaviour: @@ -1245,6 +1499,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1404,6 +1659,12 @@ PrefabInstance: value: ImportNftTexture objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 177765172} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &177765170 stripped GameObject: @@ -1440,6 +1701,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1599,12 +1861,23 @@ PrefabInstance: value: Symbol objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 198462060} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &198462058 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 198462057} m_PrefabAsset: {fileID: 0} +--- !u!224 &198462059 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 198462057} + m_PrefabAsset: {fileID: 0} --- !u!114 &198462060 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1630,6 +1903,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -2028,6 +2302,18 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1133733959} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 32227536} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 199502206} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &199502201 stripped RectTransform: @@ -2108,7 +2394,6 @@ RectTransform: - {fileID: 1547239394} - {fileID: 1309352039} m_Father: {fileID: 1170271243} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2142,6 +2427,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2301,12 +2587,23 @@ PrefabInstance: value: SignMessage objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 232490229} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &232490227 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 232490226} m_PrefabAsset: {fileID: 0} +--- !u!224 &232490228 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 232490226} + m_PrefabAsset: {fileID: 0} --- !u!114 &232490229 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2332,6 +2629,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2491,12 +2789,23 @@ PrefabInstance: value: GetBlockNumber objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 242508244} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &242508242 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 242508241} m_PrefabAsset: {fileID: 0} +--- !u!224 &242508243 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 242508241} + m_PrefabAsset: {fileID: 0} --- !u!114 &242508244 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2522,6 +2831,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2685,6 +2995,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 246667302} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &246667301 stripped GameObject: @@ -2711,6 +3027,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &246667303 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 246667300} + m_PrefabAsset: {fileID: 0} --- !u!1 &270218414 GameObject: m_ObjectHideFlags: 0 @@ -2741,47 +3062,251 @@ RectTransform: m_Children: - {fileID: 37375165} m_Father: {fileID: 352732285} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &352732284 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 352732285} - - component: {fileID: 352732288} - - component: {fileID: 352732287} - - component: {fileID: 352732286} - m_Layer: 5 - m_Name: Scrollbar Horizontal - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &352732285 -RectTransform: +--- !u!1001 &345726215 +PrefabInstance: m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 352732284} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: CreateMarketplace + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - CreateMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: CreateMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 345726217} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &345726216 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 345726215} + m_PrefabAsset: {fileID: 0} +--- !u!114 &345726217 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 345726216} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &345726218 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 345726215} + m_PrefabAsset: {fileID: 0} +--- !u!1 &352732284 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 352732285} + - component: {fileID: 352732288} + - component: {fileID: 352732287} + - component: {fileID: 352732286} + m_Layer: 5 + m_Name: Scrollbar Horizontal + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &352732285 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 352732284} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 270218415} m_Father: {fileID: 1170271243} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} @@ -2832,7 +3357,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.1924044 + m_Size: 0.17539221 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -2880,6 +3405,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3039,12 +3565,23 @@ PrefabInstance: value: UseRegisteredContract objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 413551945} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &413551943 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 413551942} m_PrefabAsset: {fileID: 0} +--- !u!224 &413551944 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 413551942} + m_PrefabAsset: {fileID: 0} --- !u!114 &413551945 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3125,13 +3662,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 424437031} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &450191115 GameObject: @@ -3199,7 +3736,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1739933076476804461} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.35, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -3211,6 +3747,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3370,12 +3907,23 @@ PrefabInstance: value: SignVerify objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 468027691} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &468027689 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 468027688} m_PrefabAsset: {fileID: 0} +--- !u!224 &468027690 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 468027688} + m_PrefabAsset: {fileID: 0} --- !u!114 &468027691 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3401,6 +3949,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 921261270} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3532,6 +4081,9 @@ PrefabInstance: value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &491434543 stripped RectTransform: @@ -3573,13 +4125,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 496534496} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &496534498 MonoBehaviour: @@ -3593,10 +4145,31 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d447d1e7a64b28a4295aca07791c5557, type: 3} m_Name: m_EditorClassIdentifier: - collectionId721: d588268b-8a5b-486a-8ea1-4122b510d71e - collectionId1155: ebeaaee5-f7c2-4561-abb9-60ba749db7cd - marketplaceId: 4986983b-2bcc-4bb3-b0db-a3448fbdee2b - tokenId: 0 + bearerToken: Please set your bearer token from the ChainSafe dashboard + collectionId721: Set 721 collection ID + collectionId1155: Set 1155 collection ID + marketplaceId: Set marketplace ID + tokenId: Set token ID i.e 1 + collectionName721: Set 721 collection name + collectionDescription721: Set 721 collection description + collectionMintingPublic721: 0 + collectionName1155: Set 1155 collection name + collectionDescription1155: Set 1155 collection description + collectionMintingPublic1155: 0 + collectionToDelete: Set collection to delete + marketplaceToDelete: Set marketplace to delete + collectionContract721: Set 721 collection to mint to + uri721: Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + collectionContract1155: Set 1155 collection to mint to + uri1155: Set 721 collection to mint to https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + amount1155: Set amount of Nfts to mint i.e 1 + marketplaceName: Set marketplace name + marketplaceDescription: Set marketplace description + marketplaceWhitelisting: 0 + tokenIdToList: Set token ID to list + weiPriceToList: Set price in wei to list for i.e 100000000000000 + marketplaceContractToListTo: Set marketplace contract to list to + collectionContractToList: Set collection contract to list from --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -3637,9 +4210,17 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -3673,19 +4254,20 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 519420028} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &526139424 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -3845,12 +4427,23 @@ PrefabInstance: value: GetGasLimit objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 526139427} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &526139425 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 526139424} m_PrefabAsset: {fileID: 0} +--- !u!224 &526139426 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 526139424} + m_PrefabAsset: {fileID: 0} --- !u!114 &526139427 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3876,6 +4469,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4039,6 +4633,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 553675707} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &553675706 stripped GameObject: @@ -4065,11 +4665,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &553675708 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 553675705} + m_PrefabAsset: {fileID: 0} --- !u!1001 &561629178 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4233,6 +4839,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 561629180} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &561629179 stripped GameObject: @@ -4259,11 +4871,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &561629181 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 561629178} + m_PrefabAsset: {fileID: 0} --- !u!1001 &571694324 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1019211774} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4423,12 +5041,23 @@ PrefabInstance: value: CallWithSyncFeeErc2771 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 571694327} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &571694325 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 571694324} m_PrefabAsset: {fileID: 0} +--- !u!224 &571694326 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 571694324} + m_PrefabAsset: {fileID: 0} --- !u!114 &571694327 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4473,13 +5102,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 626054678} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &626054680 MonoBehaviour: @@ -4498,12 +5127,13 @@ GameObject: m_CorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} m_PrefabInstance: {fileID: 1432457963} m_PrefabAsset: {fileID: 0} ---- !u!1001 &740305723 +--- !u!1001 &679729164 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -4515,7 +5145,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 4 + value: 15 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4616,7 +5246,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4631,7 +5261,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: NativeBalanceOf + value: ApproveListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -4639,7 +5269,213 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - ApproveListNftsToMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: ApproveListNftsToMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 14.75 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 679729166} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &679729165 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 679729164} + m_PrefabAsset: {fileID: 0} +--- !u!114 &679729166 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 679729165} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &679729167 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 679729164} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &740305723 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2013807919} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 21975179} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: NativeBalanceOf + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -4662,12 +5498,23 @@ PrefabInstance: value: Native Balance Of objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 740305726} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &740305724 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 740305723} m_PrefabAsset: {fileID: 0} +--- !u!224 &740305725 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 740305723} + m_PrefabAsset: {fileID: 0} --- !u!114 &740305726 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4693,6 +5540,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -4856,6 +5704,15 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 741546197} + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 741546198} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &741546196 stripped GameObject: @@ -4895,11 +5752,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &741546199 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 741546195} + m_PrefabAsset: {fileID: 0} --- !u!1001 &743188456 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -5218,6 +6081,69 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 246667303} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1379414673} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 772013272} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 553675708} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 871233357} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1633924250} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1060509510} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1278112706} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1131644344} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 3042954} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2110753558} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1732360736} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 345726218} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 775715310} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 679729167} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1670752448} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1798261412} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188461} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188462} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188463} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &743188457 stripped RectTransform: @@ -5327,6 +6253,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -5490,6 +6417,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 772013271} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &772013270 stripped GameObject: @@ -5516,12 +6449,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &846989431 +--- !u!224 &772013272 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 772013269} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &775715307 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -5533,7 +6472,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 5 + value: 14 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -5634,7 +6573,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5649,7 +6588,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: TransferErc721 + value: DeleteMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -5657,7 +6596,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -5673,30 +6612,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Transfer + value: Button - DeleteMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Transfer + value: DeleteMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 775715309} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &846989432 stripped +--- !u!1 &775715308 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 846989431} + m_PrefabInstance: {fileID: 775715307} m_PrefabAsset: {fileID: 0} ---- !u!114 &846989433 +--- !u!114 &775715309 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 846989432} + m_GameObject: {fileID: 775715308} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -5710,12 +6655,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &853126499 +--- !u!224 &775715310 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 775715307} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &846989431 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + serializedVersion: 3 + m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -5727,7 +6678,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -5828,7 +6779,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 24448130} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5843,7 +6794,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: Name + value: TransferErc721 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -5851,7 +6802,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: Erc721Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -5867,26 +6818,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Name + value: Button - Transfer objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Name + value: Transfer + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 846989433} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &853126500 stripped +--- !u!1 &846989432 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 853126499} + m_PrefabInstance: {fileID: 846989431} m_PrefabAsset: {fileID: 0} ---- !u!114 &853126502 +--- !u!114 &846989433 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 853126500} + m_GameObject: {fileID: 846989432} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -5900,11 +6861,219 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &871233354 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: +--- !u!224 &846989434 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 846989431} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &853126499 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 2013807919} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 21975179} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Name + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc20Calls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Name + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Name + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 853126502} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &853126500 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 853126499} + m_PrefabAsset: {fileID: 0} +--- !u!224 &853126501 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 853126499} + m_PrefabAsset: {fileID: 0} +--- !u!114 &853126502 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 853126500} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &871233354 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -6068,6 +7237,12 @@ PrefabInstance: value: 18.3 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 871233356} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &871233355 stripped GameObject: @@ -6094,11 +7269,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &871233357 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 871233354} + m_PrefabAsset: {fileID: 0} --- !u!1001 &876509799 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -6416,6 +7597,27 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1424922161} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 38231115} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1499018966} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1312741006} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 846989434} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 876509805} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &876509800 stripped RectTransform: @@ -6486,7 +7688,6 @@ RectTransform: - {fileID: 491434543} - {fileID: 1930047998} m_Father: {fileID: 2028066335210561937} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -6539,6 +7740,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -6698,12 +7900,23 @@ PrefabInstance: value: Total Supply objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 937973263} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &937973261 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 937973260} m_PrefabAsset: {fileID: 0} +--- !u!224 &937973262 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 937973260} + m_PrefabAsset: {fileID: 0} --- !u!114 &937973263 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6729,6 +7942,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -6888,6 +8102,12 @@ PrefabInstance: value: Uri objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 963882744} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &963882742 stripped GameObject: @@ -6924,6 +8144,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -7239,6 +8460,27 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1229855182} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 571694326} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1997642614} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1019211778} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1019211780} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1019211781} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &1019211773 stripped RectTransform: @@ -7343,6 +8585,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -7502,12 +8745,23 @@ PrefabInstance: value: Sha3 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1031869234} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1031869232 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1031869231} m_PrefabAsset: {fileID: 0} +--- !u!224 &1031869233 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1031869231} + m_PrefabAsset: {fileID: 0} --- !u!114 &1031869234 MonoBehaviour: m_ObjectHideFlags: 0 @@ -7560,7 +8814,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1547239394} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -7630,6 +8883,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -7793,6 +9047,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1060509509} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1060509508 stripped GameObject: @@ -7819,11 +9079,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1060509510 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1060509507} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1101863644 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -7983,12 +9249,23 @@ PrefabInstance: value: GetNonce objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1101863647} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1101863645 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1101863644} m_PrefabAsset: {fileID: 0} +--- !u!224 &1101863646 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1101863644} + m_PrefabAsset: {fileID: 0} --- !u!114 &1101863647 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8014,6 +9291,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8177,6 +9455,15 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1106330807} + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1106330808} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1106330806 stripped GameObject: @@ -8216,12 +9503,18 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: serviceType: 2 ---- !u!1001 &1133733956 +--- !u!224 &1106330809 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1106330805} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1131644341 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 199502202} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -8233,7 +9526,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 1 + value: 9 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -8334,7 +9627,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -8349,7 +9642,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: IPFSUploadMetadata + value: Create1155Collection objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -8357,7 +9650,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: IPFSCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -8373,30 +9666,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Upload (1) + value: Button - CreateCollection1155 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Upload Metadata + value: CreateCollection1155 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1131644343} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1133733957 stripped +--- !u!1 &1131644342 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1133733956} + m_PrefabInstance: {fileID: 1131644341} m_PrefabAsset: {fileID: 0} ---- !u!114 &1133733958 +--- !u!114 &1131644343 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1133733957} + m_GameObject: {fileID: 1131644342} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -8410,18 +9709,229 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1 &1170271242 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} +--- !u!224 &1131644344 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1131644341} m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1170271243} - - component: {fileID: 1170271245} - - component: {fileID: 1170271244} - m_Layer: 5 +--- !u!1001 &1133733956 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 199502202} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 2077011804} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: IPFSUploadMetadata + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: IPFSCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Upload (1) + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Upload Metadata + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1133733958} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1133733957 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1133733956} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1133733958 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1133733957} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &1133733959 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1133733956} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1170271242 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1170271243} + - component: {fileID: 1170271245} + - component: {fileID: 1170271244} + m_Layer: 5 m_Name: Scroll View m_TagString: Untagged m_Icon: {fileID: 0} @@ -8444,7 +9954,6 @@ RectTransform: - {fileID: 352732285} - {fileID: 2036852239} m_Father: {fileID: 1255546033} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.85} @@ -8514,6 +10023,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8673,12 +10183,23 @@ PrefabInstance: value: SendArray objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1225501828} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1225501826 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1225501825} m_PrefabAsset: {fileID: 0} +--- !u!224 &1225501827 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1225501825} + m_PrefabAsset: {fileID: 0} --- !u!114 &1225501828 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8704,6 +10225,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1019211774} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8863,12 +10385,23 @@ PrefabInstance: value: SponsorCall objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1229855183} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1229855181 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1229855180} m_PrefabAsset: {fileID: 0} +--- !u!224 &1229855182 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1229855180} + m_PrefabAsset: {fileID: 0} --- !u!114 &1229855183 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8970,7 +10503,9 @@ Canvas: m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 @@ -8989,19 +10524,19 @@ RectTransform: - {fileID: 1247563127} - {fileID: 1170271243} m_Father: {fileID: 0} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} ---- !u!1001 &1291694840 +--- !u!1001 &1278112703 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -9013,7 +10548,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 15 + value: 8 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -9114,7 +10649,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9129,7 +10664,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: EcdsaSignTransaction + value: Create721Collection objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -9137,7 +10672,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -9153,30 +10688,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - SignTxECDSA + value: Button - CreateCollection721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: ECDSASignTX + value: CreateCollection721 objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1278112705} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1291694841 stripped +--- !u!1 &1278112704 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1291694840} + m_PrefabInstance: {fileID: 1278112703} m_PrefabAsset: {fileID: 0} ---- !u!114 &1291694842 +--- !u!114 &1278112705 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1291694841} + m_GameObject: {fileID: 1278112704} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -9190,27 +10731,238 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1 &1309352038 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1309352039} - - component: {fileID: 1309352041} - - component: {fileID: 1309352040} - m_Layer: 5 - m_Name: Processing Fx - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &1309352039 +--- !u!224 &1278112706 stripped RectTransform: - m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1278112703} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1291694840 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: EcdsaSignTransaction + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - SignTxECDSA + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: ECDSASignTX + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1291694842} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1291694841 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1291694840} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1291694842 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1291694841} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &1291694843 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1291694840} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1309352038 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1309352039} + - component: {fileID: 1309352041} + - component: {fileID: 1309352040} + m_Layer: 5 + m_Name: Processing Fx + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &1309352039 +RectTransform: + m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -9221,7 +10973,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 213321591} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -9271,6 +11022,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -9434,6 +11186,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1312741005} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1312741004 stripped GameObject: @@ -9460,11 +11218,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1312741006 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1312741003} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1379414670 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -9628,6 +11392,12 @@ PrefabInstance: value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1379414672} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1379414671 stripped GameObject: @@ -9654,11 +11424,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1379414673 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1379414670} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1424922159 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 876509801} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -9818,12 +11594,23 @@ PrefabInstance: value: OwnerOf objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1424922162} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1424922160 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1424922159} m_PrefabAsset: {fileID: 0} +--- !u!224 &1424922161 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1424922159} + m_PrefabAsset: {fileID: 0} --- !u!114 &1424922162 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9849,6 +11636,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -10163,40 +11951,802 @@ PrefabInstance: propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - propertyPath: m_AnchoredPosition.y - value: 0 + - target: {fileID: 8632572386326910067, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2092108893} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 242508243} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 526139426} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1800123348} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1101863646} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1440140101} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 413551944} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 8717332} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1225501827} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2123417268} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1031869233} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 232490228} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 468027690} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1937105456} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1291694843} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1606193493} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1106330809} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 741546199} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1432457969} + m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} +--- !u!224 &1432457964 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 1432457963} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1432457965 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 1432457963} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1432457967 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 1432457963} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &1432457969 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 649642438} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: 550 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1440140099 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: GetTransactionStatus + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetTransactionStatus + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: GetTransactionStatus + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1440140102} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1440140100 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1440140099} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1440140101 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1440140099} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1440140102 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1440140100} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1001 &1499018964 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 876509801} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 24448130} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Uri + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Erc721Calls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - URI + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: URI + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1499018967} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1499018965 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1499018964} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1499018966 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1499018964} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1499018967 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1499018965} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &1540322698 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + m_PrefabInstance: {fileID: 876509799} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1547239393 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1547239394} + - component: {fileID: 1547239396} + - component: {fileID: 1547239395} + m_Layer: 5 + m_Name: Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1547239394 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1547239393} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1058195612} + - {fileID: 1588444497385416147} + - {fileID: 7383186216686042638} + - {fileID: 876509800} + - {fileID: 1300152324561942831} + - {fileID: 199502201} + - {fileID: 1019211773} + - {fileID: 743188457} + - {fileID: 1432457964} + m_Father: {fileID: 213321591} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0.5} +--- !u!114 &1547239395 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1547239393} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 20 + m_Right: 20 + m_Top: 20 + m_Bottom: 20 + m_ChildAlignment: 0 + m_Spacing: 20 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 1 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!114 &1547239396 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1547239393} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 2 + m_VerticalFit: 0 +--- !u!1001 &1606193490 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1432457965} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 108046416} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: EcdsaGetAddress + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: EvmCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - GetAddressECDSA + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: ECDSAGetAddress + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} ---- !u!224 &1432457964 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 1300152325659962740, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 1432457963} - m_PrefabAsset: {fileID: 0} ---- !u!224 &1432457965 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 1432457963} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1432457967 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 1432457963} + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1606193492} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &1606193491 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1606193490} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!114 &1432457969 +--- !u!114 &1606193492 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 649642438} + m_GameObject: {fileID: 1606193491} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10205,17 +12755,23 @@ MonoBehaviour: m_IgnoreLayout: 0 m_MinWidth: -1 m_MinHeight: -1 - m_PreferredWidth: 550 - m_PreferredHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1440140099 +--- !u!224 &1606193493 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1606193490} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1633924247 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10328,7 +12884,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10343,7 +12899,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: GetTransactionStatus + value: GetCollectionToken objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -10351,7 +12907,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -10367,26 +12923,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - GetTransactionStatus + value: Button - GetCollectionToken objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: GetTransactionStatus + value: GetCollectionToken + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1633924249} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1440140100 stripped +--- !u!1 &1633924248 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1440140099} + m_PrefabInstance: {fileID: 1633924247} m_PrefabAsset: {fileID: 0} ---- !u!114 &1440140102 +--- !u!114 &1633924249 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1440140100} + m_GameObject: {fileID: 1633924248} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10400,12 +12966,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1499018964 +--- !u!224 &1633924250 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1633924247} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1670752445 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 876509801} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10417,7 +12989,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 16 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -10518,7 +13090,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 24448130} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10533,7 +13105,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: Uri + value: RevokeApprovalListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -10541,7 +13113,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc721Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -10557,26 +13129,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - URI + value: Button - RevokeApprovalListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: URI + value: RevokeApprovalListNftsToMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 11.8 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1670752447} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1499018965 stripped +--- !u!1 &1670752446 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1499018964} + m_PrefabInstance: {fileID: 1670752445} m_PrefabAsset: {fileID: 0} ---- !u!114 &1499018967 +--- !u!114 &1670752447 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1499018965} + m_GameObject: {fileID: 1670752446} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10590,110 +13172,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!114 &1540322698 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - m_PrefabInstance: {fileID: 876509799} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 1d92ec8189c0cc84a95f0cfc8bc95bd2, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &1547239393 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1547239394} - - component: {fileID: 1547239396} - - component: {fileID: 1547239395} - m_Layer: 5 - m_Name: Content - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1547239394 +--- !u!224 &1670752448 stripped RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1547239393} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1058195612} - - {fileID: 1588444497385416147} - - {fileID: 7383186216686042638} - - {fileID: 876509800} - - {fileID: 1300152324561942831} - - {fileID: 199502201} - - {fileID: 1019211773} - - {fileID: 743188457} - - {fileID: 1432457964} - m_Father: {fileID: 213321591} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0.5} ---- !u!114 &1547239395 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1547239393} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 20 - m_Right: 20 - m_Top: 20 - m_Bottom: 20 - m_ChildAlignment: 0 - m_Spacing: 20 - m_ChildForceExpandWidth: 0 - m_ChildForceExpandHeight: 0 - m_ChildControlWidth: 1 - m_ChildControlHeight: 0 - m_ChildScaleWidth: 0 - m_ChildScaleHeight: 0 - m_ReverseArrangement: 0 ---- !u!114 &1547239396 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1670752445} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1547239393} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} - m_Name: - m_EditorClassIdentifier: - m_HorizontalFit: 2 - m_VerticalFit: 0 ---- !u!1001 &1606193490 +--- !u!1001 &1732360733 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 1432457965} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10705,7 +13195,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 16 + value: 12 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -10806,7 +13296,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 108046416} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10821,7 +13311,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: EcdsaGetAddress + value: DeleteCollection objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -10829,7 +13319,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: EvmCalls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -10845,30 +13335,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - GetAddressECDSA + value: Button - DeleteCollection objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: ECDSAGetAddress + value: DeleteCollection objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1732360735} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1606193491 stripped +--- !u!1 &1732360734 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1606193490} + m_PrefabInstance: {fileID: 1732360733} m_PrefabAsset: {fileID: 0} ---- !u!114 &1606193492 +--- !u!114 &1732360735 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1606193491} + m_GameObject: {fileID: 1732360734} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -10882,12 +13378,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1633924247 +--- !u!224 &1732360736 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1732360733} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1762398783 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 743188458} + serializedVersion: 3 + m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -10899,7 +13401,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 6 + value: 7 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -11000,7 +13502,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 21975179} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11015,7 +13517,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: GetCollectionToken + value: MintErc20 objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -11023,7 +13525,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: MarketplaceCalls, Samples + value: Erc20Calls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -11039,30 +13541,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - GetCollectionToken + value: Button - Mint objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: GetCollectionToken + value: Mint objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 18.85 + value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1762398785} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1633924248 stripped +--- !u!1 &1762398784 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1633924247} + m_PrefabInstance: {fileID: 1762398783} m_PrefabAsset: {fileID: 0} ---- !u!114 &1633924249 +--- !u!114 &1762398785 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1633924248} + m_GameObject: {fileID: 1762398784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -11076,12 +13584,18 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1001 &1762398783 +--- !u!224 &1762398786 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1762398783} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1798261409 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 2013807919} + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Pivot.x @@ -11093,7 +13607,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 7 + value: 17 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -11194,7 +13708,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 21975179} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11209,7 +13723,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName - value: MintErc20 + value: ListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName @@ -11217,7 +13731,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName - value: Erc20Calls, Samples + value: MarketplaceCalls, Samples objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName @@ -11233,30 +13747,36 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Mint + value: Button - ListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text - value: Mint + value: ListNftsToMarketplace objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_fontSize - value: 17.9 + value: 18.85 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1798261411} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!1 &1762398784 stripped +--- !u!1 &1798261410 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1762398783} + m_PrefabInstance: {fileID: 1798261409} m_PrefabAsset: {fileID: 0} ---- !u!114 &1762398785 +--- !u!114 &1798261411 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1762398784} + m_GameObject: {fileID: 1798261410} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} @@ -11270,11 +13790,17 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1798261412 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1798261409} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1800123346 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11434,12 +13960,23 @@ PrefabInstance: value: GetGasPrice objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1800123349} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1800123347 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1800123346} m_PrefabAsset: {fileID: 0} +--- !u!224 &1800123348 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1800123346} + m_PrefabAsset: {fileID: 0} --- !u!114 &1800123349 MonoBehaviour: m_ObjectHideFlags: 0 @@ -11465,6 +14002,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 921261270} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11596,6 +14134,9 @@ PrefabInstance: value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &1876911316 stripped RectTransform: @@ -11618,6 +14159,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11781,6 +14323,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1892815747} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1892815746 stripped GameObject: @@ -11817,6 +14365,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 921261270} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -11948,6 +14497,9 @@ PrefabInstance: value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &1930047998 stripped RectTransform: @@ -11970,6 +14522,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12133,6 +14686,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1937105455} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1937105454 stripped GameObject: @@ -12159,11 +14718,61 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1937105456 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1937105453} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1993709006 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1993709007} + - component: {fileID: 1993709008} + m_Layer: 0 + m_Name: ImageUploader + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1993709007 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1993709006} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -2261.058, y: -457.0261, z: -2.4452736} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 67264514} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1993709008 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1993709006} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b8b0c4a2242595246b31317446fabf8b, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &1997642612 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1019211774} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12323,12 +14932,23 @@ PrefabInstance: value: SponsorCallErc2771 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1997642615} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &1997642613 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1997642612} m_PrefabAsset: {fileID: 0} +--- !u!224 &1997642614 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1997642612} + m_PrefabAsset: {fileID: 0} --- !u!114 &1997642615 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12354,6 +14974,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12513,6 +15134,12 @@ PrefabInstance: value: BalanceOfBatch objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2001828017} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2001828015 stripped GameObject: @@ -12549,6 +15176,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 2013807919} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12708,12 +15336,23 @@ PrefabInstance: value: Decimals objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2011409378} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2011409376 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2011409375} m_PrefabAsset: {fileID: 0} +--- !u!224 &2011409377 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2011409375} + m_PrefabAsset: {fileID: 0} --- !u!114 &2011409378 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12768,13 +15407,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2077011802} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 67264514} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2077011804 MonoBehaviour: @@ -12788,11 +15427,11 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 9a86b695c20675b43ba7a0f0a496749c, type: 3} m_Name: m_EditorClassIdentifier: - apiKey: Fill In Your API Key From Storage + apiSecretKey: Fill In Your API Secret Key From Storage bucketId: Fill In Your Bucket ID From Storage fileNameImage: Logo.png fileNameMetaData: MetaData.json - name: Name of the NFT + nftName: Name of the NFT description: An NFT description externalUrl: The URL that appears below your assets image display_types: @@ -12810,6 +15449,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -12973,12 +15613,23 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2092108894} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2092108892 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2092108891} m_PrefabAsset: {fileID: 0} +--- !u!224 &2092108893 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2092108891} + m_PrefabAsset: {fileID: 0} --- !u!114 &2092108894 MonoBehaviour: m_ObjectHideFlags: 0 @@ -13004,6 +15655,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 3719940707883753730} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -13167,6 +15819,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2110182465} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2110182464 stripped GameObject: @@ -13198,11 +15856,218 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2110182463} m_PrefabAsset: {fileID: 0} +--- !u!1001 &2110753555 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: Mint1155CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - Mint1155CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Mint1155CollectionNft + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2110753557} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!1 &2110753556 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2110753555} + m_PrefabAsset: {fileID: 0} +--- !u!114 &2110753557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110753556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!224 &2110753558 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2110753555} + m_PrefabAsset: {fileID: 0} --- !u!1001 &2123417266 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1432457965} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -13362,12 +16227,23 @@ PrefabInstance: value: SendTransaction objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2123417269} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1 &2123417267 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2123417266} m_PrefabAsset: {fileID: 0} +--- !u!224 &2123417268 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2123417266} + m_PrefabAsset: {fileID: 0} --- !u!114 &2123417269 MonoBehaviour: m_ObjectHideFlags: 0 @@ -13506,6 +16382,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1255546033} m_Modifications: - target: {fileID: 419827144736729328, guid: dcf96d5d1be365e43a4caa7561dc9ec4, type: 3} @@ -13641,6 +16518,9 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: dcf96d5d1be365e43a4caa7561dc9ec4, type: 3} --- !u!114 &531827907373074738 MonoBehaviour: @@ -13763,7 +16643,6 @@ RectTransform: m_Children: - {fileID: 2040157780357722570} m_Father: {fileID: 2068160273352595115} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -13842,7 +16721,6 @@ RectTransform: - {fileID: 2068160273352595115} - {fileID: 1438947641707540387} m_Father: {fileID: 1300152324561942831} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0.5, y: 1} @@ -13879,7 +16757,6 @@ RectTransform: - {fileID: 1196625355228757671} - {fileID: 7607616081954332969} m_Father: {fileID: 1547239394} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -13949,7 +16826,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1196625355228757671} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.75} @@ -13972,7 +16848,6 @@ RectTransform: - {fileID: 1779991349877852759} - {fileID: 1727257165965587295} m_Father: {fileID: 1588444497385416147} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0.5, y: 1} @@ -13995,7 +16870,6 @@ RectTransform: - {fileID: 1484811389487800923} - {fileID: 7895926121673440725} m_Father: {fileID: 1547239394} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -14015,7 +16889,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1484811389487800923} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.75} @@ -14037,7 +16910,6 @@ RectTransform: - {fileID: 450191118} - {fileID: 3719940707883753730} m_Father: {fileID: 7607616081954332969} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14058,7 +16930,6 @@ RectTransform: m_Children: - {fileID: 5227750615122619015} m_Father: {fileID: 1484811389487800923} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.75} m_AnchorMax: {x: 1, y: 0.85} @@ -14087,7 +16958,6 @@ RectTransform: m_Children: - {fileID: 921261270} m_Father: {fileID: 7895926121673440725} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14107,7 +16977,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1050360241631262684} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14128,7 +16997,6 @@ RectTransform: m_Children: - {fileID: 1050360241631262684} m_Father: {fileID: 1196625355228757671} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.75} m_AnchorMax: {x: 1, y: 0.85} @@ -14273,7 +17141,6 @@ RectTransform: m_Children: - {fileID: 3947701605736204151} m_Father: {fileID: 3719940707883753730} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -14491,7 +17358,6 @@ RectTransform: - {fileID: 1892815748} - {fileID: 177765173} m_Father: {fileID: 1739933076476804461} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14659,7 +17525,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2597086132424540513} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -14761,6 +17626,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1779991349877852759} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -14904,6 +17770,12 @@ PrefabInstance: value: 2 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 243536146865444302} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!224 &5227750615122619015 stripped RectTransform: @@ -15482,7 +18354,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1300152324561942831} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15512,6 +18383,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1547239394} m_Modifications: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -15822,6 +18694,36 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 83828809} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 2011409377} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 853126501} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 740305725} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 198462059} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 937973262} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1762398786} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 561629181} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 7383186216686042640} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &7383186216686042638 stripped RectTransform: @@ -15877,7 +18779,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1588444497385416147} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15915,7 +18816,6 @@ RectTransform: m_Children: - {fileID: 1739933076476804461} m_Father: {fileID: 1300152324561942831} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15953,7 +18853,6 @@ RectTransform: m_Children: - {fileID: 2028066335210561937} m_Father: {fileID: 1588444497385416147} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -15965,6 +18864,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 1170271243} m_Modifications: - target: {fileID: 7978786051816279264, guid: 0bece0d54c82072478aba621b52f134f, type: 3} @@ -16060,6 +18960,15 @@ PrefabInstance: value: objectReference: {fileID: 424437033} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 7978786051816279265, guid: 0bece0d54c82072478aba621b52f134f, type: 3} + insertIndex: -1 + addedObject: {fileID: 7978786053810957042} + - targetCorrespondingSourceObject: {fileID: 7978786051816279265, guid: 0bece0d54c82072478aba621b52f134f, type: 3} + insertIndex: -1 + addedObject: {fileID: 7978786053810957043} m_SourcePrefab: {fileID: 100100000, guid: 0bece0d54c82072478aba621b52f134f, type: 3} --- !u!1 &7978786053810957040 stripped GameObject: @@ -16164,7 +19073,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1196625355228757671} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.85} m_AnchorMax: {x: 1, y: 1} @@ -16202,7 +19110,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1484811389487800923} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.85} m_AnchorMax: {x: 1, y: 1} @@ -16224,3 +19131,11 @@ MonoBehaviour: m_EffectColor: {r: 1, g: 1, b: 1, a: 0.2} m_EffectDistance: {x: 1, y: 1} m_UseGraphicAlpha: 1 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 519420032} + - {fileID: 424437034} + - {fileID: 1255546033} + - {fileID: 67264514} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs index 3100d8eaa..c50c03176 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -12,7 +12,7 @@ public class IPFSCalls : MonoBehaviour [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; [SerializeField] private string fileNameImage = "Logo.png"; [SerializeField] private string fileNameMetaData = "MetaData.json"; - [SerializeField] private string name = "Name of the NFT"; + [SerializeField] private string nftName = "Name of the NFT"; [SerializeField] private string description = "An NFT description"; [SerializeField] private string externalUrl = "The URL that appears below your assets image"; [SerializeField] private List display_types = new List { "Stamina", "Boost Number" }; @@ -51,7 +51,7 @@ public async void IPFSUploadMetadata() BucketId = bucketId, Image = imageCID, FileNameMetaData = fileNameMetaData, - Name = name, + Name = nftName, Description = description, External_url = externalUrl, attributes = IPFS.CreateAttributesList(display_types, trait_types, values) diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs index 2095b526d..63bbc6411 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -11,25 +11,59 @@ public class MarketplaceCalls : MonoBehaviour #region fields [Header("Change the fields below for testing purposes")] - #region Collections + [Header("Bearer token")] + [SerializeField] private string bearerToken = "Please set your bearer token from the ChainSafe dashboard"; [Header("721 Collection Call")] - [SerializeField] private string collectionId721 = "d588268b-8a5b-486a-8ea1-4122b510d71e"; + [SerializeField] private string collectionId721 = "Set 721 collection ID"; + [Header("1155 Collection Call")] - [SerializeField] private string collectionId1155 = "ebeaaee5-f7c2-4561-abb9-60ba749db7cd"; + [SerializeField] private string collectionId1155 = "Set 1155 collection ID"; + [Header("Marketplace Calls")] - [SerializeField] private string marketplaceId = "4986983b-2bcc-4bb3-b0db-a3448fbdee2b"; + [SerializeField] private string marketplaceId = "Set marketplace ID"; + [Header("Token Calls")] - [SerializeField] private string tokenId = "0"; - - #endregion + [SerializeField] private string tokenId = "Set token ID i.e 1"; + + [Header("Create 721 Collection Call")] + [SerializeField] private string collectionName721 = "Set 721 collection name"; + [SerializeField] private string collectionDescription721 = "Set 721 collection description"; + [SerializeField] private bool collectionMintingPublic721 = false; + + [Header("Create 1155 Collection Call")] + [SerializeField] private string collectionName1155 = "Set 1155 collection name"; + [SerializeField] private string collectionDescription1155 = "Set 1155 collection description"; + [SerializeField] private bool collectionMintingPublic1155 = false; + + [Header("Delete calls (Can only be used before the item is on chain)")] + [SerializeField] private string collectionToDelete = "Set collection to delete"; + [SerializeField] private string marketplaceToDelete = "Set marketplace to delete"; + + [Header("Mint 721 to collection calls")] + [SerializeField] private string collectionContract721 = "Set 721 collection to mint to"; + [SerializeField] private string uri721 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; + + [Header("Mint 1155 to collection calls")] + [SerializeField] private string collectionContract1155 = "Set 1155 collection to mint to"; + [SerializeField] private string uri1155 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; + [SerializeField] private string amount1155 = "Set amount of Nfts to mint i.e 1"; + + [Header("Create marketplace call")] + [SerializeField] private string marketplaceName = "Set marketplace name"; + [SerializeField] private string marketplaceDescription = "Set marketplace description"; + [SerializeField] private bool marketplaceWhitelisting = false; + + [Header("List to marketplace calls")] + [SerializeField] private string tokenIdToList = "Set token ID to list"; + [SerializeField] private string weiPriceToList = "Set price in wei to list for i.e 100000000000000"; + [SerializeField] private string marketplaceContractToListTo = "Set marketplace contract to list to"; + [SerializeField] private string collectionContractToList = "Set collection contract to list from"; #endregion #region Methods - #region MarketplaceCalls - /// /// Gets all items in a project. /// @@ -64,9 +98,6 @@ public async void GetItem() var response = await Marketplace.GetItem(marketplaceId, tokenId); Marketplace.PrintObject(response.token); } - #endregion - - #region TokenCalls /// /// Gets all tokens in a project. @@ -124,8 +155,104 @@ public async void GetTokenOwners() Marketplace.PrintObject(owner); } } - - #endregion + + /// + /// Creates a 721 collection + /// + public async void Create721Collection() + { + var data = await Marketplace.Create721Collection(bearerToken, collectionName721, collectionDescription721, collectionMintingPublic721); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Creates a 1155 collection + /// + public async void Create1155Collection() + { + var data = await Marketplace.Create1155Collection(bearerToken, collectionName1155, collectionDescription1155, collectionMintingPublic1155); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Mints an NFT to a 721 collection + /// + public async void Mint721CollectionNft() + { + var data = await Marketplace.Mint721CollectionNft(collectionContract721, uri721); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Mints an NFT to a 1155 collection + /// + public async void Mint1155CollectionNft() + { + var data = await Marketplace.Mint1155CollectionNft(collectionContract1155, uri1155, amount1155); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Deletes a collection that isn't on chain yet + /// + public async void DeleteCollection() + { + var response = await Marketplace.DeleteCollection(bearerToken, collectionToDelete); + Debug.Log(response); + } + + /// + /// Creates a marketplace + /// + public async void CreateMarketplace() + { + var data = await Marketplace.CreateMarketplace(bearerToken, marketplaceName, marketplaceDescription, marketplaceWhitelisting); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Deletes a marketplace that isn't on chain yet + /// + public async void DeleteMarketplace() + { + var response = await Marketplace.DeleteMarketplace(bearerToken,marketplaceToDelete); + Debug.Log(response); + } + + /// + /// Approves marketplace to list tokens + /// + public async void ApproveListNftsToMarketplace() + { + var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",true); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Revokes approval from marketplace to list tokens + /// + public async void RevokeApprovalListNftsToMarketplace() + { + var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",false); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Lists NFTs to the marketplace + /// + public async void ListNftsToMarketplace() + { + var data = await Marketplace.ListNftsToMarketplace(marketplaceContractToListTo,collectionContractToList, tokenIdToList, weiPriceToList); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } #endregion } From f416522be98ee1be270626db5e51803b20ee3ecc Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Fri, 24 May 2024 23:49:10 +0800 Subject: [PATCH 67/97] IPFS/Collections multi-platform image upload fixes (#969) * Platform fixes Platform fixes * Update IPFS.cs * Update IPFS.cs * Cleanup Cleanup * test test * Purchase function Purchase function * Cleanup Cleanup * Web3auth fix * Update UploadPlatforms.cs * Delete Plugins.meta * Fixes Fixes * Update FilePicker.mm * Update UploadPlatforms.cs * Update UploadPlatforms.cs --- .../Plugins/FileUploader/FilePicker.mm | 36 +++ .../Plugins/FileUploader/FilePicker.mm.meta | 3 + .../Plugins/FileUploader/FileUploader.jslib | 4 +- .../Runtime/Scripts/EVM/IPFS/IPFS.cs | 26 +-- .../Runtime/Scripts/EVM/IPFS/ImageUploader.cs | 4 +- .../Scripts/EVM/IPFS/UploadPlatforms.cs | 216 ++++++++++++++++++ .../Scripts/EVM/IPFS/UploadPlatforms.cs.meta | 3 + .../Scripts/EVM/Marketplace/Marketplace.cs | 51 +++-- .../Runtime/Scripts/EVM/Remote/CSServer.cs | 49 ---- src/UnitySampleProject/Assets/Plugins.meta | 8 - .../Scenes/SampleMain.unity | 214 ++++++++++++++++- .../Marketplace/MarketplaceCalls.cs | 15 ++ 12 files changed, 520 insertions(+), 109 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs.meta delete mode 100644 src/UnitySampleProject/Assets/Plugins.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm new file mode 100644 index 000000000..88c01f30a --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm @@ -0,0 +1,36 @@ +#if __has_include() +#import +#endif + +extern "C" +{ + typedef void (*FileCallback)(const char* path); + + void ShowOpenFileDialog(const char* title, const char** allowedFileTypes, int allowedFileTypesCount, FileCallback callback) + { + dispatch_async(dispatch_get_main_queue(), ^{ + NSOpenPanel* openPanel = [NSOpenPanel openPanel]; + openPanel.title = [NSString stringWithUTF8String:title]; + openPanel.canChooseFiles = YES; + openPanel.canChooseDirectories = NO; + openPanel.allowsMultipleSelection = NO; + + NSMutableArray* fileTypes = [NSMutableArray array]; + for (int i = 0; i < allowedFileTypesCount; ++i) + { + [fileTypes addObject:[NSString stringWithUTF8String:allowedFileTypes[i]]]; + } + openPanel.allowedFileTypes = fileTypes; + + if ([openPanel runModal] == NSModalResponseOK) + { + NSString* filePath = [[openPanel URL] path]; + callback([filePath UTF8String]); + } + else + { + callback(NULL); + } + }); + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta new file mode 100644 index 000000000..a43922ade --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 2249546d74be4130bf439ea5fedb2833 +timeCreated: 1716392975 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib index 454df9fa5..d515ac960 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib @@ -10,10 +10,10 @@ var reader = new FileReader(); reader.onload = function(event) { var dataUrl = event.target.result; - nethereumUnityInstance.SendMessage('ImageUploader', 'OnImageSelected', dataUrl); + SendMessage('ImageUploader', 'OnImageSelected', dataUrl); }; reader.readAsDataURL(file); }; input.click(); - }, + } }); \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs index 7e8155ed5..8eab80e97 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs @@ -1,13 +1,11 @@ using System; using System.Collections.Generic; using System.Net; -using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage.Model; using ChainSafe.Gaming.Web3; using Newtonsoft.Json; -using Scripts.EVM.Remote; using UnityEngine; using UnityEngine.Networking; @@ -58,18 +56,8 @@ public static async Task UploadImage(IPFSUploadRequestModel request) { try { - #if UNITY_WEBGL && !UNITY_EDITOR - var imageData = await CSServer.UploadImageWebGL(); - #else - // Upload image from file & convert to byte[] - var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); - if (string.IsNullOrEmpty(imagePath)) return null; - UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); - await www.SendWebRequest(); - Texture2D texture = DownloadHandlerTexture.GetContent(www); - var imageData = texture.EncodeToPNG(); - #endif // Upload metadata with image + var imageData = await UploadPlatforms.GetImageData(); var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); return imageCid; } @@ -119,18 +107,8 @@ public static async Task UploadImageAndMetadata(IPFSUploadRequestModel r { try { - #if UNITY_WEBGL && !UNITY_EDITOR - var imageData = await CSServer.UploadImageWebGL(); - #else - // Upload image from file & convert to byte[] - var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); - if (string.IsNullOrEmpty(imagePath)) return null; - UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); - await www.SendWebRequest(); - Texture2D texture = DownloadHandlerTexture.GetContent(www); - var imageData = texture.EncodeToPNG(); - #endif // Upload metadata with image + var imageData = await UploadPlatforms.GetImageData(); var imageCid = await Upload(request.ApiKey, request.BucketId, request.FileNameImage, imageData, "application/octet-stream"); var metaDataObj = new IPFSUploadRequestModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs index b6197bd48..adec2d7b5 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs @@ -5,13 +5,15 @@ namespace ChainSafe.Gaming { public class ImageUploader : MonoBehaviour { + #if UNITY_WEBGL && !UNITY_EDITOR /// /// Emits an event with image data for uploading with webgl /// /// Image data public void OnImageSelected(string imageData) { - CSServer.OnImageSelected(imageData); + UploadPlatforms.OnImageSelected(imageData); } + #endif } } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs new file mode 100644 index 000000000..2771ee10c --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs @@ -0,0 +1,216 @@ +using System; +using System.Runtime.InteropServices; +using System.Threading.Tasks; +using AOT; +using UnityEngine; +using UnityEngine.Networking; + +public class UploadPlatforms +{ + + #region Fields + + [DllImport("__Internal")] + private static extern void UploadImage(); + public static event EventHandler ImageSelected; + + #endregion + + #region Methods + + /// + /// Gets the binary data of a png image with a compiler conditional for different platforms. + /// + /// Byte array of image data + public static async Task GetImageData() + { + #if UNITY_WEBGL && !UNITY_EDITOR + var imageData = await UploadImageWebGL(); + return imageData; + #elif UNITY_EDITOR + var imageData = await UploadImageEditor(); + return imageData; + #elif UNITY_STANDALONE_WIN + var imageData = await UploadImageWindows(); + return imageData; + #elif UNITY_STANDALONE_OSX + var imageData = await UploadImageOsx(); + return imageData; + #else + Debug.LogError("File picking is not implemented for this platform."); + return null; + #endif + } + + #if UNITY_EDITOR + private static async Task UploadImageEditor() + { + var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); + while (string.IsNullOrEmpty(imagePath)) return null; + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); + return imageData; + } + #endif + + #if UNITY_WEBGL && !UNITY_EDITOR + /// + /// Uploads an image in webgl builds + /// + /// Image data + private static async Task UploadImageWebGL() + { + var imageDataTask = new TaskCompletionSource(); + // Event handler to set the result when the image is selected + void OnImageSelectedHandler(object sender, byte[] imageData) + { + imageDataTask.SetResult(imageData); + // Unsubscribe from the event after handling it + ImageSelected -= OnImageSelectedHandler; + } + ImageSelected += OnImageSelectedHandler; + UploadImage(); + var imageData = await imageDataTask.Task; + return imageData; + } + + /// + /// Invokes event to pass image data from js function + /// + /// Image data + public static void OnImageSelected(string _imageData) + { + try + { + // Remove metadata from url + var base64String = _imageData.Substring(_imageData.IndexOf(",") + 1); + // Convert data URL to byte array + byte[] imageDataBytes = Convert.FromBase64String(base64String); + // Invoke event to complete the upload tasks + ImageSelected?.Invoke(null, imageDataBytes); + } + catch (Exception e) + { + Console.WriteLine(e); + throw; + } + } + #endif + + #if UNITY_STANDALONE_WIN + [DllImport("user32.dll", CharSet = CharSet.Auto)] + private static extern IntPtr GetActiveWindow(); + + [DllImport("Comdlg32.dll", CharSet = CharSet.Auto)] + private static extern bool GetOpenFileName([In, Out] OpenFileName ofn); + + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)] + private class OpenFileName + { + public int structSize = Marshal.SizeOf(typeof(OpenFileName)); + public IntPtr dlgOwner = IntPtr.Zero; + public IntPtr instance = IntPtr.Zero; + + public string filter = null; + public string customFilter = null; + public int maxCustFilter = 0; + public int filterIndex = 0; + + public string file = null; + public int maxFile = 0; + + public string fileTitle = null; + public int maxFileTitle = 0; + + public string initialDir = null; + + public string title = null; + + public int flags = 0; + public short fileOffset = 0; + public short fileExtension = 0; + + public string defExt = null; + + public IntPtr custData = IntPtr.Zero; + public IntPtr hook = IntPtr.Zero; + + public string templateName = null; + + public IntPtr reservedPtr = IntPtr.Zero; + public int reservedInt = 0; + public int flagsEx = 0; + } + + private const int OFN_EXPLORER = 0x00080000; + private const int OFN_FILEMUSTEXIST = 0x00001000; + private const int OFN_PATHMUSTEXIST = 0x00000800; + + private static async Task UploadImageWindows() + { + string imagePath = OpenFilePanel("Select Image", "", "Image files\0*.png;*.jpg;*.jpeg;*.gif\0\0"); + if (string.IsNullOrEmpty(imagePath)) return null; + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); + return imageData; + } + + private static string OpenFilePanel(string title, string directory, string filter) + { + OpenFileName ofn = new OpenFileName(); + ofn.structSize = Marshal.SizeOf(typeof(OpenFileName)); + ofn.filter = filter.Replace('|', '\0') + '\0'; + ofn.file = new string(new char[256]); + ofn.maxFile = ofn.file.Length; + ofn.fileTitle = new string(new char[64]); + ofn.maxFileTitle = ofn.fileTitle.Length; + ofn.initialDir = directory.Replace('/', '\\'); + ofn.title = title; + ofn.flags = OFN_EXPLORER | OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST; + ofn.dlgOwner = GetActiveWindow(); + + if (GetOpenFileName(ofn)) + { + return ofn.file; + } + + return null; + } + #endif + + #if UNITY_STANDALONE_OSX + [DllImport("__Internal")] + private static extern void ShowOpenFileDialog(string title, string[] allowedFileTypes, int allowedFileTypesCount, IntPtr callback); + + private static TaskCompletionSource tcs; + + private static async Task UploadImageOsx() + { + string imagePath = await OpenFilePanelMac("Select Image", "png,jpg,jpeg,gif"); + if (string.IsNullOrEmpty(imagePath)) return null; + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); + return imageData; + } + + private static Task OpenFilePanelMac(string title, params string[] allowedFileTypes) + { + tcs = new TaskCompletionSource(); + ShowOpenFileDialog(title, allowedFileTypes, allowedFileTypes.Length, Marshal.GetFunctionPointerForDelegate((Action)OnFileSelectedMac)); + return tcs.Task; + } + + private static void OnFileSelectedMac(string path) + { + tcs.SetResult(path); + } + #endif + + #endregion +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs.meta new file mode 100644 index 000000000..4d6f96479 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 6e2900845d274ff9a857919c2c7198c1 +timeCreated: 1716403005 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs index b29210d89..022383545 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs @@ -1,10 +1,12 @@ using System; using System.Collections.Generic; using System.Numerics; +using System.Runtime.InteropServices; using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.UnityPackage.Model; using ChainSafe.Gaming.Web3; +using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using Scripts.EVM.Remote; using Scripts.EVM.Token; @@ -134,8 +136,8 @@ public class Marketplace /// Contract send data object public static async Task Create721Collection(string _bearerToken, string _name, string _description, bool _isMintingPublic) { - var logoImageData = await GetImageData(); - var bannerImageData = await GetImageData(); + var logoImageData = await UploadPlatforms.GetImageData(); + var bannerImageData = await UploadPlatforms.GetImageData(); var formData = new List { new MultipartFormDataSection("name", _name), @@ -179,8 +181,8 @@ public static async Task Create1155Collection(string _bearerToken, str { try { - var logoImageData = await GetImageData(); - var bannerImageData = await GetImageData(); + var logoImageData = await UploadPlatforms.GetImageData(); + var bannerImageData = await UploadPlatforms.GetImageData(); var formData = new List { new MultipartFormDataSection("name", _name), @@ -297,7 +299,7 @@ public static async Task CreateMarketplace(string _bearerToken, string { try { - var bannerImageData = await GetImageData(); + var bannerImageData = await UploadPlatforms.GetImageData(); var formData = new List { new MultipartFormDataSection("name", _name), @@ -368,6 +370,26 @@ public static async Task SetApprovalMarketplace(string _nftContract, s } } + public static async Task PurchaseNft(string _marketplaceContract, string _itemId, string _amountToSend) + { + try + { + var method = "purchaseItem"; + BigInteger itemId = BigInteger.Parse(_itemId); + object[] args = + { + itemId + }; + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.Marketplace, _marketplaceContract, args, new HexBigInteger(_amountToSend)); + return data; + } + catch (Web3Exception e) + { + Console.WriteLine(e); + throw; + } + } + /// /// Lists Nfts to the marketplace /// @@ -416,25 +438,6 @@ public static void PrintObject(object obj) Debug.Log($"{property.Name}: {value}"); } } - - /// - /// Gets the binary data of a png image. - /// - /// Byte array of image data - private static async Task GetImageData() - { - #if UNITY_WEBGL && !UNITY_EDITOR - var imageData = await CSServer.UploadImageWebGL(); - #else - var imagePath = UnityEditor.EditorUtility.OpenFilePanel("Select Image", "", "png,jpg,jpeg,gif"); - while (string.IsNullOrEmpty(imagePath)) return null; - UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); - await www.SendWebRequest(); - Texture2D texture = DownloadHandlerTexture.GetContent(www); - var imageData = texture.EncodeToPNG(); - #endif - return imageData; - } #endregion diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs index 4ce925aba..80bb77c81 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs @@ -13,9 +13,6 @@ public class CSServer { #region Fields - [DllImport("__Internal")] - private static extern void UploadImage(); - public static event EventHandler ImageSelected; private static readonly string host = "https://api.gaming.chainsafe.io/v1/projects/"; #endregion @@ -83,52 +80,6 @@ public static async Task CreateData(string _bearerToken, string _path, } } - #region Utilities - - /// - /// Uploads an image in webgl builds - /// - /// Image data - public static async Task UploadImageWebGL() - { - var imageDataTask = new TaskCompletionSource(); - // Event handler to set the result when the image is selected - void OnImageSelectedHandler(object sender, byte[] imageData) - { - imageDataTask.SetResult(imageData); - // Unsubscribe from the event after handling it - ImageSelected -= OnImageSelectedHandler; - } - ImageSelected += OnImageSelectedHandler; - UploadImage(); - var imageData = await imageDataTask.Task; - return imageData; - } - - /// - /// Invokes event to pass image data from js function - /// - /// Image data - public static void OnImageSelected(string imageData) - { - try - { - // Remove metadata from url - var base64String = imageData.Substring(imageData.IndexOf(",") + 1); - // Convert data URL to byte array - byte[] imageDataBytes = Convert.FromBase64String(base64String); - // Invoke event to complete the upload tasks - ImageSelected?.Invoke(null, imageDataBytes); - } - catch (Exception e) - { - Console.WriteLine(e); - throw; - } - } - - #endregion - #endregion } diff --git a/src/UnitySampleProject/Assets/Plugins.meta b/src/UnitySampleProject/Assets/Plugins.meta deleted file mode 100644 index d6aee3f43..000000000 --- a/src/UnitySampleProject/Assets/Plugins.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 417e8c78dd05ca5428a1d30e8ffefc0a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity index 75bbc69df..f18ba2d93 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity @@ -3357,7 +3357,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.17539221 + m_Size: 0.19966036 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -4170,6 +4170,9 @@ MonoBehaviour: weiPriceToList: Set price in wei to list for i.e 100000000000000 marketplaceContractToListTo: Set marketplace contract to list to collectionContractToList: Set collection contract to list from + marketplaceContractToBuyFrom: Set marketplace contract to list to + tokenIdToBuy: Set token ID to buy + weiPriceToBuy: Set price in wei to buy with i.e 100000000000000 --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -6134,6 +6137,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1798261412} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1039924202} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 @@ -8782,6 +8788,212 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &1039924201 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: PurchaseNftFromMarketplace + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - PurchaseNftFromMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: PurchaseNftFromMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 15.4 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1039924204} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!224 &1039924202 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1039924201} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1039924203 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1039924201} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1039924204 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1039924203} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1 &1058195611 GameObject: m_ObjectHideFlags: 0 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs index 63bbc6411..4f0da47af 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -60,6 +60,11 @@ public class MarketplaceCalls : MonoBehaviour [SerializeField] private string marketplaceContractToListTo = "Set marketplace contract to list to"; [SerializeField] private string collectionContractToList = "Set collection contract to list from"; + [Header("List to marketplace calls")] + [SerializeField] private string marketplaceContractToBuyFrom = "Set marketplace contract to list to"; + [SerializeField] private string tokenIdToBuy = "Set token ID to buy"; + [SerializeField] private string weiPriceToBuy = "Set price in wei to buy with i.e 100000000000000"; + #endregion #region Methods @@ -254,5 +259,15 @@ public async void ListNftsToMarketplace() Debug.Log($"TX: {response}"); } + /// + /// Purchases an Nft from the marketplace + /// + public async void PurchaseNftFromMarketplace() + { + var data = await Marketplace.PurchaseNft(marketplaceContractToBuyFrom, tokenIdToBuy, weiPriceToBuy); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + #endregion } From ec9ca7b045dfb7dbd8d8bfc1af1b568d30c98fad Mon Sep 17 00:00:00 2001 From: sneakzttv Date: Fri, 24 May 2024 15:55:10 +0000 Subject: [PATCH 68/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 14848 -> 14848 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 241152 -> 241152 bytes .../Web3.Unity/Scenes/SampleMain.unity | 214 +++++++++++++++++- .../Marketplace/MarketplaceCalls.cs | 15 ++ 18 files changed, 228 insertions(+), 1 deletion(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index c0e2b24e2b06b523a0af16c9b48a499113451da0..e4750b78321ad76f1331d97100ad67feee604e23 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6?Rubt<&jXfdJ0>;H>iYr$v@m=ykY=wXTEA!?L(aX6t(o77^OpT0^ zQY|e~Qw@_+jm!48H}6k>%gR#7YPEavhTH&wxTnv= zp5-iYoz$G2;2O0oe6m2^0tKjG=_RNjP_?ylf%PV5w`z-NKBvMqU&zy7^-p6kVK8Jc zV=!ef0>UJQR0c~13m};a6b12&7|aN delta 238 zcmZqpz}WDCaY6@+abm^PjXfdJ0_8cgLKt@F`M0z;9dI}Cu-p70dO5d7sZ%=jeFNH-zvZdfe1ubyQ6tU7(9G1xC@Iy_ zA~n@8Db>i_z|6=jCCN0^)X>7fILXK$HPtvZIe9WGcQi}<#0m2!r*H=dJg7Q;$D`4} zsol?b21E1)(aA@+dlaC8kB&nHfvV;0MBP{)g^GHK#`kD$F5ppN^-p6kVK8JcV=!ef z0>UJQR0c~13m};a6b12&7|aws>QY2B(1TPidL`%zo}2&oY*L&q?{P`3R>ZqeiN+WumE>seyq> zTAER^fsvVkskuQ)N}8p4T2it_l4YtZxpUiPT>v^D3t%*nex`$ zclDK^et?w&T3Q{WzC@@ujxS1w1OO{;3Sc43-Ru45kcb zKx_bnCJbpnXvB~VWE%lR4S?e2Kr#gg(|~Htfn*X;)&fXcGNc04Br+I+Nuc=V$AYpf E0Aa#OKL7v# diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 0f68b0101584e41c06eab2b74aafda70dfa4deeb..62e89b25e9acfbb07fe05af4a3190eb5026cd757 100644 GIT binary patch delta 236 zcmZq3X~>z-!4jz#K4oJMkBY#erVCfvuef?nm~?vAr-CgNU;>C^+_Voy=Zr0GrVf9aAFkvucFk>)f zFap9PhExVi1`8mW3KRwLj2O%r41n@RK%4>;F$Id50_7}#qQ*eJ5s(I{HU{EkhUCqU H4P{vXov}#B delta 236 zcmZq3X~>z-!D3TA@BGFd9u_*XtWZ(4{KMH!voYmg^VS*ozMw*GCnW>Rc zQmUmzYN}yUs*$;YnUPsal4+``p@o5Ql954bs&Q&^^5ix1H8=OqJ<7#m&#~#&jC`>VtrGqUJQR0c~13m};a6b12&7|aisyEz=jYcPuX(ch!vsGbjZ|aHL{l?U z0|S$^G^1n#BQpb2bAyzWG)wceq-2XE%T%L8L!-pBq{(aMYi{nJdz6bsWT*Dj$q_38 z1d8^r;j>CrcWjGTvgF`*j*!VaRVCxNLn(a0@Wlk O7=lTl_~zYfU6}xEQ%({9 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index 3c342205072d2cda34e2b1ad9c3543fa9e989d60..48fdf68b06f8749d94c16c9d881e6c6bc1ff4d60 100644 GIT binary patch delta 235 zcmZoDX(*Y{!Q#fhV8_OuJsJYdO$V3N=O=qNUyqCC(z>*5bA%=%t45lMp_!?XQBta< zMQW;HQmT=;ftit6N|I@+siB2|agvciYN~N+a`NUzJ!U2rz0VG_CU+PF2x$ITx8UT# zv)+@Pe!l)(CTcVJg+Y%3RB*R2R1m0IYEG2E!kP)6-DZUEUAK6OA&Y++g9(EngBgP< zgAouWF{CnBGFSk~RG=t`XT)I6U;vai0^$^)h$&Fa6ewo_6g39&jes;rwJ{JUGbC?* IY%0qF04n)R6aWAK delta 235 zcmZoDX(*Y{!D8?G>CncWJsJX5+rBSQ*)h+#bD?I^Ottt;nqf>M=91tPITkHo3zfK%kv<{-3%2 zajsLhd)$zgI3_Xqg+Y%3RPbmhR1l=PRZHBI>!bvE9PX#ZwGf{8Jf>87vtR8B7_> zfY<;CO&HRE(1;-!$Tk9s8UV%3fn*90rUBKO1IZ+ytOby?WJm?7Nn|htlR)v!k4H8#6(|bg88MhM7y#vsfH(yxVhR*91D(^_~P=>{ueZ*Q={Zko?87vtR8B7_> zfY<;CO&HRE(1;-!$Tk9s8UV%3fn*90rUBKO1IZ+ytOby?WJm?7Nn|htlR)v!@-h#Z E0ot-foB#j- diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 69f7db10877c32f0dca757c1ce19461c85ba5ada..8fe3ae62e946457b2c2a375d0c300151a79ada2f 100644 GIT binary patch delta 235 zcmZoLX)u}4!O|tW?$E}bGdu!e@%O^NdH!%%cT3{l$-QMKH)rs6FlwZk7@C=4s*Qm-nIU=e IWief50CzM`H2?qr delta 235 zcmZoLX)u}4!SYgi<&}*+XLtnqr7KRiHF9}x|MKQ%?&6)+n=^Pj7&TIjEfY=6ObrZ7 z($b8Q4UEhTOwA2aQqnBV(~^=ck}Ok=5)F+K(~>4j@W-$y^3*S$T)`h8uv|D;_DOb< z=Zy8AZ){vHba3(w{(TBiLCFZHAW*fkqy3_2Ew%`4Loq3*&D#XdvHGVn7&BNhBr=#X zm;tc?5SlQg0ih8?GLUTq6g2>fn*+%dAWQ?QH3yPOKv@eQX~~cZRFlYH2quBzn=gy$ GG6MjDBS#GY diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index eab39bd4c84bccf5d44b3cc726751677ecda4235..2b8e71feeb7831aaba158bdda6081188fe0d6f09 100644 GIT binary patch delta 234 zcmZpOXo#55!E&=y?BvFtBhmsP8{-snR+%}?yKyb*n(9)f%?UC~nKjZ(49!f9jFM6< zEmBhrlTwY$4a|(pQj$zlO${v!jFXHEQd5mnlanXwDja7P?Y=kpyF#GAA^V?uGagpB zuPQKmW%+CC>B$j_n-rje(_cXafr>i}7AGxSTM{=T&ocDJW-TQ-HvcpR69z*DGX_%z zBOpv-NM*2OumF;&Kv59Sh{2q}04Q$+#3?`#Q=phBP|gAK%`-~Q?oOlo2_n-gS~GHaw7TPB*CnHm_F zq@@`p8yJ}xn3@};q@-DzrzIs@Bw3~!B^nwfrX@|*RXENp;PhhhcZEQK6aPNBrl%bB zpSg*%F#Pq?Ns}WKHz_~`U&04Qz_BvXJe4XD-}NG1VgEr6sYLn=^BB7-5A1d4B-u93+M E04i!q;Q#;t diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 4acde79e6d989fcaf3a4c2ad6947b09cd5602181..41d00d3cdf09420a6d5e94a8eac1772ccee93540 100644 GIT binary patch delta 254 zcmZoT!_;twX+j5!uH~^68+&~81q7omo!ykc?6!M)x=qBfscM^F=o_(`q?s6+nHm`- zrCM5~rWz)t8krlI8JVRdnWmZ=S{N8785yLe8mA^FGcd3+GB7bPI59HVPM&CLu({4O zERCiAcEp*;0jEK-E5uPuyNHv@p4R zXWu2c`NfCJcrQW(=kbMnIUvkjh}mU;!jkfubOu5ra8{0Z`ruh*N+fra&=M bpqvFz)ELM&0@5JW#z36Rki7Z(LQWO{{R2+( delta 254 zcmZoT!_;twX+j6f0;jUQ8+&~81m zSQ^X9myA0m-AV@Wbr@)aJtgaRF za%byrelh0&i+?JEF@q&TB7-S|84w!)p$S785E?Ng1KCDEQ3Ig3Igm^N!Ze^-b0C=n Zl(hhomJF#tHHi#{U=k?4`TIgn764H;QicEk diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 7e2691deb3b22d46c15e6535217674c40ebd92a1..2e8f3eb0ee9008d6c470fbaa0eaee236b42f019f 100644 GIT binary patch delta 245 zcmZoDX(*Y{!BW0h_u$5!3z`C2XMDFOC<{2xJj?!IZ%W2$L9687vtrfMhCA6vQ)PFlR6T${PW33Q)upC}s+jvjB=31NlZk S8l>77h?5zTH*=ePWd;CNJ5rng delta 245 zcmZoDX(*Y{!E#rLbK1t93z`DnUYV^=E=~4nE!T=nP`lZ_IY%p)MK9IZGSSq`)WE^2Pz0uowj-F(kmu$g%3P-vYg+1%is}< ze=379gC#>EgDHa<5E}rY2}2qX8ZjgT*+xK71E9D$kW2x>G@x2@AejV|wE&Wq45>gh Qi42Bd5-7fz+w3bd09-dt1poj5 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index ba4eca62efb61d53536cf162f7094b8e6ea30af4..5704241c77a1df5139c5d11511e39eed9f7f30e9 100644 GIT binary patch delta 245 zcmZqhY4DlQ!Sd#iQ_sd82?+tg$H!KwUVrY`w|pX(j_)j~&08d-nf20449!f9jFM6< zEmBhrlTwY$4a|(pQj$zlO${v!jFXHEQd5mnlam=3oERBwCp*X}O_rA_WjVFq{P^S< zG64eW!b|l`4@tSNSnuC#pIaz7`G-uG0#q0bX_4{cr~dym;a zjlqP$kim?>l)(rHlNeGNEEz0-WGYY;#4}E8Td(|XF)(%Ri2rr@uhzY(o3}_vGwY=qTPB*CnHm_F zq@@`p8yJ}xn3@};q@-DzrzIs@Bw3~!B^nwfrX?{jI59HVPIiz{nk+9<%5t2+d)nj~ zG64d6b(X}ejSzBef694!{jp2#lYhu`DL@57-JyaY)ysJoy`LG*DiMBO=*;FtviF$% zQyGjIEEy6ROc~68*Z>Gk7}9{yh#?usHUf$o0L9ILWC{?b0o9rV$t0kx1(394NCm1% PWH1DiK=IAz6%APc!gx&s diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 3e5f5b23f3e7c842d7d409058dd06c365798dcfb..0768f67464f8677ede0fa9809d096195bbd1db18 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f2nCOokjXhg?7(cKJY_+(opjt8AY03Sk2_Jb6U)RcQmUmzYN}yUs*$;YnUPsal4+``p@o5Ql954bs&Q&^@^+tPj4~W75*gR7OwU=z z7$C4L;Q#+%xic;kCce#&m?*ts`k8f%6BMALEEk}nAoY<_O=V)2SC$6ev3A^Evz}3h z#XpU~gu#%(jKP$_2ndrHQW-26EP!MxP!z;7VlZbg0LmKyaSBkx6ewm2l(PVe8Uy)8 UKpLdl7>JV@lDB`~%*e?C0H38%B>(^b delta 247 zcmZqpz}E1AZ9)f2%tpyCjXhg?7(cKJoW8lQl3@a)}uzqer6rx1O=$*tum-6NWJUYDJr39;=GFvr#|0avz}3h z#Xpt7n8A`Ek-?O~42TVY(1alk2#pw$fovn7r~y#i97v`BVH!}aIgm^O%31(PONLaS SnnVUeFbNdj{(UneCkp_1c~9N| diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index d6a551c535498ec1b3e1ee3884e9f533a9cc84bf..21861fdd212badafd436f5ca63a3983a537d1e81 100644 GIT binary patch delta 238 zcmZqJ!`QHgaY6^nlg94J8+&fJ3;cf)`1yi*i~r8=7nU9Dv{c_*;vvGJk!E6OW@==V zlxk^_nrfJoYGiI;W@MI=_3o}c>1Dns2e*^~z9Qyf% zZF=c{x2^Wx-%}oSdQFZ9nWX>~{Pq#ujca@etwANHw-hG&M6d zFfd6=GfFlvGBYqWH%LiIvoudjO14O{Of^b0G)hcM+Popag_&h-Z}R2IKY{}U)ZDUu z?_V$O*;aKr?uO--BakDajVq-62#$du=$Y91` z%3uV9NernBmJAj^G8HHa;u$fRGZ+Bnjes}>C}Ii}GX=_707Z>~d?O$YQf&;x$qdPx JcU!tL0RSW~P$~cb delta 236 zcmZpuXsDRb!4lz`(6X^dLrLJ!$>AUy zEIixyc0AbFva@WmjB$$sRIrmBDhN~^cp`1qYs0cj|1So$-r9V?cnzz6DuXeDB|{>E zDT5gh8vvmRLmChoF(d=oMnF*mptw1ZOaa0)pjvYvnFN%z0FssrsX#S}42ED5D86~O Hr7IHvlgv)Z diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index ab92f507d14af2c7dc8144a17f2897f3ac941f0f..fd55e5f2ce15a4ba388e820588edb49ebacd3948 100644 GIT binary patch delta 256 zcmZqJ!rZWhc|r$EN1Er}jXesR1zP`c?`@Py_gEYGqvC$CjOXS(n;Qi6(o77^OpT0^ zQY|e~Qw@_+jm!4885md@8JH%^ozj{7;F#cKjbrAU z?;U00VrgFgYVG7F=K}-`yjShAHn4En-xYhmWzP1p$u1YBC_n|D)I$Y9su$N4PZm}E z7ACTdOJVbm3rAS|(-=$`3>nNAOc{)TFo_|R!IHrONTvcsK|CV{a|Q#Tyb%zm07XoJ dVx~Yj3!tbmkZ%N}L8^^`IGG`NGxxQx%m7}>RcinM delta 256 zcmZqJ!rZWhc|r$^=(-K}H})uO7GOJ4b^3hVDd%Nh^f#QyQn%T>XLEy~UaGNWqN$mw zfq_X{no+WWk(q(1xj{-wnx%PKQnE#oWvWr4p;2O55(5J(BLmZ9xl=lm9~={$tZ~eI z^Sz@?Tr6>_TP{t0ay~%dxYDkJ3Oj3Dn(iwu=TKFcJlW;K6a}bY3QQ2FI_Te#`>`_9 zwRT$13fj2&$Au#-{;3Sc43-Ru45kcbKx_bnCJbpnXvB~VWE%lR4S?e2Kr#gg(|~Ht cfn*X;)&fXcGNc04Br+I+Nuc;0VpC7LOla$PsQ+g`JosqKJ9 znu(#AsgY4qs-;D0s$o*9k-34Hky%QTX{xEAg@JLBkwI#zacXk%^uRi1@#z!3GO})W zD`D<3V9_@cemMQg66OGbKAmGM72Fs6_B?nfIW=FvYP!i%<_ZOIfd0fjlqP$kim?>l)(rHlNeGNEEz0-WGYY;#4}Eiu8RZ@2WzDPp!;r<*Kgu26uAw)jCsLFy0d{;6Gb zPvlm0`Q=61&n#t5Vf9aCFlMl1NMtZ&Fau%(AT(h}141K)WFXrJC~5!{HwTg_K$r$p fYYrrnfU*`q(vl$+s3wuY5KIEax7V*`Ze#)gG{jP; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity index 75bbc69df..f18ba2d93 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity @@ -3357,7 +3357,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.17539221 + m_Size: 0.19966036 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -4170,6 +4170,9 @@ MonoBehaviour: weiPriceToList: Set price in wei to list for i.e 100000000000000 marketplaceContractToListTo: Set marketplace contract to list to collectionContractToList: Set collection contract to list from + marketplaceContractToBuyFrom: Set marketplace contract to list to + tokenIdToBuy: Set token ID to buy + weiPriceToBuy: Set price in wei to buy with i.e 100000000000000 --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -6134,6 +6137,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1798261412} + - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 1039924202} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 @@ -8782,6 +8788,212 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &1039924201 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 743188458} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 496534498} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 7978786053810957042} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_CallState + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: PurchaseNftFromMarketplace + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: Execute + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: MarketplaceCalls, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName + value: Samples.Behaviours.SampleBehaviour, Samples + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName + value: UnityEngine.Object, UnityEngine + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - PurchaseNftFromMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: PurchaseNftFromMarketplace + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 15.4 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 1039924204} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!224 &1039924202 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1039924201} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1039924203 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1039924201} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1039924204 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1039924203} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 --- !u!1 &1058195611 GameObject: m_ObjectHideFlags: 0 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs index 63bbc6411..4f0da47af 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -60,6 +60,11 @@ public class MarketplaceCalls : MonoBehaviour [SerializeField] private string marketplaceContractToListTo = "Set marketplace contract to list to"; [SerializeField] private string collectionContractToList = "Set collection contract to list from"; + [Header("List to marketplace calls")] + [SerializeField] private string marketplaceContractToBuyFrom = "Set marketplace contract to list to"; + [SerializeField] private string tokenIdToBuy = "Set token ID to buy"; + [SerializeField] private string weiPriceToBuy = "Set price in wei to buy with i.e 100000000000000"; + #endregion #region Methods @@ -254,5 +259,15 @@ public async void ListNftsToMarketplace() Debug.Log($"TX: {response}"); } + /// + /// Purchases an Nft from the marketplace + /// + public async void PurchaseNftFromMarketplace() + { + var data = await Marketplace.PurchaseNft(marketplaceContractToBuyFrom, tokenIdToBuy, weiPriceToBuy); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + #endregion } From b40fdb38a043efabaf12dd5a0779689ba47940ee Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Tue, 28 May 2024 16:35:14 +0200 Subject: [PATCH 69/97] Added a FilePickerWrapper for MacOS (#977) --- .github/workflows/check_and_commit.yml | 1 + .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Runtime/Common/Scripts/ILoginProvider.cs | 1 - .../Plugins/FileUploader/FilePicker.mm | 36 ------------------ .../Plugins/FileUploader/FilePicker.mm.meta | 3 -- .../FileUploader/FileUploader.jslib.meta | 33 +++++++++++++++- .../FileUploader/MacOSFilePicker.dylib | Bin 0 -> 70160 bytes .../FileUploader/MacOSFilePicker.dylib.meta | 33 ++++++++++++++++ .../Scripts/EVM/IPFS/UploadPlatforms.cs | 15 +++++--- .../Assets/ExternalDependencyManager.meta | 8 ++++ .../ExternalDependencyManager/Editor.meta | 8 ++++ .../Editor/1.2.179.meta | 8 ++++ src/UnitySampleProject/Assets/Plugins.meta | 8 ++++ src/UnitySampleProject/Packages/manifest.json | 1 - .../Packages/packages-lock.json | 22 ++++++----- .../ProjectSettings/boot.config | 0 17 files changed, 118 insertions(+), 59 deletions(-) delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta create mode 100755 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib.meta create mode 100644 src/UnitySampleProject/Assets/ExternalDependencyManager.meta create mode 100644 src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta create mode 100644 src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta create mode 100644 src/UnitySampleProject/Assets/Plugins.meta create mode 100644 src/UnitySampleProject/ProjectSettings/boot.config diff --git a/.github/workflows/check_and_commit.yml b/.github/workflows/check_and_commit.yml index a08bcbd7b..b097f1752 100644 --- a/.github/workflows/check_and_commit.yml +++ b/.github/workflows/check_and_commit.yml @@ -110,6 +110,7 @@ jobs: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} with: projectPath: ${{ matrix.projectPath }} + customImage: 'unityci/editor:ubuntu-2022.3.26f1-linux-il2cpp-3.1.0' testMode: ${{ matrix.testMode }} artifactsPath: ${{ matrix.testMode }}-artifacts githubToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index e4750b78321ad76f1331d97100ad67feee604e23..8471a660d53e12a437b57578778c676a73f4d46b 100644 GIT binary patch delta 238 zcmZqpz}WDCaY6@+_0gKO8+$^c1z7U8smZ^n_np=8RE{s>oZsdT(aX6tEK-t_EmKnr zjndN0O-xNK4a_Yp&C^Uxl8jT6jLa+yjg!q2O-)RUHt$b=%gU0yq<;S74Y>gVW=m)P zDed0ivgFxEmu|sBxswI*7AQakpQu0ufvV*#*RUL{-I^wNY?fB)<_mcmto{}ZDGbR# zXvvTYWEnCTF{A;ZIfDs;H>iYr$v@m=ykY=wXTEA!?L(aX6t(o77^OpT0^ zQY|e~Qw@_+jm!48H}6k>%gR#7YPEavhTH&wxTnv= zp5-iYoz$G2;2O0oe6m2^0tKjG=_RNjP_?ylf%PV5w`z-NKBvMqU&zy7^-p6kVK8Jc zV=!ef0>UJQR0c~13m};a6b12&7|aN diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 2e29f1d52bc3b9f54ef85e9a18f02c53effad8fa..704b07a121f01b2061c2e21ef5922c26b4f1440f 100644 GIT binary patch delta 235 zcmZqBY0#O_!Lr?4WW&ZD4Nie(!@GN%-!wYR4osHQc7Ahq^AS!-Mh%OU?oogWHoydds%7Z%=jeFNH-zvZdfe1ubyQ6tU7(9G1xC@Iy_ zA~n@8Db>i_z|6=jCCN0^)X>7fILXK$HPtvZIe9WGcQi}<#0m2!r*H=dJg7Q;$D`4} zsol?b21E1)(aA@+dlaC8kB&nHfvV;0MBP{)g^GHK#`kD$F5ppN^-p6kVK8JcV=!ef z0>UJQR0c~13m};a6b12&7|a) -#import -#endif - -extern "C" -{ - typedef void (*FileCallback)(const char* path); - - void ShowOpenFileDialog(const char* title, const char** allowedFileTypes, int allowedFileTypesCount, FileCallback callback) - { - dispatch_async(dispatch_get_main_queue(), ^{ - NSOpenPanel* openPanel = [NSOpenPanel openPanel]; - openPanel.title = [NSString stringWithUTF8String:title]; - openPanel.canChooseFiles = YES; - openPanel.canChooseDirectories = NO; - openPanel.allowsMultipleSelection = NO; - - NSMutableArray* fileTypes = [NSMutableArray array]; - for (int i = 0; i < allowedFileTypesCount; ++i) - { - [fileTypes addObject:[NSString stringWithUTF8String:allowedFileTypes[i]]]; - } - openPanel.allowedFileTypes = fileTypes; - - if ([openPanel runModal] == NSModalResponseOK) - { - NSString* filePath = [[openPanel URL] path]; - callback([filePath UTF8String]); - } - else - { - callback(NULL); - } - }); - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta deleted file mode 100644 index a43922ade..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FilePicker.mm.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2249546d74be4130bf439ea5fedb2833 -timeCreated: 1716392975 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta index d7474f1c0..c7e46e8ab 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/FileUploader.jslib.meta @@ -1,3 +1,32 @@ -fileFormatVersion: 2 +fileFormatVersion: 2 guid: 8a90e4d069314f3a91d90ea931fe89d5 -timeCreated: 1716216786 \ No newline at end of file +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + WebGL: WebGL + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib new file mode 100755 index 0000000000000000000000000000000000000000..2f252a151820e5145c252b138da3e3772914ee0b GIT binary patch literal 70160 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 ImageSelected; #endregion @@ -56,6 +55,10 @@ private static async Task UploadImageEditor() #endif #if UNITY_WEBGL && !UNITY_EDITOR + + [DllImport("__Internal")] + private static extern void UploadImage(); + /// /// Uploads an image in webgl builds /// @@ -183,14 +186,14 @@ private static string OpenFilePanel(string title, string directory, string filte #endif #if UNITY_STANDALONE_OSX - [DllImport("__Internal")] - private static extern void ShowOpenFileDialog(string title, string[] allowedFileTypes, int allowedFileTypesCount, IntPtr callback); + [DllImport("MacOSFilePicker", EntryPoint = "showOpenFileDialogWithTitle")] + private static extern void showOpenFileDialog(string title, string[] allowedFileTypes, int allowedFileTypesCount, IntPtr callback); private static TaskCompletionSource tcs; private static async Task UploadImageOsx() { - string imagePath = await OpenFilePanelMac("Select Image", "png,jpg,jpeg,gif"); + string imagePath = await OpenFilePanelMac("Select Image", "public.png", "public.jpg", "public.jpeg", "public.gif"); if (string.IsNullOrEmpty(imagePath)) return null; UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); await www.SendWebRequest(); @@ -202,7 +205,7 @@ private static async Task UploadImageOsx() private static Task OpenFilePanelMac(string title, params string[] allowedFileTypes) { tcs = new TaskCompletionSource(); - ShowOpenFileDialog(title, allowedFileTypes, allowedFileTypes.Length, Marshal.GetFunctionPointerForDelegate((Action)OnFileSelectedMac)); + showOpenFileDialog(title, allowedFileTypes, allowedFileTypes.Length, Marshal.GetFunctionPointerForDelegate((Action)OnFileSelectedMac)); return tcs.Task; } diff --git a/src/UnitySampleProject/Assets/ExternalDependencyManager.meta b/src/UnitySampleProject/Assets/ExternalDependencyManager.meta new file mode 100644 index 000000000..11c988c51 --- /dev/null +++ b/src/UnitySampleProject/Assets/ExternalDependencyManager.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b68b274307aa0f4489642aa55b200874 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta b/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta new file mode 100644 index 000000000..e5123a164 --- /dev/null +++ b/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d939ba36a37c8274897ea497cd5dc8fc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta b/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta new file mode 100644 index 000000000..e9466dade --- /dev/null +++ b/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 066c254a3621598429e298b41d522cc8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Plugins.meta b/src/UnitySampleProject/Assets/Plugins.meta new file mode 100644 index 000000000..d6aee3f43 --- /dev/null +++ b/src/UnitySampleProject/Assets/Plugins.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 417e8c78dd05ca5428a1d30e8ffefc0a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Packages/manifest.json b/src/UnitySampleProject/Packages/manifest.json index 950d15899..154d659ff 100644 --- a/src/UnitySampleProject/Packages/manifest.json +++ b/src/UnitySampleProject/Packages/manifest.json @@ -1,7 +1,6 @@ { "dependencies": { "com.tools.webglthreadingpatcher": "https://github.com/VolodymyrBS/WebGLThreadingPatcher.git", - "com.unity.ai.navigation": "1.1.5", "com.unity.collab-proxy": "2.3.1", "com.unity.ide.rider": "3.0.28", "com.unity.ide.vscode": "1.2.5", diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index 5e56dcb7c..23dabddda 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -9,15 +9,6 @@ }, "hash": "c2f3628a028373afc8c66e443f7ce21bcb613a47" }, - "com.unity.ai.navigation": { - "version": "1.1.5", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.modules.ai": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.collab-proxy": { "version": "2.3.1", "depth": 0, @@ -49,7 +40,7 @@ "url": "https://packages.unity.com" }, "com.unity.nuget.mono-cecil": { - "version": "1.11.4", + "version": "1.10.1", "depth": 2, "source": "registry", "dependencies": {}, @@ -314,6 +305,17 @@ "version": "1.0.0", "depth": 0, "source": "builtin", + "dependencies": { + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.uielementsnative": "1.0.0" + } + }, + "com.unity.modules.uielementsnative": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0", diff --git a/src/UnitySampleProject/ProjectSettings/boot.config b/src/UnitySampleProject/ProjectSettings/boot.config new file mode 100644 index 000000000..e69de29bb From a4e69dfc36e43b7730c8b8e3ce5ef2e9ba31a1d3 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Wed, 29 May 2024 06:42:48 +0200 Subject: [PATCH 70/97] iOS IPFS File Upload (#981) --- .../Web3.Unity Ramp Samples/RampSample.cs | 1 + .../Runtime/Plugins/iOS.meta | 8 +++ .../Runtime/Plugins/iOS/libiOSFilePicker.a | Bin 0 -> 98056 bytes .../Plugins/iOS/libiOSFilePicker.a.meta | 27 ++++++++++ .../Scripts/EVM/IPFS/UploadPlatforms.cs | 47 ++++++++++++++++-- 5 files changed, 78 insertions(+), 5 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a.meta diff --git a/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs b/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs index 000f2703e..77dae4f12 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs +++ b/Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/RampSample.cs @@ -1,3 +1,4 @@ +#define RAMP_AVAILABLE using ChainSafe.Gaming.Evm.JsonRpc; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.Wallets; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS.meta new file mode 100644 index 000000000..8100fcf62 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1cde52e39d2c643ffaf7b13cdfc066d5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a new file mode 100644 index 0000000000000000000000000000000000000000..676c7293cd7b16cea58b5fca18b7eeb4a4c7eed9 GIT binary patch literal 98056 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 literal 0 HcmV?d00001 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a.meta new file mode 100644 index 000000000..708b04dd3 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/libiOSFilePicker.a.meta @@ -0,0 +1,27 @@ +fileFormatVersion: 2 +guid: 20ecf223e268b46cf8600eff79987881 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs index 1fd9a0b86..4a0c3ec56 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs @@ -23,19 +23,23 @@ public class UploadPlatforms /// Byte array of image data public static async Task GetImageData() { + byte[] imageData = null; #if UNITY_WEBGL && !UNITY_EDITOR - var imageData = await UploadImageWebGL(); + imageData = await UploadImageWebGL(); return imageData; #elif UNITY_EDITOR - var imageData = await UploadImageEditor(); + imageData = await UploadImageEditor(); return imageData; #elif UNITY_STANDALONE_WIN - var imageData = await UploadImageWindows(); + imageData = await UploadImageWindows(); return imageData; #elif UNITY_STANDALONE_OSX - var imageData = await UploadImageOsx(); + imageData = await UploadImageOsx(); return imageData; - #else + #elif UNITY_IOS + imageData = await UploadImageIOS(); + return imageData; +#else Debug.LogError("File picking is not implemented for this platform."); return null; #endif @@ -214,6 +218,39 @@ private static void OnFileSelectedMac(string path) tcs.SetResult(path); } #endif + +#if UNITY_IOS + [DllImport("__Internal")] + private static extern void showActionSheet(string title, string[] allowedFileTypes, int allowedFileTypesCount, IntPtr callback); + + private static TaskCompletionSource tcs; + + public static async Task UploadImageIOS() + { + string imagePath = await OpenFilePaneliOS("Select Source", "public.png", "public.jpg", "public.jpeg", "public.gif"); + Debug.Log(imagePath); + if (string.IsNullOrEmpty(imagePath)) return null; + UnityWebRequest www = UnityWebRequestTexture.GetTexture("file://" + imagePath); + await www.SendWebRequest(); + Texture2D texture = DownloadHandlerTexture.GetContent(www); + var imageData = texture.EncodeToPNG(); + return imageData; + } + + private static Task OpenFilePaneliOS(string title, params string[] allowedFileTypes) + { + tcs = new TaskCompletionSource(); + showActionSheet(title, allowedFileTypes, allowedFileTypes.Length, Marshal.GetFunctionPointerForDelegate((Action)OnFileSelectediOS)); + return tcs.Task; + } + + [AOT.MonoPInvokeCallback(typeof(Action))] + private static void OnFileSelectediOS(IntPtr pathPtr) + { + string path = Marshal.PtrToStringAnsi(pathPtr); + tcs.SetResult(path); + } +#endif #endregion } \ No newline at end of file From 084e8bb4ff4f072e0709af70df5dfd0c5f0375a9 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Date: Wed, 29 May 2024 05:45:01 +0100 Subject: [PATCH 71/97] Refine ERC20, ERC721, ERC1155 utility classes (#952) * Removed static Erc20, Erc721, Erc1155 utility classes from package scripts and added corresponding built-in contracts (ErcXXContract) and services (ErcXXService) to the core solution. Introduced IpfsHelper. * Added contract caching for Erc20/721/1155 services. Added shortcut methods to call smart-contract methods directly from a service without building a contract manually Added Erc20/721/1155 services as default ones for Web3 * Updated Erc20/Erc721/Erc1155 usage samples * Removed Custom Token Balance sample button * Erc1155 ImportTexture fix * Erc1155 ImportTexture fix * Fixing merging error * Fixing compiler errors * Proper contract addresses * Fixed issue with WebGL not recognizing embedded resources. Added the ability to copy webgl templates directly trough our Chainsafe SDK menu. * Removed Custom Token Balance --------- Co-authored-by: oleksandr <59798783+creeppak@users.noreply.github.com> Co-authored-by: Juan Manuel Spoleti <104365141+juans-chainsafe@users.noreply.github.com> Co-authored-by: = <=> Co-authored-by: Nikola Garabandic --- .../Editor/WebGLResourceEmbedding.cs | 15 + .../WebGLResourceEmbedding.cs.meta} | 2 +- .../Editor/WebGLTemplateSync.cs | 3 +- .../Runtime/Common/Scripts/ILoginProvider.cs | 2 +- .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 14848 -> 14848 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 44032 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 241152 -> 284160 bytes .../Scripts/EVM/Marketplace/Marketplace.cs | 10 +- .../{Contracts.cs => ChainSafeContracts.cs} | 2 +- ...cts.cs.meta => ChainSafeContracts.cs.meta} | 0 .../Runtime/Scripts/EVM/Token/Erc1155.cs | 191 ------- .../Runtime/Scripts/EVM/Token/Erc1155.cs.meta | 11 - .../Scripts/EVM/Token/Erc1155Metadata.cs | 7 + .../Scripts/EVM/Token/Erc1155Metadata.cs.meta | 3 + .../EVM/Token/Erc1155UnityExtensions.cs | 52 ++ .../EVM/Token/Erc1155UnityExtensions.cs.meta | 3 + .../Runtime/Scripts/EVM/Token/Erc20.cs | 145 ----- .../Runtime/Scripts/EVM/Token/Erc721.cs | 170 ------ .../Runtime/Scripts/EVM/Token/Erc721.cs.meta | 11 - .../Runtime/Scripts/EVM/Token/Methods.cs.meta | 11 - .../Scripts/Model/OwnerOfBatchModel.cs.meta | 3 - .../Tests/Runtime/Erc1155Tests.cs | 8 +- .../Tests/Runtime/Erc20Tests.cs | 13 +- .../Tests/Runtime/Erc721Tests.cs | 8 +- .../Tests/Runtime/EvmCustomResponseTests.cs | 16 +- .../Tests/Runtime/EvmTests.cs | 11 +- .../Tests/Runtime/SampleTestsBase.cs | 2 +- .../chainsafe.web3-unity.RuntimeTests.asmdef | 1 + src/ChainSafe.Gaming/ChainSafe.Gaming.csproj | 8 + src/ChainSafe.Gaming/Ipfs/IpfsHelper.cs | 28 + .../RPC/Contracts/BuiltIn/BuiltInContract.cs | 44 ++ .../RPC/Contracts/BuiltIn/Erc1155Contract.cs | 135 +++++ .../RPC/Contracts/BuiltIn/Erc1155Service.cs | 127 +++++ .../RPC/Contracts/BuiltIn/Erc20Contract.cs | 148 +++++ .../RPC/Contracts/BuiltIn/Erc20Service.cs | 144 +++++ .../RPC/Contracts/BuiltIn/Erc721Contract.cs | 195 +++++++ .../RPC/Contracts/BuiltIn/Erc721Service.cs | 166 ++++++ .../RPC/Contracts/BuiltIn/EthMethods.cs | 4 +- .../Contracts/BuiltIn}/OwnerOfBatchModel.cs | 5 +- .../RPC/Contracts/Contract.cs | 6 +- .../RPC/Contracts/IContract.cs | 78 +++ .../Resources/erc-1155-abi.json | 489 +++++++++++++++++ .../Resources/erc-20-abi.json | 345 ++++++++++++ .../Resources/erc-721-abi.json | 508 ++++++++++++++++++ .../Web3/Core/Build/Web3Builder.cs | 6 +- src/ChainSafe.Gaming/Web3/Core/Web3.cs | 19 + .../Scene/Rewards/Erc1155NftRewardFactory.cs | 3 +- .../Scripts/StringExtensions.cs | 8 - .../Scenes/SampleMain.unity | 211 +------- .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 27 +- .../Scenes/SampleMain/Erc1155/Erc1155Calls.cs | 43 +- .../Scenes/SampleMain/Erc20/Erc20Calls.cs | 47 +- .../Scenes/SampleMain/Erc721/Erc721Calls.cs | 31 +- .../Scenes/SampleMain/SampleOutputUtil.cs | 5 + .../ProjectSettings/ProjectSettings.asset | 7 +- 66 files changed, 2658 insertions(+), 879 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs rename Packages/io.chainsafe.web3-unity/{Runtime/Scripts/EVM/Token/Erc20.cs.meta => Editor/WebGLResourceEmbedding.cs.meta} (83%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/{Contracts.cs => ChainSafeContracts.cs} (97%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/{Contracts.cs.meta => ChainSafeContracts.cs.meta} (100%) delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Methods.cs.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/OwnerOfBatchModel.cs.meta create mode 100644 src/ChainSafe.Gaming/Ipfs/IpfsHelper.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/BuiltInContract.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/Erc1155Contract.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/Erc1155Service.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/Erc20Contract.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/Erc20Service.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/Erc721Contract.cs create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/Erc721Service.cs rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Methods.cs => src/ChainSafe.Gaming/RPC/Contracts/BuiltIn/EthMethods.cs (89%) rename {Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model => src/ChainSafe.Gaming/RPC/Contracts/BuiltIn}/OwnerOfBatchModel.cs (74%) create mode 100644 src/ChainSafe.Gaming/RPC/Contracts/IContract.cs create mode 100644 src/ChainSafe.Gaming/Resources/erc-1155-abi.json create mode 100644 src/ChainSafe.Gaming/Resources/erc-20-abi.json create mode 100644 src/ChainSafe.Gaming/Resources/erc-721-abi.json diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs b/Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs new file mode 100644 index 000000000..667b58955 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs @@ -0,0 +1,15 @@ +#if UNITY_WEBGL +using UnityEditor; +using UnityEditor.Build; +using UnityEditor.Build.Reporting; + +public class WebGLResourceEmbedding : IPreprocessBuildWithReport +{ + + public int callbackOrder => 1; + public void OnPreprocessBuild(BuildReport report) + { + PlayerSettings.SetPropertyBool("useEmbeddedResources", true, BuildTargetGroup.WebGL); + } +} +#endif \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs.meta b/Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs.meta rename to Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs.meta index b0e9a2140..98ba59388 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs.meta +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLResourceEmbedding.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 8ddf9b9e7e8044c65b37afde7fc153d6 +guid: d390021521442774fb72d426648d230e MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplateSync.cs b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplateSync.cs index 232e46253..e7612d839 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplateSync.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/WebGLTemplateSync.cs @@ -50,7 +50,8 @@ private static bool DirectoryInSync(DirectoryInfo reference, DirectoryInfo check return true; } - internal static void Syncronize() + [MenuItem("ChainSafe SDK/Sync WebGL Templates")] + public static void Syncronize() { AssetDatabase.DisallowAutoRefresh(); diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs b/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs index 22e08a317..24c9a4621 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Common/Scripts/ILoginProvider.cs @@ -97,7 +97,7 @@ private void ConfigureCommonServices(IWeb3ServiceCollection services) * to see how it's used later on. */ services.ConfigureRegisteredContracts(contracts => - contracts.RegisterContract("CsTestErc20", ABI.Erc20, Contracts.Erc20)); + contracts.RegisterContract("CsTestErc20", ABI.Erc20, ChainSafeContracts.Erc20)); } } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 62e89b25e9acfbb07fe05af4a3190eb5026cd757..ef05474265f862485af3a68eaddf469c593af198 100644 GIT binary patch delta 423 zcmZq3X~>z-!SaxMTsaJ8@vge)kn8 zpFF=gp^bC%3Y7&cj75_@HRUzTk_|1Bk_}7~QxYvxOe{H-L$OfnnBURc(1zCNBmCrpcb#%8s}CnA8?G?sC}6 zt}S%q*xQYaKsBybF#$#SS*h72nK8~enW=dt#WBtqiJ5uDiD{`Z<*7-=dZl@pC6zJ7 zMaeOf-$+Zz#N;Ps#T2FHq$U=p#^j}z6qh9Cr6d-m80i^;6-@r4&0_?$D!~?N706j# zI=hzq->=`fNkE%B5a=iv$Of?$CMt?C#!e2@(c}d3{;M)5FbHgJ)ahc}%%|7J>~F@9 z%wWi1$&du34H!%r5*bo}*b+#ZFjxSw0fRYE&X~an$VvsOOkqd^@-2X*30Tw|tk06c a3bi delta 415 zcmZq3X~>z-!4jz#K4oH$3}e;AmEnvUlNlN785<@y0?C-oj7-y&1Qs=2xYB;b)pNq6 z)4Lx37JRsQg~|dJ#-Pcbn(`WHCWdCFMn*}gmKLe0hDoVL<_2a)W+_RgsiuY&2F6K7 z2C1pWsmaNkCunvs@_Nj+z0bht8^FZCz%X;NsM=j?n&pc?&*{M=OiqSCy))FS=z{Gx3A^3)__z0$nQl1gM|aZ$4V9sNYr!kl?7&4eKm@*gvVG=_sgC&Cn zkW2-Nf_O#@<_rcvc_ScB0g9Lc#Y};67C=#BAm0c`gH#&>aWX^l=EsJrOiVRan*~kY I11(_(09~(pDgXcg diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index 64f1e97e8b1f779cee1bfb50184e12dc2645fce5..a5f2b3a0372c14421f1a4eb0b595742a5771b42f 100644 GIT binary patch delta 400 zcmZp8z|`=7X+j4}rke1{i9IEZ@sk-D|1(bB%*b@VPay0^c3a=&2(MXuD(pBQGs>< delta 399 zcmZp8z|`=7X+j4}*1Zj_6MIS+<0dmQ{%4%DnUU#!pTLP@$8HpTNcLTS@uQ%p%vtTt zA13JWFa}MQpDVACW@2b&YGjm@YH5+0YM7L2WNu()WR{X-nrdojVPKqOWRRL_oSK|G zdCh#y&HZzaa`D=8Y`Vq3=o`Sqz`!tha^ebkR`cTw4Ca$tS13EEg_$t^KF#2>=B-Cr z37>!-)RN+o#JrTmq7)-NL$Crny@He^hF}jzBU3X5sEs)}P#Zz6n=vC_>_e-B zf6ZLqur{FEU|<1=tuRqhjB(QBj+I)QH?G{x?4QP9!eGc?#$d`|1cXTpsSK737Cpq`sf9*4W z_L*swvw2z>fofc>Vgictvr@B5GGm-`GE?(PiesEJ5;OCP6Vp;-%2Sh!^-A+HODbcE zi;`m|ACQ-liOEmOiYZFXNlh$Hjmb+bDK1IOOGzwBG14;xDUhC=X~?Y$wMqwO706lQ zIsxY2w>`?aIjL7~FVImiaDDPZLutm7llK~GPJV2tzM0RcjoIIfA(_FD!IB{fNE~V_^=DwnoxIgR*+KKix&p7oyW z^z-%SGEo~wpc?&*{M=OiqSCy))FS=z{Gx3A^3)__z0$nQl1gM|aZ$4VFmhS~&lmDHRlfrT{_KD*5b z-@9%P&`mIK4a8QMs3^vGV)8yiO}7843CW zUZ|VJD~HWBLR?IYMU&e_hpLl7O@UgDFEI zLkbXE0!b4F3m`UNFbB#RGZ+C`sX&z}3~4~V1&}lWi<*P=Su&Ubp&>)kW_g*Hj7&>R NHVewVXPjuj4gjP#bu|D0 delta 408 zcmZp0XmFU&!Qyae@0p1`GK}*kt_)}Nnas#o&$wiABam#^%*d22ATVLgl(&m^?Dp*q z-1VKc{ph>RH9}lWj6svzMdUToObpFTjf|2~EiF=04U65ch`Ra@3Up-@30(1=w z^nut46BWf68zz^DX>ML5mcuyFfMqkE#35$?GzJp}Lk2SjQwAd-Okzl7uw<|RlBqyZ z5YLFgoWTGnZv@0CKoL`*m?==s0w`(> z$M7E9yJ-yrqi+Bc0|UdE$&LK-tP}JY7$!_!%CGF``edmEdyll|;@<<)DJzfIqe zbsy*`82AZdD@;@rV|+dNzJM0ne^mwr27$?f68|>y36-(ykU=EZsW-tP>Qh_Q{7}9`z3m|C%7BvU!vt%#>LPLh6&6mY=nE^cs BcTWHS delta 396 zcmZoLX)u}4!O|tW?$E@Z62@(l85#dGzS_*l6wWOW7Jo1No97RQb+;t$o!nb?a&rc6 z1|wt8=4s*Qm-nIU=eWief504C{s{Qv*} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 2b8e71feeb7831aaba158bdda6081188fe0d6f09..9843609c6f28109925a7019974d220c97d6ca675 100644 GIT binary patch delta 381 zcmZpOXo#55!4lVXYU9M75=QOGjEw&o<2N%h`AZ3$y{VpeHRXs~=TAN{of)$aZcdPC zWo9gz{7hb6!z|g*GAY@>G%+R7GR4Hg#K1hs*vKH&FeNR?BF)6u$UND=(#*^-X|k@u zao(xS0k0SseFK;n7#I#rW>l1CWpQ9&V419{sO%`4SmI=Q;*rmGiM5yamY==F2vp;0 z6%$aDpOuAw#qWK4gMki$ zfm{$hpLl7O@UgDFEILkbXE0!b4F3m`UNFbB#R lGZ+C`sX&z}3~4~V1&}lWi<*P=Su&Ubp&>)k=II)l%m6D~b=3d> delta 384 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 delta 10505 zcmeHNZ%kX)6@NBi1ezswLjfBD#)OboB*q34{v-rQ$eN6Qc1V{s0rqTPh!=PU`$0ok zRzh1TYP&FU+qGMhG>KAm+ov+NNefd8U%E=mCR9z+)Jbb1?L#-I%J@`G)3lxQ-m_!y z^Ywd#Oq#Zb9=6{*_uO-T_uSt(_q;dt2jkQo<99C}-Ch6T4>{$y%Q@_i8LBw$3S8JM zUu;-_Pdl88aB`eU`flX7P14T?pBy*)@t&=p-R8J1ytBx0b(>~Ow{N-2aa-W`@-H~9 zhhDf@NxyEW$Z38HF4^I{LSHtNWiP_FFTr_@{@hTKeHXq#2iz_CCxgRiTcAdx!&nu7 z#!t<68!zrQnVj-iA ziF#3Umw#SiCTnX3jFMMz^$8Mj5 z({6W!gpn~Z>S(Z^?5(6rb>$xUvN$n9;G!cC7NTNgEFgv>4!Co^GDS;!eJP!7%&lX{ z$chDiSW?_F93B(IBf>a86bd>jvGHEbjSuodXIShA2SWoBa@#^iTbkEUg8G>kp0vnn7=(7Ha8OVH9J1Qr`C**-EH9+#H* zy0DNGuX6&R`^;lRgt6-EdTy||xXyv0K|bQ(jgv?;6c!}(^2~J@LGU;qoAR8m6zc5@ zy=d8Q#py^fOq}WFr!9zZ%%oU{QonKQkQO151jx|PdI2|2rUiU3m)`HqV%V!`M1~yN z*C&lB#i&us%A|$e4`}J{FI08q%68qZtjTc7cSvSeteN}dsW=uM!pNr6_s|Fyt6c3Y z(yQ`9bLpm&yZd-tJ`56#&|)mEWYcV6N>-2Q134AujuIhAl%SAg z`|Tc`%oFQNE6|V7_JwD3+HR#ch`mU0;e^;0ina;7Unaj#N&Z@pE+4ScUwv&G&M`CN z%Q<1Q$jdoACdPIXN^g^rXL`@&s(R4MbO|-Tkk8cq&l8S^)7}lHXv-jvcOPo$Y4i2_ zy4u^6aOPO&kV;c_8V3eF1c6b@1dg99V+?u?=cz>mg%z7lJ*LX`T7bWEs*qtr`&$KD zl%ZfqpQNt73hM1Gqf1wc1z? zR$9FetQhIfLFxR2!N}acv_!itC?ED!?in@r@C&%K^COw3dksGZlDiR z*Ci>hH7Q`k^Jlu}l%>3N!bbum1j#*%Byo^vjM~0QyD_N6G%bOVY)s1`YZ?br#=&67 zRJ&2dM5co;o?(TijR7Db-$-)sCx;(0@M>5R3H_^}n2_b{TI(ywpYb&`7~uuc7aqdO zf=+&8X0{0i9AFx7nvcreOH!&~9ag{Ov1*H4yT^J*fes+Uu6#9{j!aopKm&tWGC#VKbX$M@wYOkI~4645PQOB2oxV4^^7A3%W_GgnQasl99k!i zz%DnnN&jPcmDPye3}K?r^bF)%|eb|D5N80C{_*@MyvyOJ>!ii%iR z(#>=6s)Kp5NJ{3Q@{pTQd5G1rU`GXEULH+mEbCKQnjob@A#yoW$raUG0S@_Wy%H9d zm<*fvV|ZYf3B=EgtN(hwh!NM3V9{fMT$3WAmZ-fl#nQepQ5&@=X$zYY1Pv^;hWJtq zT0<}gO)B|qSb6-xiYrpSsvdRF9Zl1@F?UGeRKI-Dig~HpU2h4Jz=4Zcy;328p_g_t zykX8;l2L<}gGWGfbIrq%$i~By;0h{(hr9CNFx1BbJvs?|fk_T06|dMg!jqWXWqZ}a=tBc{X;{YSQcA*+Lkf?t1c_ec{a%u`^Os5!SzCi`n)eGyeSJQoSgyVFp>=EUBr`3Gka0*9*R?rG zz)pQ}GoMZT`f{;ObaCccPdk>WU8ly_l7Hp3k`(;;``1`C2MwDh=6d<)^%BNY^vi!gJ8e3RV$RdyVd9L82?B{Yp9@FMIG-c_>OEsZNSsLg8jS>;bgtB9 zbB6ujbo$5;;iJSU5HTw9LXeLH-FsY4czdp>ekADUjy>Jt_SAAphtGE@9fIBMEq^}z zSMEjQp)ay-TTJ*up>jO6K%FSLKZ|uttAnf6@Y@ZaC|wO_fD6oj@otVW`#t$} Q#C?tP<{#fT%vNRn8~(4UuK)l5 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 2e8f3eb0ee9008d6c470fbaa0eaee236b42f019f..e0e5b7972aa555400864e59fff26f42e99f67881 100644 GIT binary patch delta 391 zcmZoDX(*Y{!SZ60M&HDq62{w;85#dG@^5Bjiq;TlynOb-%PMx)mMke@?Xpu>H|J;> zvoID-UZ5whXO?VenUri`nwXMknPOsLVql(RY-EsXn39%ck!E6SWS(qbX=Y}a#K7Re z$lyG=-#}q9ul{D3usmP|gYFVDKgkAY#!Ydp&lbpjjL5mKv8~HYIaFxjB`$AYFFe$8 z5L*IC69x+)HefIZ${8~l0a>X)l_?BqK)wZ#Gy#j6gY{W5m;s?7L(*n$v#-nmBQJC? delta 390 zcmZoDX(*Y{!BW0h_u#~y62@DT85#dG@@-~hiq;U&I^(-NL0Q0g=2_lk@!0l%n{%{` zSr~&RFVK_MOEWPvGc__wO0~2|O*KqPH8M9aGcrp_GEFr#v@kGEGBQX_HBL=VW?=AO zWN@B5!9Za$ul{DQNY5|^=nN@~f|MkNU=K$lQ!@sr zjV&-6fv&4x+<$ca&j!2vFJ?VoPXpZs15YQfmz8F`KKZn)*5+@rUCjPw49N_J43-Q@ zK-z%8lp&EJ1&A$yqzQus5F0R<1LcevjDW0Epvn}6G$7vsNSc5}&B6LC8O(stkRfUF Ic|}7O0I4y6EC2ui delta 397 zcmZqhY4DlQ!Sd#iQ_sYn62?W785#dGUfaybv{+0)@bR%#s@I=8_AQ^trQ!q0(nwc6IC8b(gq^24sr5c$Vm>HR+B$=j~8d?|_Cm9)}rW&UvCo?cO zF*4Xrc92n;EH6{aduqS=aRx@;044?ohUt?R%E+@;TQe|JPd+N6?4T~ZRL}H~l>3VH z{>}Eeg_4XwHToI(xvBa^rFnU&Mf&CWMcMl0sY%9qrFoepmB`HEqGbKa6Qm_&^z)Ol z^n+4!QWJ|)_486oic1pnQWA?&jPwlkfv%9UC`d_S2=;I^GBsm>S{SYYwGiaE_e+;n z{_p8Y_xk60=oHXtFz{sZ23cvwYm?8&YHj{1+s*8s#$du=$Y91`%3uV9NernBmJAj^ xG8HHa;u$fRGZ+Bnjes}>C}Ii}GX=_707Z>~d?O$YQf&;x$qdPx&np_T001mFcb)(M diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 0768f67464f8677ede0fa9809d096195bbd1db18..fb0ee77cb08f78a8a135cca74df4df89c0682c7f 100644 GIT binary patch delta 435 zcmZqpz}E1AZ9)f2#Qf!lCiciMUYfWvoUwK?BV#?|jmeEba$_?i({@HC#%eZ!b*ps) z`^$GYO|1W1see06dV3ECW5ry?qUo&5809t0k_|1Bk_}7~QxYvxOe{%P#sIak_dL`_ko$gbep9iQH~zI_;fwgCK*zzreh^z>qM{h%#_3DfGipvh zy`Is2JKqMzSO$=R*TCD zsuk0nmfU}u@R9fM#qB*Dj1_YkgQl}CW0coOGchzXH8M&{wX{f0HB3r1GB+?YGD}G^ zO*J*NFfdLsGDuA|PEAhU?z47QK64$T zvi-7v|Nn#K&bUmN_%=UcqVx(zpep^0{M=OiqSCy))FS=z{Gx3A^3)__z0$nQl1gM| zaZ&R0z-5fG()#&HS^7b#IjM=osrq@TCB-F)c`1oSDMosRAO&)^1u01k!5)rAre+LK z3t28eEd)6)QmUy;?DERez&qBCOMq^Jfqfvh!bC+e#tqY#t!LDnerY|U%|rv1?R*;; zXEFPyF_kNi_@MW@{?s}-3eiY}&@a+s)ML*N zsi5z*YLBJ;!-@0e$4@d27rq9NAGt+i+c+v1V@bS8D%fWm%nBIxSQvzsM=hU9 zX|Y4l(p!|k%0fZPD$sp-cGrFRFYl9hX6Ug%Yeiy#+eix-m5&yooTLfr-8y<1QMrKpA&zzmmk**OOI4lpPNJ{K7W9^uOCyd++Zlk2<{= zfok+K@^e%5i%RqIQj7G<^NX_e%Ttq#^-A+HODd6>#YM^blN|#TW%Totvh;&eb5awF zQ}y#wONvVp^HLIvQjGKr!3r$(3R037f;}9KOwAaeHh%jGwGrgHY`xO=>Sr}3wx8Mf z)v6fi1SklZtPm>A=r-9VRBLl;Xf}&~8iNUgA%hu%DT5IZCNZQkSTa}u$yA^yh-buL p&R_tPHv-}mpol3@%oHeR0TeX`@{NErNVPE#Co?2(mXCVK3;-Cuer^B& diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index aeb4116b03f756fbfa417bc52f5c5eeaf4d58a9e..600c072df1d2335b343de80ae73809e7017facf4 100644 GIT binary patch delta 1066 zcmZ`&U1-x#6uznZ>8hPhVgInMMZ303mZV*~ZbPPZsGHmBoQN1?`MJezHJM5F2coO^ z;KRVx3!;MJLj~@X5edPv6&doJU&JIK?LC~{}~5h47G;Z(P_d1a622-(lxexmV36#)5_XT7PUJPFnPPKOJx-d2)yqF!Hwa3amuhke%9Q(4$^ zqTgoR@AowpA|z?awu+N}2FvdF2g&~?xkjc{7q4mXypT#l&1KX<8v$RLyTb&2bUj#J zA~yrOam9^*AFTyiOcb*CNPB_%QLf!y66D%z3JH$GFvaVNS+<4@TdE6WZF8w(*C99s zWeLh+v6W@gIKoDt0sSENTF6I{7^Rs;G(~MUkq6zQDlN21?Xb`$RbN2WF-6u@Ueqd`4NhDRgo#dPN&oIjx}DlA6OIPI_`<8(ze z73Xy|DJJ=1f@4ULV5&$_p0?VxkH%xA@Dx)~zLgoXOEUqh^gG6GqNe&;U6C~pPAO<=DFNHH_BK zH`a3?{$*~se&+Vk<@LYMy?Y*(5jd~En~ST;1f0~9TwyF47dyu%WsOfjZWanbYFbX} z^PHxN9J&;&ZRQkVf>U7%@*3o1sB1beOS~$v6k{Z~N$WH7>(*zC*2c${e%+t-nNkL|>#Jj9OqJm>>KPg1&_a2?gOGA}EkL_t|E8F6aKv`JETe;oLi$nawQREB`yP zo6XL*a`o94*SHPJan_2rL4>YQ)$OD=I4ftSbKH#K=P)%GEQWE{(XfYj6rb!0W0?>a zi9~W+){C6^K@~#zwGaMyOdBW39up7ZZx;mGW9y=KY`t{VcD91C^fxey-PXiBK`7+@ zFG$-Jx@;e)Jrt&#qm`B^*Tv+9Bm9Gr-@<_uTz_2DTrpB~En7Yucw`G44{sNgKT9jy!7)kLkDAYC6PlB1DQ9RACPZa2D zrG-8es{uRcx>(8Zn^?oJSu*Qb8%SvBq#8-5EIh0LOl3dGlx)h&MpGajBU<_(Me|ZE zYr@No3~$J+scDEL$Kzx_byaR);a$0kbq);%OR>sOFi^7TQ{_nc0jCa<9eTkdYy>z- zPvN@ajr`cbwwuEz7{0+mugNbJuZwh1I-cbbHxx90odq=xgSzxcK{$X0P%G#X#Fl8g zt7FE8Gjn@`Tj$^1zmEUB+QWL5G?thkQgTYuNK%?kB*&#`5_XAG`iT#ksboZA=NeH* ziP)!3#I#!?`w*l=__h=xaiXS(q>*$gt!hy<8O5S0cW3UBdxN8sZh!8m_h#AUQRGGn@*)qy@PrXT-N*-T u0<7*~)P-b-W6&rt9^gC>^8xDu9|P*yF3<>y(6#O%!*QIeJCod$mB*Ksk@nxY4t{dT|0!kK8nRS z&08!h|4mmRZu6ea34)A8lVy*}>zO4RS|%kMm?owqTBev-m>8HR85&UOmR_i%w)m2axyXbNm(&PsX3{M#i=oQsU^iFiFqlB zMJYylh9Cvk!2*a47|elk y#tcS4Rw__s3PT!@ZviAtz@p}0eU=PnKxoL2w3++bUq+??`^|zk-ZM@#UTG6YTD?)A^&j`%MyYg< zwUIw6?ib5=Zr-ywL69+Mvg}cLy)+X;GgBj@q*P0b)KtTyR3mc(Gb6Ku@b=6gq(xOkh_zgo+{=o`Sqz`(F@^4s(B ztQX%gFkGB0ctP30zGE>rWP(D<`9$pOmE^l$w*8Se&Y#ms(O>l9-p0Sd?O8oPwJsIfn2q?u6VMj>bEeFZCnZp?}1iBffb0YFi}yAQD?H!Ma{{67Y|G{VA;%f zX&tkF8iNUgA%hu%DT5IZCNZQkSTa}u$yA^yh-buL&R_tPHv-}mpol3@%oHeR0TeX` g@{NErNVPE#Co?2(=Dzlqk;%t?v*3;Qj1vvm0lfB%7ytkO diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index e80b6cade5f537adcfdf7cd0bfc88ecd4c83da83..9253b75d42a88f828c2a30894e933b062ba00d6d 100644 GIT binary patch literal 284160 zcmcG%2b>*M`Nw@TbMM^UyPLAvmI6sA8-^``gx-7aJqaB|IsqzDmI zqM)d#h=?==6%|3cSQ9(;UJ%Rjet*xIxih;Y!T8qEF*f-><1^6KG*)O4Zbkpz;A7Eqa%t5iC0f?vAtuF9{o z(tcdpa8AdB%}b?&kt%T1S?7Y!0beFbOH&N@oZKQ9Rmh`Y(Dmn+PP$x4^)H8MP$d4I zIHz1XL zQ@OKbWI1VGT#rwMV6q`&iGQU-^~nErrMc$Cr=1g#P_mYg*?1lKx^%nexg7Ri>aRb^ z=9Ma?8~h2Sa@j9UFlwoEbG2OB{7q@#e*m+*#+*{AHVE86@MtgG5a{`d$X+=yYN^z{ zxnJ51ew5SYFPT^>&8&IBye)&_&BBe8(6|Klj5dZa+#e1YUHJp!9nA$D>>KPKe11;H zF8@4n&Zb8lb;sgD_Gl9lEKJFH?kE&_P%>0Yryv7r@9K$>*4&$Mu-Qi>#N~pZ(WE)Co65(VUN+t>S8e$!icPOb92rw8*=wYoCL=Gig z1ww}iQz6JI#8*%}2lt1ogp9XA`60GDWF*NN(<{#pN$p4yIX+$_GCGnZk1rPqxrfA4 z@(W5DK?xz4m8}X`yL%-H#6Og}rk29ZQD(9yWRW=NpdR`qCImHy%|?S&hzO0`rCNd za9c4H)k&h3+)kM!f*}yL&j^M<*dZera(I15!UJBklR$s8vtnCBlwTX@bHww!a94sO zonE*bFjZT)yE3eBal=!6&j`^TP{TbHfn~2E z7ieZFswyS2U`AIa%(SInx`Xt)H@uUhQvDvC>i0;eUq=pU80lA`a9@d%yWfpr>h&aO zx7?zZ6QlZ$+A5E})+%ptTHdi~d5c_mjvUfBDo-I-9z22)e$D>kTQIX_*k5_ZHS`+% zYJES18i?Pma(EO#bvas4buk3OF&V)S2n#cU zArKa21Vi5I^`Dh&P4!y+d@}{g3I0%4I$t%v1P4vimHlurnJ>JT`Xvf`VS-yJL?1gY zda0t(kH&d)S!&0othbhHK}R)Z_c_>gdQG}+xvd)ZVNA84y2X#ymCwpqTRusNgP>dr>c^wMfn|yb`_aR2)$0%6CLLy(P8yquX<3#@G2t|q zsn2C{zT@1~KK1AGcIZ9;Q zy&jeM@%wnXarX+ymw1Ecd2Zb9^5btQ?mY6=(>OY}=DY#DJ&d3a{w3|H^(&z!JE*xd z+?B((6Al?ohQc{|FpdmqBpT9Ocqqij56#WmWgm2*KQFwBO#aA}_$QPb|CdModE8 z|BF-oFLC;Jp9@<`tpREmy zOrN_HFH;*0@Cmj0GSQYPrWR;Xp>&stmZ!rcvUG|e-LTRPN(Z=qSB9^Jgfe5KF7rD< zMuT_dnH7^4f@K!dVTV~EifI)Bf0cunrKwhzd9D~t&Sl49DCTNqzecoWiXl5Aki=Oo zn(E@xy(dqn7}9O-($NydbeKZMPcfv!*`;;9G?T^Ggjt2WH_LoI$Y^jwo>?)uFgK1( zcT=8DF}X1B8=LOtJe^`%!Y~f+C_ky8+YkslWduVY?3@t{fq*-7Sqy=&Yep~x0*2^P z7y@DUj9>_aJu-qJ*;IyzJ+lZyAncV941utBMlb{dZp4*l2!wqzf*}z0%Ls-*pjWyq zhCnzVBN&p&6Q@qDk{m=l(~*M({Nxa&CYOSO7M>9wS}C1BNZV>HqA{l%d&AG1iprCB zr+(%dgMMoJVNYL58AlYW5P^eDs+naT}$A%oJ8H#o2Uy9uRWndrvn z1;^*boDcTjQdf)5(c(i#fDhJhd|nYB(b2YBVxje86jm=X1Ol$p5ezA$#NW9HLrA$e zBNzhV*oJ;p~iH2n6OfPB23toSP90 zfpA_%Fr=XUD2p(Jhz?p)-RAr(!jLQi+n>qUfnO>0Y3%T$+cCtN=1|Ac*Zuf>o`t=O zpuUp$j%xH_KTpnvJ_7#3U^oaI*2er`J?1>6u+%7?&BS$Y@u)$fovQ%j?LbpHvq!8b^}(rpBsM!KaJP%}TI8?&D2oyRO- z`eMhoRRHPBrA`Tq59ZVb=vX69r1%GwSG5@FG-2V+U{hnuVZLhQ1zUI2#5Gfl$u~hCsM5BNzf_acV`4cAmHiU_a z_hke_Al#f041sVdpZXV|)x40s zsGui&fWUBH5TA#~aJ1+_x&4QDc;RVd(mcslx1$x)oKBkIt{{GkaZo7Dd}bPPnMEj+ zMw|_rmwbgqi&o^yu3I6^wU$P-Vj6bx3Taka8qtbr*!?S{dDzm3R!oCt3Ta-pG@=#L zuw!Jk{ENjZlvaiDJJ$^_eVOsdOviwl>)JJx}xW4s}+ zFMLS_YCaukzFC?hp7&8u&Fhmu{Xuvup>(zzGOjrIt2;mp5GYmXAyr ztdtkInYC9A`j|k6-=W-c$F`S}&Z~yEQO59O&!1GDRH=p^Bh)c;CiD-Cp?}oqhe7|K z=$)Pt-)Y1hA$}+)-eJT|Al@!whZ26oXx-3OidM7S9~QA%+2t*-z4qGb>7DT;tTHHA zU|XG5uU#_e_F302UH7Td^ggE5^F05$Ij!`pPs?l$ep+O03DWNj!4L(85>ffWA=;p$Zt`-c1cS9R=KAmO%)_yhI2lDVtuezc$=)Z>C zGY9(GR$4mq@k5gW;zIGVux$z;)Pk=%pYJ%jzEzq~(m61GutRm(qQ~o7QE0kH)i#5D zHI&pDc~uykj{TY{l@9o6Aug4xGLKO({0YV>13=gb<+WK+%B-~qr?JT^%`442PDh2z zQPRy~>GePn`19&Nr?i3iJPGg%LodnEt8#Qjh9;jxAL(qa9CGI*U;_6g=?dN6o$1yP z2%pLbhFs)@UnFIp1Mx@1^JNOPy)@h3qUV){)!vqHDI>c(F<><3#Na@k82nOFE>ldn zpZe+kJnFxOSPSBh!7=;|_=p$KR1X#kni2gLdf#STKX5gWB+>6g8!bBn+}-ml;X|rX zIr%*ioOUz>{k|1Ac9GW*%#!*2EAD7h@;_N}w7@=^GdV*bd^RH( z0^#0_U`lIHu<4TN z#*cU^6#k>d^AOs3vjWfGTOKd@vq3-kqrr0WCxeyb4+eV^j!<+yvoHMjcO=OxKdcQ=x(mc7f-7#}g-5OE4btddZ^({e%u+ zyyy>-&qasSQoIxjUv1T0ycQIAeZ}&4$>Rq7lm0f!A}E$4g!?=qJw`>`k6E*mTk1;f|L= z1zy`w$E_SMv%_y#9xr(!ZH&( z9`KPZ{8#$AUnRqA^zSh!<>}gxa!|ea=ln0Ym+S*T;76Ho%vnI2F zPa15xWZ}_{r$PlAl?`lHsN21k$4gjZ8Bb=T#_O{Nn=U#$#_>|9P)EtPz2n8SqL%#4 z@_5NB2L0q82FuCc4fZB~HQ02?!iA2fLZL@?*XJeQ4vwcUo)zmWUQ$i_P>}YWvcaZ{ z4i`CI3WXK%T2UVEExQ{)yKAc)_v~(x`WLb^_Xf(*+i+up&UeWt>{uvsy7Bgs83z4i zronQup2148zQNvPn!%<^9xiq=DCA@?A12;A6?jjvJYLde&`+isEGOLtD@l*R-ej`D zrb`|k>v$_v;4NM4?05&#)vrvyUh*4*e)4OBy~!^PHeGahoa3cX*w)g!Y#x5H*LLyh zwDP@VVk%FElgE+6;~fu$bc|>hAwQoD9EM~AhsK6o;jO=P@UA2eX!Iy2Y`N)1!Tkaa zJtHI!?Ecp9R7aUqjwW+X9sO3V#UR8koEy*#fv5OO_FbLqxZhd=2^;p3`Kjz&up``b zJC;mXn)GQr zhEpCRDUTt?!;!<291n#GJk-C~HWH6XYLm%4RIe!p{iMraIhks(H|aLmbjiY#9Z!YA zULH~(`nQTG z3KjIMwqpL*;<0PWW4DyYE{=yIhi`H`6e{pgTk*fuR(;kMUea&SPo^0xC!GG$hP}xQ zgH4xAS1To#Lawb=x_0oFK86x;V1JVXV}8oHa3%RNG@9ls((eMVAsEdh>)_$ch;fX8 z7a!ct>jj|?Za%KeiMzd9)K#vpM@lx+Y*VwoK7k;d#k0eTs`@?kl5%OT&IGr_OqaE4 z)%FFaOt6i?_#Bw~>qWE4<>voSB3RAhQnGDQ26KMpmrC_HB%8f!!~tivulMkTl6ZI3 zFK1d^3wY6m5|jNHb8Fa#r+vQ?Gxshpu8=Yuf&wabyM;qy@LjU`M^i*N9{r z)!_2s34>m|DKf-&p2S0S35O{p8qs4OkJ)qjqRoJb^05gJPJ)li?XO^`zZkYlBy=Tw zn7g+LnvQ3_8?dIt538J~c+@wC>m_*2ufv#*`VE0f@`M0B^qU4N$x{Y{7_)|0_0*YDr2Fxny-Ud|MgC~M>Ufa(FfTdS zAh+lYmXkvaR+7UE_9h1!Y`WySyDh(@P`CwbG)F6!cBAgBR(Ov<()!VVD7PGKNjz6K zwgTAOdpZK>uC@hj(bkZnZFsD-?Gl$}0edECo1xT1?r9K{o`&TR?s4pdn%5=v0b^+!)CWd@13SES27AZn~9B{D&_H) z&S(5+Be*TSgo5lM=vzTXgPY{ocBb5cWr_*UMV#bmG`qTUZoDHZN#8yzC(l5n3qLDB z7kC$Nm+0S6F-svR1>5_#Pz$Xp4Ihe_C2r?W~;CX=M@sa}# z`pH2CxgBk=qW3Oses`$Brb`~ij<-Su-mHL2{8t|`c@MKZUUIlWE+QK&Cr28r=$%7& zV}3^)(wiJ(u<7!JbytW&t`O<)WXfQ5+$v+CW$}_l2K{8Q!E$n}!Af$RLCQGZA(i9= zLwb`F4K^JEy%8d9DU{a8wb?$DN9(G*lZZ=Bwp?Cvia}rR`cQ{*@+O15$!P|gE?Kz5 zaaAZhok#9xSpm0ro?&?y9}F@+7-W1f$oOEeH#yf}(g%`U*6mo@RZNQ4TCI1r3;_3YxE8}8=<>V~} zE6H08(gv3}q>?lY=}npjn~p(94^tZ`3{0C;zB;hPDL?e5I;!1SS-0#gF-g5-sX;$s zyT$al%wTVFslld8raPgki9&_`p}u!wf#+qG$4lOB&`;iBu$)|Ou#&vfU~lp+gH4w_ zyu|TVsK8t8eo}$=6_&?Kt~BWD-2{{O-3BXqXTi1mHHP#i%MCVNzOdm6QD|)6qyM#Z z@*d0LCD$7Clj{tYllK~|B-b0H-EVM6MQUK9R@4Ood(g*M-AysK4!4#^68CB zRY0M!eebkF8FyJ0FZsAZKly~ga`H)omE>-Nl<_HtRJ6-#+WL&arehE;bA>773frA) zB^~iLjO%XFz~okU8TO@)teUzwX6>jhDbsU?+pBj7)`sTCXOjF`1?>Ig2xZsePe3De zbPueJQuus8F!;2$^s_|RB<5a_(cp7Db+%s{Sf-fpQY2$({6sDZ3q$du|*Fl^@g6o<-^k*LY>8zizDH~DYw4C8CG@+)E^-R zk?Yen6+NqmZ*UBP4R|4w>mZs59(_?s&SI9cuBf3k=8ApIBMThM(fTcxF0zpE^^s$8 zz61R@Vb+i{k36qutfYRF$6aCV|GinG{G3z)|6n3bR>9ZOTM*m$P+AO88B%~E7Rx&2HFmLmyGlZ z9w_-rz~Ewix1~i@63Em*dsY=3#o9A2y zzjv$12iIO?&cs@W1#<9zNY2tZ82n8+dQ`n{a|f3XZ$bqxB1T=h(9d0T--_^J;?(o| z>>PbB`uOSiyZV=GZ_i8q%Va%h=s7|nKYC2eH+FFO@JxrW$@Hk!3|}TPyqZe(agD9d z?GO0oLs?gK)gMcFj>64f!nAEBmmRvbMfGLnmJ>AhH|Q^c$%M|f;i*AGiOmtUnOlJ^ z``%wAso>*+3%uN+wF1{j)s%qWI)FN{1JG6f8mVi3^mRbT&<54$8z6bsPOr_};c%5b zk0*$#M&IN)@}1SS!pl(6lhE9n(c^9Gk?q~PPnpAAu41#mdlcB-!#G$*1>v~hrD`tu z)vb~5EXns2tZTgg-81NG_ho%u2KCy*x06s;afaIh?st8QM6Fw)tFraHc(BjVRew6= z5sc+=Eu!Q+o*BpEPDIp5prY%~63G}LAMZ!c@r<4qT7QA(xY0wB$v|6~oq^R~w7dll z*HOG*e@PrNZZrVO}*LOWNZ+j>i zhC8{}b2CUZre#(K`pOj>I70*VAHpkIrH2_HwtubU-H?-jn;g=gA=5Hsx~T85DvRXVRBn+IqDr3 zZA+3u^8Ru0)5d0>J}#O=T$SdB?*n1(^L+`$t?;`PWE)lC=q0wd!jCBB;ZBaY<5Uh% z{GM`6%bR@u)%4j3eAc9#BGW4?YhJt) zGII6)HdO|G+OHK~HV0C^#b~9RbF)6i+$*Da|G}v_H@HS@; z3bpLP@wlkKV`|EyJLS>kcsO$S0mnlj$Afq2zlelv97`}~<6n@-nccEkA^Co)R;#4E z1A~52HQ1Z*2}0Sei`Kj7vRj41pOek`Ciyq^B3is^md8svQXcJ&ha-m{ay%3o$Aevf z7LUG^M}Nwr*YR-VkWFjJp^)Q2hqk)Xq4UZpp5>N_Ll&x(Qi`3ci} zAa^_r_9m<^RBx9oTjPDdqASVwLqN<*R=V9`q?oUyXiA@~XW!^JVDKeLV8e=f{NZS4iDSDa(=B zo!+>yj1P=S`rz244=E`5EoUXNRxE@cQT$@!(_Z%rNnS~Q4xq6!+h#XI?eZ(>j*l&( zcQ4u0pq~sH>`gW?*mTk1M_hX-6#j;68o9z}Q%TLmx=>!mQdfrg{Vj|aAF49wCtDfp zO%@nzx@f&tF1uBz(9hK_Z*#nUD|tsOkC)6d=qH;Q>`jIZHeGahr{kqi_7w->tmIN?oLuZCwCsBi%i|?`8uXLB4E83w8*I90y)!Rf z3XSV4>@T!9i>E@4=h2=&nOn*l0o?@rB{dX! zRQs!6zP(V^zQ)T-_A|)091WI}0}S#_M}tk5Oz-%sEQMTI3~YZ;v;0Pe=5|utz;W~R8S`SU4_fZuN2;0%eL={P)U9*g7rzQmss!9C&gZU@{g3|`lQ%+ z4e`$Uq!@V(<*q*kCwivksz!ezlN;@R0G&xbPwRdz`1IJ|Gh>6#jSW6OHu!>qs*JI! zL@$mDe|ucmT7uc%KatXAe}+JKH6s`T;a?fSkT@PipI-P&_{Eb>6Z&gV+x;5cJ>Mk@ zf3E^HuhzQka&))!-!Sr`Kcj<@1xrUQ@D~EwBy&r8IWGG@$CvZxVma(?bS?d_mGf$`oPUii z=jQR{Se79Ax5{zZ|D$s5tp69VObV)x3X=@=*MupRu3FTVNn^YL=1iMU)Q6to=&y{t@wwC&{n7?&%;Iri|Hp^K z`qw`ZhhBsOck5QaGy?xCkV~KB;Ea)T+ow^DyDGt}y2`*iW?YJ@g-peRI#)z%y4zt9 z)KxTGDBn$M(U`iYGby;<&^Ki>*U+!`2JFS+r{_pjPDg=`5pt`cZ)AyIMe;Anx+@WdE(o=#cE6GTABPWh+Cu z*I33iD&u!)8HfEZW&Hm2WlTC<^-%6&87zT25k>VWm*!9(_Fi}oPUg=gq6yd@2htM> zMU!|`qRC3k7aSFXNB%T5aCr|;^YT?^Os6tjt}Gwn{;F}Xi*r$zvZkyZPYma9q{{B} ztfe&BU)jF7hwAwT51W`w(1Th%VL3GrL>K9*rM1UQWUw?=Y{iK;HXSzuxNTfZRF><; z`B$~VPS`S1`RZ}>JWo(v(GUn0K^bcMgMjQsWqT2N<;C_&Iy}8xH?NJCu*y|-nzVld zuq_~M;B;4b@rxUX+QzYs3VX9mFJwJs3-5`NA!OB{K7On`4<{EzV#V#%o-mHe9_}eh z%_3k-YTJUfJy7-@6yv+YjaEoIKI-^|T<(mcl|uV&+S75lsq|1DvaLFt(uVX3G*x!0 z3)$Xa9LWw}`DP^ruVg9NPy%-%Vo9XSK=;nwn%_m+F-lMWHEb#Hk{@TdA(Pf%Wi8zsA5O!c@ZvbMOX#) zXBNgF><%=X#1|Dwg_8rPmz8UYtrXZ8XJoHv94)b{+ExF9`P*`GI3Ck&CoezKG{%I} zte7o34RL>zt7X5grjIKy`mQ%O_Rql8HkC2#Qv`dfHRt5y8wULL6~pUQ+uNdkA_+v( zfa&Y)tgeHV<`R5d!ndo~by?pxDB(N0dKk>lf!7GH6f^FqBhV}G6FOiT{Cu5lzuJI5 zFcQoS+3~AIGZp5p7vc33USDA^ng!6lzxu5Egg@8F7y_ujXFpHj{A`GqofZxft=nPdH(P0aeWTQ+ z&E*b<#Oh$oYZ$}}?~zrGh&ETt98>B=-s|)d%_E6ZDm=&Od^6(KtaCq1730i z>6{P2Zv-%*`>DceehxIaQ?Vt#qSdgtYbTas6E;W0Lm z$Ll=t_3bq#p2k~Kdu3_LLE2iAs$r`Q+N>X>w&`?{HrLp;)iP~wT9cVObIG9f1$;kb zIm`E@w?g`m) zi*`~3?cU*TJwAnhv+HZ|%x%1$KY(uoVYJE@TRMkbT@1@Y* zX-G|8-&>T!v-o`o@lM;muS>R{C z^@D`jGdvZUj7E=xrf2vj(bO;e68qlv=i!f8km(ah^@GWMNm9dTJiId0%W`Ums9yMH zI7Ek#j;|?YXm}`L_hGy6FwmsarBwo#qkcH#=m^EN%Oo*Pl_DsEcQRjhJWE3I z5tHx?5WRbCK4=f5y&gL$l*=*PjWBjJW?*{n!OVETj zJlVfPP_E6&*8z0HWF?(^pyq(nRDN`nis5AKXkbrxj6#z=tDMdSHK1|?uS711eND-R zSjHEhH||TN8&$487da>3a}jOfxm1)h;AkP4M%p|^-bG-o&qjV<9|xBV7n1iTlVLIO z*=1cO;i()WGrZ`yHO34h+Gy`Zc4X?(M9St`G7`5uJia;W#}mygKh-rr8VzGLlLnU) zh%VdH(cX+5o+yqQ-o3KJHMCo!E+JdbsBbxi4~+P8dj@TP(6*^B67L7pWmV_0-O+xZ z)mb+lxQ`szRr^7{Dlu)d6!*^~bk_VV#$U1I0&2>&1Ft$5_-J^T35lCbwyhj=`7d(w z3om?-vUC%^=G9rC)RI#rDcNbO&CvJFlwFSA1d)$s2GMCCe3hpfK18;;fxA5LtJSsq z`>8aR`?f;0wBAPU-hkR}Yk1wFc8^Yn#gZ>-dSqX#tb}KXz#i@dRFrIYE?Tg*-qq!H&U_EO3q z1D4aua6v1>W^2h%;G8j_C^0Yr#`7PaJPoUyEIW#~_S|Y*PMcyM^aE;z{1P< zp(MgwgEJV#u;E)$E>I`H;reAR$j=(oFNC63K-mb^(~p)Y$<{qR^`%sOnG|F8U9oSg zzF+noN{aj!Pr{4HvGigdc8%~YAfv%sdDbrxZJA=ihcUvX4Tbd!87@szX%b7LnD7y$ zdE3}D%arC)OQV<&Ya9x{!~_4Q@2%)IicsDul&C{~z#XD@INF*0o42U_E5gfD>a?6X zZAJJ_QKw(?7HmbUVKusb=tn+6HN(pAT|A}YD+INZVF-jPGlC%yuF438KzMgX zFa*NY8Nm?xfp2H(x1!tnHN-J%PL>0`@I5?P7+ni6MTL)2^MR2K=El2dVboBn=nz^X zK8mpWd@|d3?5bVnK0p^bRK@O7v4Yv>pMtkQmw6Azbw9!rbHuM z@myGVh2>ZJJz;CwCMV*IKEQnzDleNeD_Fmo@?RkhwtS%xHw)) zhWZU8_re=_>ULN^`ZiND`zz}nm|Hg(v21TA4R5-1Gn(B6!pG3gFgqFXhu{{!@?Ks- zVxkZvGiAhShD|Eb2Po2oI3Kx*(s(`G_;g^wzvmb?Yi^b-VW!?QMeE^<*U$g>Z--;!iI?Sxq-%p?;7(S#L zEL}_v>nICBMuUH8VSFpm1IrW>eg(cuj~$!l-%4|vrBO`yRnkNsAe_Dz$B;z1AGErR z_A)=1z|^Jis(QZjG%RglrUuC)KmDi=!k=k&*$632z02l-%|0XhDD*+syN^O2W^h`3 zjKS&gu?A+#!?W=NvL6{((cf;$JvqYW#bLbjPncq$jT2pfYFo#uFXV7k4|PKc4Q8Y4Ju5 znI4ZgWJbJ=LuSSYIb^-~2#2g6AM21=@u?1(9iQotIdSBW4dNvZ*)UEVvQd1wLpF}z z?~sA`!w#7n-{p`^;(Htt#t%7U)A%b68H}HB$WZ)@Lx$t;IbctUCL}Rfp^!Pj<)w@pOkA7!Nq)pm@X~2gh4E92N7`SsBvN@w*&yOnkjV7RI+ZWKsN4hb)foamcapLk>AE ze#Rlk$G>pM3Gu5AIWeC2KI42+ypcmrj<<8jDe)l=IW<1bA#aNL)~&=iExyhnZ;tP9 z$m#LjLYB!->N@HiT~2!(@1Wg`uK~5L3g#}|oOpdXlso(1(39PaXWz!CXzvpE;RkUg z_QOd0ddBYc4-u;0h96y~Y;x3h$d3bWCr0ot7jDc~yar4|GLH_tJ58`4OJGQW!#!z& zEwTiL6gb>FuE_h-3|nRy3@K!IU|fbr(hOT=84M|8_|muxUr94;on$msaT%UTGi;k>Fr<*-xp5i3oo3iB%V0<$!}rnz+h++3AwkwstI`BJWC;u@ zaQM-{iMOF7x91Fg@LsV?gJ7ix!L@7fllptkI?(mcZ??tj`!@ z`x+Jz|2a#_&q9F)Zt6lBt$8^2FMWvdjNjEk5LP6+0vJI1ysG<6(b|Z$l z&OSqD@QXU&(Vb8=aSA3*PPSjad zD1x836BzBC&0y;Frn%trarmU=*p2OXubvk4ZPx8bd??Y0zy+b&5BYgD$y4o5IykLf zJ)JLU&K`B8Td^DPAJLLuf0IgIe9C>pb!#WN-8ocZ z>1-t_K4d!EgJO|#F915*j!zD6v?g`zXzEa6)UmgK`|(uN@g(Y4eGI=M1QlHf6m+31 zsV=JFr&Ncua>mP;jHz5s&MN1=Njs@@`jS?C_Jrw}`dmMuRJz^jvky_!XFmY-IWg$p zf%$Z)+UP{Dyub8!%qM;Qy0JfLhEJ+Cm=KlqTZ}>UY2=dydmT1hp0z?PWpaEI_&7a}Ru~_S>x6v02C$fX5r;fut)1{qy$aGr$c6oJAgr zFx};;Wiv^cW@?iC7?%mut~Z1;f!K#*ojbJZIu+4S#6+(tP-q4d$WKku3Nn+tDl8cd0Gbg7FxZ9Sp%~I(;{x9V}?mIJ5LiW3F zrG?Pm%zy21^`S&;c3%n~)5h;29=oNVA50W&d?IGzId?M)R#va8qL-mj-yuAwRy=*RdT7-k{Jn-Es9#fXwD%gii*;$`gVX2X z#J*Skeqi_o9?4-u@EcJ)`_9^`Bi;uQoPAXr-6+dNMHo!bU7cDDA0SV6Ff|At1VJXX zsFNwsi`kh>>_R>(nbnJS~Rx(q+4It zXEUF}{!{70)_zA4#s1TtcDb~s_sz>gi*>QoI^SbJ{W{K6wj#> zyzn^`wE7%=7>aO*r+3Ct&b+J#Dho`$3KLyn#avWO__(1*3;mk-U%9$}qN-;l80+@% z>qIzDn^VJYK+L|$P%T|~ZK*%CQ;Fk;Pgu11*4gNR9)z8u5!van0NH7^fom-fPjoPR z9{ERltBs8z##gG%cBh?I(eAh_BmO%h;y9EwdXiG~F1-e^-G)x#hpfP(r=UiMlXtBD za;lRI_^;yy?3a8sg1sQsCH(9aRGgPU!Fef5>b%kt%vW5O`3e;(Utxu3zCwXimsX^e zRn%op&2(vF*72o_UdY_Rq|(cOYw2|{3{$<%t5>M;vJ;?aN{N@{Duh4W;p;+TjqM+w zJ@PSx2@v$X4w|KOhqcAYWTq`n1@MjCt!I1HYJ(lla%WrrSqtrla@+Lv0R4zEjz|h# zj9lKjRZh+jY@Wh%Dn}nLs!MN& zNc?ISBnEkXMF7=vOyJy%^5OQMgA?z4=`#k{eS?zA(F=Oj;dBUT_(j6e^D0{|?gdx2 z+=(l@qVE`FW#i($t+F4%H2HxrBIM!(M|;`YFO*#gUxd>{erJrx=!ev=-JbKRUb`s< z{U~bn{O+Kd|JrO|~k;zIUCv9lI!xn)80$#MTJxbk6a&8mj_+6&ttwCWeMNRw8*1jxRcvsfco}fGS_bQ^5u37 zZZ>DJqO1t!EI%Tz8{BeoTlizB>F*#+Dt-6m)|~Tf3iQLDC>9yCSBw5WYWjRBWJ~Zdl6t6Jn6hFG#g#zxklbPauM;-XP);5Y@ ziYHKT+sXwW%{i^m&NhB*30nAbD8r|^K$|sH_zOs5OWx6@B5N&qHNP$WhQ)f#SmnJ8 z^X+{5r3tr=F|Jk-rux4m){U+?Is6qwtz(LFib?2qJ^mNwgy+NF*Zu9R4Wy5cSsN@N ziZ-|yKpUJ;bw8c_8B6kdcPk)z4xv*j*tbt zAd6v1#*6Q?a2pxr{@a1+mV>h4{%;j6@mK~80}^L?JP#Q;KM!V zTEw;M+S2zzu)`y@(`YcC)~Qb(LdV!)RS+rupA5mUw*ffbu6o$ z$!%d5)NFk;sdWG2E&Z&3n;%Y9G>1vI5wdMyLm+%0BNzgKPyV4H2@W<#g4e3>BbR}DP1|D~tt$dO)SrcEtZ%lyc zM7|r9*+U!Aef_KLa(MxuSG_Tl5o3v3(Djlx=&sRiL!BeZY8RomEq2s`hyS_hEUe_A^y&p?!)- zRa0c4YRZyU&31BH^)p_^g!;{B)h{PkL*DEy)NkqKt@_;yQ(yPciEg#6tKa=ZQ9t%7 z9sp~#tpa)5K1j&gR%F%vAz*yaI_oaR)cs)r`US<={Pbv#c=D?)Y?#9OQQ}+#sasDkQ zS3};qF0^~0?q7tTA8usP*6#GdlB@fdiK+$LErY{N?hO&&;hOx2yW3-WzGi}gLQ>a_1 zTKeR@t$y$oI2QEbml&H%pD|nbI#Kk4UHQr|So~Wm)04X_ZM+v;mJ+iC@=bx}H+X8} z>Q|}^KVu^*8&?7a+g28s$YrJd+HLL`E922#=+!wjv+TS+=PhaNL#gQ3+4enFpC^fO zKKol>E!$QgZ%BnQ+wO1K_R~;P+y1p|djP|bZO;X!o1WrMYd$03e(8kP{7u@LqSBfI zqrJ>FoNX%$OhTBnY}?paep+)=Vw`Q~kLT(fOI1wUW!LS#Now(aWvEKx1nex5+f zwiQ^nZ7T(~oonL-2&rwaO&cl?ZM-Ppeyas-{5I8wsAxl=pbcdiuMJ~k`NwD@CuiEo zZJ}V>&%tqwKE8=Q-1z-%qMVQa4p_?;6v%DiyM)Zgi!2xSJz(7N{&fxAVob%qFW`QJ zh>HI%t+=RET%gbol!c0q8M=*)<)`BL(4CXBp}Wx2oCpDL{rhC`u0N*KmR6rczl3JH$(vX$XZ9!;3Qc7gQvq|Sh(hK95d zRUm}(5J?{rQn}9oLU4`KwtO@I#zGeZ3`w7ugA4-kE^f=$?|D4_^;kj ztE#mnvUiB&Qd;{xRq)@T%hx1`*bE@K4@-w2`Sn><7cq97I+Q$+l zW-NJGp!sv28cY79KEzleDr1R2p${p`n#K}iWju;wNlsnoSfZlGj3vwuOU#4mN53SB z`V{8CzlI_o@f%>gllh20BXYC=b!e#Ib067Iq0Dra-wL=N?t{0fGC$hSURTLq<`P&elr zX<6!)&V&9ypyeJFXuU7m_#+{6kADJL`WUOE{*W(=*!|mvl1d$a2F6FN(`BkW)bSSq z_uFcy;z0W6MV{z<0Ri>hAZ z9|Tt>uZm~~pUJ;Kw`IVJPYG)#gbn?{J)yB<)a{pPJI+@&EZMoczBClSP!!|)ui|TPUWR2g&4~3^dRe#nHu`3biN;?~KdM7cRsNgwvi_COTK=TH*} znUfG%4#5M)-&vsp2oxNGvZM}S>>h#fGA4M1e2*X} zXCpx7BMWQA*R1Y^J%Vpw&i9#5C{sLjKaNA^eu(*2NI-{u08 ze&Nx+W4eM!Sy!NttSeYbW`b^CywDX?k3v__rI^AT%+;Wp)JT=qpz4MHRt?x2rze(x#m3T*EyzAJEDL2{=R%}!@ckRGQB(1D?)jDwOH#^;l>7zV6_aK5y;cK@{!3r`MPW7ISMYy~^|- zHTFSd(fXLzZ?iF98JN>d5@>ev)STwOBwl@(*ASI4L}0WR19Q!+EHF6~CLQTr4dY_j z+rz`4yAeO9R>Q-grstv6(zzG5*2OB4FJCAY{_OV;(9iF;x=bc2T@&m<1(|4-jxqD; zB7)bGcn-YQTqVC903445C^ZcpuT zh%e@v2~ub`DbC}tj}NkvsH-wsVM~{gEc3+SYFo#uBgNlq^pKFKq!(xx1N36BJ1i~E z(KSw)tX)CUPtsIa=IF0U*qJ7*A~Z)AER0hot(&8JjW^JV#)q}*g!#n(rjy~3|5X*` zwvN>YdJR>7`~TRGD2>qNxX7@`en`^kX!{=#86Sn6x^dE7YA{i)-Ln2-x5sjF+EI|Z z*jJeFm6)6q&w8g&YN4-`b%P%Z{6F4loI}ZlJB{wF??G$7qcITL?-4UHI!YM@*0aFa!HV9o!7>=uFw;e)zrLG=I(a!QdxE; zs#4U{CkZxB=BeweEbE6>pXW71RXYog_R?3J+gB#q`BXsX>Mc;Z6&XLSA?7?56pVs% z(dH#?Wp70oYu56-exD8rIk`=5&5GAe0ZMJ z51FopP$N|y0buLfS3?$K>0LHWL(;o!x__^fn$XM>Y!36(B@E^w*#&$>XhI`cxXY$| zaC%XuUA3Qg)pasjs(7bu3$6@_)VX@oYI`Cq3#Ye*taK}tW6y`-~ z=_9T6u!Jqxif{Lyxv9Wfe>0+}|9k-T-#-;F71Zvyjhs{snP)qtXoNJKI47pujF1Zi z+^^3vLRMu0i@b)Y437c@btnr=q>j#Nn^iSC(lc(xhUx4lR7ZQqASY+n@LP4fO8?_#B(Yd@07+HW(A6n#sx=vVe7n|^0BTz9}r!j zBwUS;VvykjK4uOb5G2Sa>l{H`@u{ z0t&ykigF2$Xd;qzuF|C!R_ewwKABRShi!KrHt5^&IufK>I}oj9Kei|lqT3)0R2z?? zq3lZw--qOWU9m`?q-!uicWr7dY$_x7LbO*aCc6F_e~^ORFE!Q~uoa~S(|2Wp=))q! zw=2a*75)m3A9i3taudVYpf6~+<(?sA(9&_gk|A$tgzCp)G=d4PR_by%a0bu3JF{2 zhvm{m=!Zh+hkFo3{r3WJ|LxKet<}E+>miItQVdTih`N0b*{Tf`=U!{)Wh}CV3EJK6 z2Fv2yov6;;sp1ddf;Gh08!2uPra~EF_7Q0A$y56!lcmWY!^UeUf>B1G;OmqNJ`cgK zv+CYO;jJ);Hdz~J)19lJEo{AhlBfdJke!pXLG@nD3*_eFoR(K61s-5uSfpa$0j40v z>f^kIsOtWLh1N770vqbOD^*4j6~bU=rxwQ1D#Y9-AMA2+HrN&Y<_;)zKmHf&RVqox zz3fuZ*1U5jYSf`mbj+(?p^HTOLup+b;)dKdynS!)C9tPodd%AQK$6hD2Lotdc?a58 zE9PqB8%S~*HD1hfOzT)c0sfh zW3U1DZ6K+ul?)ni4;OSl(#wF`rS{$vL3t^P2o1P`qrKRdbG6FHfO{#NaO_VYZhKGo z6E)|(8rIdEpHp+X<26?buQ}zV(413M%4+J%YfdVK78NWE>sCr&%M`Bk6@H@D;SqW) z{zR>-xbuF+6cd%~gFNuC-$K*~!+8Dg)TVJ?R$P}JcrWK8Q;jl9Vrd*`C^nO_TA9u; zsmsuWnQkuoVg46v>L6+?8Vxm7rF! ztFp$=gypJizDb*t+uTL2Vw=oC-}A<{$x-kuoY(oKlNj6>Flm$HiK0y)&?fzRaN!3F zK9NwX8!Aw>-?Fyv{gmwottYa>bP5p~rtNdP`g#*Bp{LDMPDe!}>vfUyn;2<24X|I? z80fA9Ir?lV-m)sDAfCGg4?Sf$S_YMv8#YfQLwU(sU5}5 zWmk=kS+!QQquUg4%w!MmhG^AFqVI^**qPAqhwDbUoc9C7vsnOs{W>)p< zDSBX;VnVjs-KUG)*zHzS#gV^5>PnYL)`E9H$YueLDf0j8+<>o-^L;F=d=u7wbb8Z9 zj~NN>LDg|O>1q#eB%M1)U0b5I@Fvpa=crmUH87DY`M*it*CV*{Yc)zbuYRLun{S0u zoNdl^GtrwB2ZKCrar(Z;Vj9Li>*C(YnODCVZp&^F%ht5kUxMG6$@dR+1Kxa!&K$mG zeQpIQ*@xeUR~*22F@a|fcl-hN^K1ITmK|Gt5STg>9AnL+96t@?cwBK2GBH9iLBHSXe>AIyH7(A90^S?M)C0lwBMiw#x&q(Jj- zo~rWfw92AVWr0GKmF119Y;28RvC26$t#ax|tEC&>->S2O7*pqOx9a>UqNp>kxP2Oo zmkW62hwt|ga&^{Q2%lA`-D%)n@U?0{OwqvS1e*8plm?h@S)+@J1_TNkP?k5+fUz}x zMGfTCOap96Ore5|peyfc=|EzP(ZSDJI`}+M=zy0`?+5c5U*MVFQhI<;u7d{^G9B=d zz{W!gJ?%8|F!)+Eq9V}9BLdAY@{~q4NHroV8WAXHL|NWQBgWSF6*ZDmGmT{W_{{w+ zeMpFcKFWGGLw$j<^-Dy#e*P$!*LaL4{rt;-wN_AhsNh!wnqTFq3T~(hvUV4h3JMe| zs4QbD7;Z%RtcM#z`G)~3p=G0boTlHOjW2?Rr zU`&0VY1Q{BqFn#}7MRy~nrGg>pCOdn_OlA5{rfrawboutsr~Z;%@=s8_5*3{MWyxv zh1x62+G}qNjZ?AqIW?<&X2-XFxK(!*Kc?=hT6KSsDA%vQ4dyjo;+gmB?-0uC{#}Jy z{rYMLZF}tWm&r>jG=KVY9gm*n#g_J$M0$B zLIM{v^=+Gf!z?(^LbZq5*+|29)KEG+=CvUr_@&HPb+D z*M+fLVvNy2K6d|wDA&jT3g$Kb#xw8Ze0ia;Z;3N-)4 zQyLjeH6kh+5h!RxS>8w^#@6^1HIh>^jbuKrFm_9bf*TqWg6KOY6G zwSvk+1z!_r@+};z;E*cF*exm*6ev_sS;kaw%-C%VjZ@Ky<8ProQ>u-A0t_-|b-Bh2)v{?+!w_ZFee^_V0<{Yi(>XrS_8qnv;2|_9JQS zMWyxvh1x62+G}qNjZ?AqIW?<&*4DS?W4DSQQ}=xAouy4M-Fp;j z^=p22z16S#z}Kn?6@e!D1)9@%N)zk|o7szsCIkwaP?oi8!WbH-q9$@`rit9g6~=A} zP|!uC#C~0gZC>W%udtZser1`#e1HCP9#i55Yl+R7659>063hL5p7DHkwR*zMs6sRy zcKWK?3}E`50kPq$YX1^w{*$M^sD z_R^4h@k)DWpK-@jx@_qrtS0}-C1ek6Ye~rKhDfLg?V$;d_HIaF_Ju&xOVwUJSc?d4 zeYzQ7Qt(}*^Sj!*I4o$r2H zm*X#Y7WxGI_>Wz`MiRQV$A=Txqka>=bqE$RR||%TwE&Z~pmWvbWT}QXGfj>Ej3!;& z|HIyy$Jcay4S${KN+OBOVyG#G2sI|gBxXS(lZZK{L<}M3Qc8lRsJ67E+ES|2P*WvA zNF<1$)KH3|M5&gls?ySG`>wV2zUSVUetqBP^FHtU$8$fQv(EnRwfEX zzXi2r7S@U`U}sa8iaVyrE?&Ua&>9}k=&=lV0lOt8roTr~EMCB-o!yU)lm(4!M)ox) z__FwJd)tAm492hWO8vlkR!+5BfyK+(QEsfA1MS2c)vp{*Tw&%LW<3qGt@+ntHD52Jzp#jU zI-&~eSr&I#&)_oSA7bZuJ-cR<9&6@IyXj6Sso(JDc&-`6V$Eo0S2N1;yqd8|wpFTT zwrFe3Y<)Oxrdc=gp;X=0Vcqbj0qjE;RAJr9;ZD>oOL=bHC_UEAjds&rQBvK4scv|= zkz%oKw6m)lWhq@Zv%}aLn<+IkZP9XQies)Tq`Yj_iORMcm*PHaQ73m)VVyj2C+bvo z#dGUK>9I~;w43gMlIn!F263Gz7VAViyE;*pXVi(Uv6)hJvPD0;PE>ZOI@!jcH>$8s z<#8wKRN?t`qV!lNU)oK_NzZi(m1B@%u}-wJs}p4@T_^uivx`l#tx{vq7X92YNIuw& zK?~h)NzYosF<1drShq^J!@Bh@Gd={@5!(r3WsK*4PQ8Eue)aq+FaPDwSXIat*1HPr zrdLEsec6WUjcX>wV!df+S8vK9>unB9HpBU`uCvTF(-!^Y?|tcSnPZd6wfnu#zOGeK zg>|itJ5krh*pIfl*1&kKs~-mbQ(egx*0m<>rdLBrb!{u_O0ig1+S%2WvOHc_HpBT# z)zudL+`3Y^vaZ%+DLrS%0>iL>@rD(5&GwM=7hN9f~cV>Q6g7|G~4i)VgBLruTdd!7}lyu)9{@K}!w5 z_!m7ql)t@4;rWk;Ql6ghXDJh4SE!a+4-?5ZZZ1QulP$SAtu_{|zwdt&<2@97F^@Rn z{J=)=1P|*-$3py`gJZZ3rp4;i#U1wR6UV{;jDOCtkaA;B)}!5Yf0Wdd?c{8wSnNsK z+4Ur4d2F`g6VhzQLN>{^uvZ(PMjQ)m(GLC%G4`p)Lh?ZK$MzJzEop#*3Qll6>!S+m z*#LKVPY+#dS0|jpU+P|IgfZ$gAxZlRb(}S#Aw^JgmYIf+`Jo@KdtjGa|ENltxUog@ zzb&Wfr&4_Imy>^cYys6m)+C zKarEm@DjD=BJlRfmY7uBAMu3N!M_zM&F6FerYqItxhT1(`L`ym7*pG^O;2)LH$fFT z6No!8rtIel-lLB3&lyvc8^=^L+D&hYlEzdRH3A-~DHg{R?d--BWhp(T%mtCHu^Ajr zKIVdGi#AUpt;cG+`|YW8yW^S#zBcRF993AyR=C4Dj#j6&#E^OJ%|v6)iMV2d`J z!92%Y{;7FfpyKV?LFZ#2{=Wp*k6=_`JG8|ewnH!55g`;~_=wPk0xo67`(W+y3z&HT z>DpZ0cDrc5~c>CBqCoQF6YVgop~ zZO1@c^mC63RIuGKPzSo+E9%-FRan=KxWl@pmYMdQSQGrQW@1gSR$r+2HZpF5PMGE2 zv;mbsZP1za(>tJ~Hs~hXfMTf)Xm8gBl5zs`$r{c9RTi)?n z>P$MMMd3*eK46tRqoAlxg9#7lewf}^w0U)+m6qBW4fu@o4h} z-JGAgginCSNW9OKvf_Q8lp+#Sq()(mSB4;hrR5cLpatI1k0nq{YBcI5#Gr6VjYa9H z*Xx4+Zs|cm1OL2&`&#ZsY8>wQG?Abu0iQ-9#1rtzBmy;NYA+JKQJ@{Xhm zhrY<>ActFB!9O@#-+4fdMDIM{#$w;`N-KfP?*Bd?T;KlR>4fsF&r&bozc)+uLVt9_ z)6v=u!PahYc6XdG09Cczokc$+NZ@`LD1rN75JKu;6xOES{bbWm7(#l-)S6^goVH(y)%sU$j}6LgU-pT%|M7pj?eS>KZ}MQjcr3WP_$OlR z#QC}{8vn$Ev3P&obo3HEeH*u)xP6Zs-zJ26iciH2e+7aMaP!45eJH*HimtfF+qg@m zzlZ7Yh7~A}bK07o^0?xL=QV)GT>Ja|2jJkr>-*#iK94pLiJyzh0qYk)R3upy9KeWS z)(8&RrA)ReIDjdKTO&At5hJV-9I$4kXE)%LQ#!A}^QV!R24_JE?r4ui9QYY%{G2xYCot!=zA(Ua6c5!0F|qi2EZ2km7q4YdDpON5g(;sx zO=lh^uJBh`^ZDDO(2Du)h4wwV;kPktaQt9em>k%kQG=$9nl^4pF$Scdtcef*@tXm# z5cfr6Fx+F}_z`20Cs2yGVG1<*2;+M8fH`GU9)o^iJ-c>9-D2dik5Jb>C3OfT#t#lt zrB~JMWgV*`{Gl|p-b7C4k=4)*Y-(^d02bgj8{@EZ`F#2;?kNrC2fWP@y5LrV8~skR z68AsiMztu18=ByEebXGm-h^tn$E*5yJ(E5bxY>9{tOb5+Lh{R|B&#>x6XOYoVo5uW z<3DMf*USRBO)s^xK-(rH|7uLKB8LMwehA0hZbTN+hAa-Xz=}qDVk{7b*3dG`M@=by z+#r&UjY%%=NU~;Kl3}fbdO5+Mt~qGASyzhLQ;+0S_OL#O-wz=B*SeGJ*^Q*X!zW%A zxWO^;WrBKHAOh`JU=f#9(Sg!4SYSz)mL64LaO=v!7KlPSHK5(_ zkZ2D`9(6Fx0(bovhk8IJ=Bf?1M@3@HxNhS{hAD0ERLlZzIWG>a0f)MWMAv|j<|IEH z5fU8$Ny&Pm1$=xLhXz2Z|Jm38XvlI`?VjN4ZP#eRp@J07Kt(!np!}|kkz;Uc~4fq+QE5xyO38$}! zK3HHtnc@8`@Kq;jx4PU@ow2Q&0JxA3QU3P_y22pt@j>We69^f3e_#{%dN|2Ho$e2` zfXZXfvpHEy;}KgWaB*lw__jCoS^|!0SLi#MM$0lTWg?G(vgN7YUFz-*s|W>{vLbZo z+p4z(YH<7P!oIVBFVBe2N0H^k)+8GwFAnvA5q-z>_JKNO%EvW>*o6H9n&Ak{Y=QG7 zlF}qJ8#fZ$obB8VrSO8D(^D+)4$G~s6#gKTWVKOgSobacsV@SOY5X*bdb58GnBF~O z0Imi&-dthAXrrAgBt}rHuERFBz>AJlquT*p+-rbupKp8AfbR9a?coX+q9{#dKa#__ zg}X(Ox2yWlsQ$Puwev2P*(hBh4g1joMw#6>_B`AdhdRNTKGb4w;!N~`IatS5&?&KL zq6bWlKhiN2nnWZw3xF{Vb&Q!9N%Lz}mxEy*u%!!m-ou6Jo{KG31=jSfjD2^oKK0H!ADNB+&)7zz}!Dx}v150s(S371p_rZLg zOk15ZokNhknH1J};y<>jgoRy8@UY>D|1(HOT7(pWRF_j8Xge<=1amdwlu?P6B>Ek= zDeD5uSdv1JnzIffNml{dgMt;V)y9(a8B#~qm5CxOgOBtnLPj#0H5 zK`<<2o3r|mE*Rcs-Cs#3V~CbArFar`q_?G@pYJCUMZhl3r}ZO>#v4SaZzrJ+kIwkN za%%ZaoH81UIAt|X8H>Neldh<1EVfcC{<2B+yU=%-cL<&#A7lENDITxBkWJt2BL?8V z{NW7e^XommRS448OqE*;I?pt=)%Exg=mVFTqIz79FTpcxXB;3n%KHnj&m)w0; zuMijq9;_QxOOPkiJA(vyF-1f+?jM3ZRE24IJ3)R-PRT^+(4OgCrbRH6>3GA&{U5<{ zn86gD(kvweR>3?jJ)+M9j}Z76&vK}KCle=l&|3?aa>}_LLiZliopuvE0`LtdSxk>Y zNcSmhXX+41v=MTZbhJ`#*m3k_BkX2fGl%2-{go|H#8l!$v=xe(x_MH{&)^VKL?lrT zoMc~abUEIio)&kC{VeQ5y6tdAQL4GY^&mkvIp4~zL_6Ro*8Rr1-Eg0E+gO(e517u? z*`8PQp9e?1srDs03w4=xNDAP5oy!Pad-WsCw_>p4Ai%NHiKz%nAnMK( z(_By#TM6yAq<0AFqS@>FgOhQzehu%k&9{&iDCc1nQ+{pIU4RWt<5_nZvYA$~t^^90 z(pYy5jxudw-E}z2<#mcBD?h?_sw37&4^GBa;{g)YZ}sTg*w%l-Ezb9KH==*wSEiXv zilS-MN)MS-#fizANmnW`S;8rwp#(5}jJg|&p}fenvy7nTS~^;ZYA8~6(#V%3{_RIh z0!L+tM!q!Z+kQj{xG1AJ-{)lny@V&{Zr~S5R8E<}beVOY${bEv&~r^(2tLPSp+^0X z7Tgk#S-wgpQ~Mx6?{dnIP)8}3a(U6QM3t50tm}X&L+~5(a@M^!i0DOS1=E;5M2(b{ zoN_~Zt+TV*SXs?fucud>=i*}&9?^EFXE zWm_N)A&xmKUrB zDLa{ds!x6fDY;DbF<(cdT}%}?Uy!n!DIfDisLhl;OhH^;Go^rO6y}RVT_IB<=WC|y zWqKF=?5{RgikN=oe9e^uOy$G0&WWfiX2OSTW4kn04l=!j`BKyt%I8eSIbRFq2-9y^ z-bB+C3AX2%_vnJHCq)~UQ0wlYa^W!(<;a}qwP zl594`^S=;yS@B{DW_m^OWy(XZL-60um6^^l%~7he75s@Eb#s;4On5?!G*9todeICRN0%iE|#G5I=D>D!bTrgZLy9ZCLjLd>}M_Y zC8poFCF-eDnWETcL%LNEZ8~!cHdS9?%H(`4)tO9p@r%PGXrrbxo#lKT)Y(kbr_(&$@C$&M6$Y&sVdifjQX~n&8g~QJDR4x z%e0n9-7D(*obNOCdZxOZX+5{~tLh4-6mH!G>PJlX#i&z1W=i0E%hfeZvpCRP5w zoNt4=p6LMR+opcXw2$-cRyQ&2;(UA6Ell)U^GR?>{fub?=R2WhG0oz9U#mGxOE}+U zbq7;#&UanSWxB%oZmYYQ-sb-MUCn2@jAuq6@RwS^RF?bUZ*?ydUI4(-|55idMKI~w z0VY3gc}MLaQ%5e{MLW!-a_R2c5vB*6(p&q2>2L1$3fgfde=*LqlT3Iy7JaFuonrc# zd$W#qhG{=rsjr=5a$;(too7m9o6WV0OfA@Euy%<_l-FJ>VRGO(9j1NDl!H?)1iEY2 zm_oVqNbNe)hfGo04@`%dqP3e$_nBg}TXrd9wcB61BgXKI=}Dq$viiU}r`VC2JOg=Gbg+>Xnh2i%}ga`F;r1A;5PP z)P_Ov-8R*RmO+u5s>9f>F(?DN_C(pDdta2bq6ebaF_L^;K$?TdPQQ+!%kUy{o_NH%4;HSBG)^S)mu%AVEUN4eeaLzFYBe2j9? zfVC(qM83bN8Pp2MQkp^ewp+2R)|JTq4^>F|RNRg+o%|?#u=)TzD6L@ai7F#7Tm${7 z4i%dfq8(ZHq#{iJx6dJze*}Mla&)UNQQjDM7Uh2LizpMjko>hJ$teMAuwGXpFQWzj z_SZ0`VMS3c$uBC9ob&=o;ZIhD8<=Jc`w+u&7W+1q+oVcWO8H`ClEXPZgRPCLej9T& zs1fcIllD$X7PkM$L~0Y!{`P%A;h3}!%`^%G^!|NQW3V(+H02=duq?s=H&12m5@NOMj<2`LlxCvvo}hS7SMVWgX6SswUa_nPmgcyOitRu`cYh z^s5nI#{XA57k(D9pY|S#7Nb(C!{4KtY>r8rQY#9_Lvm;&_IL=&__T=O6h4|9i8EsD zsBS3VL#e>b3f*wD?C~V|#h~Ws=l+T`m-}KVXf0xv1IZN*)H`iZdxqsbmKhb>V2MiA zju;=5mW^0<`U9qP~Tc(s2*Os8MsHHTG!MS!<)cSc*$`L6M7~YCD zW70;&@|Yj)jxlpvlJ?3#l6UM@q#NC0P%GA@y@|9A3>XxTF;A{qLhIl+7_~Ioajjs_ zk6}MnhqHb(>p!i0*A>@<7rHxJS3FVfjc&A>i8b(`|0t}r2tQ3b8SQ@>oR0EYX@vHm zf5ztcG%YAgiBC(yl`1|hA%x_JUL=pEkaT11QmlJ?+6k8Pn^X8oILV8lBr6Of>5Wo> zyh_xAp*;Kk!V%sWaz-!08FYU1a+HThuSYo{DhK_4=(`K0sC!{}0fuQjR|lU8Vcyt! z9%0@hMuBgt7NJ(Hb{OSF-(y&>ZFQoYs>7}-&KRzOGo?D*_M`DIvnAzS8x!Z<6qb(J zf)AeZjX#C)b!r{;sSb{nFQ5gtTIAs{U((KCnaQ$Z^=zM*v<=BTda^`k z0^5gEOV+jMTdWq6oa`+)qO}9@o~ZrEkyiD(mhu=*a;j=qN?i>19z{oCeJxf%?#A;aTI>)c4=mFngytx=Sb~IEk=Ig^N`^l z+}C_ym~mgDm;{W8S14wVj9G#)?<(_At};k=cbuIISCs%yaU6(DtRaije~ZcpXOY1H(9{lNA%GpJMC?$r5gQ> zmc=o;JRkcG`qDA6NmZAv*ryyLj@{o@AUmCFcwqd}8s)cAU0&GggIAktY_-7TR`pQQ z`e}hp(QR-9-ePI3OC!`a3TlCJeY;p^k&;R;Z|7CWf7A*Kv{paeLYP?!c|!JMFvjWw zX&qbG=e5^T>DFBKUiEvzW|Eyv(w4SqueH_s**>S5<$77BV%u(Uq_Yw7oaR(2_D+3g z`!V?}KWCtwhLQ73YjrJeV%S>u$31z_f%@oa^?eU>O&k6(%GP#mb<%MY`tw!Ua3?&D zyNH>xjXk7QqQ0~J%pwo}Q%~hRX1|hCF$<uaQC4LvYj#-*)9kR-*XH4qCDygnM$6Wb(;UOks>@Z!E@=OHSsLxu zdeJzq?|g(?ru%0;P+g1tj8?w^7@jHD;nS`@_zct|uC`LZ1@FfgLbWKVOJieyJ>h?( z-?P&!b6ADMd6Gs`YV`~SP?%es8=j9fIH|C7&;r+K!|Pfz)5pP!fh**^bIJ3p`8 zo;Eg~m;Tx9JQY_7XQ%Ew--qygABj>Nn=U2L2&Z#<+t{Wf&UJ5!KM?;CrYwD|pU!hI z1Lc=^G$*b7ys&B?k0+Z4;xpKqefnp`Kg*6-E2#8HK9}e@jLxe|`|!Lp2jXAHydJUc zcnr0!Dhs(r6#ujuEj6{2O93y-TCT-LjJH}4wIB<=zFnX2$G$yZf1(A*TTz$O{9S-N ze0q(@KBalKHXOh4iN3R@8HwK_Eg)o8{l~*&yF@wBdRW7U)_4>wDg9DO2sS}8g$$2E{OtTWayJ%!}z)uF|Q}Di^@g@arGhn_+ zM=S=sXAAhC=6kjT3WGRY^woh5X$DYQ;w!-q(nWej7d7qhd z8;>@5OtY~LZMQkVm>T3whQmieowqr{WJ!a9!jWc3`mIYe(jrOKy2m4}mgExMA8CiA zeS?M|eJ<&%ZplbrO6mxsk{{YbdTwZveyg0@k0wg@^d!a zXPVBG0oT3eV9J9`>Cmz6FfS)4Q20>5ZYJl; za5&hyaGNK*Ch1)3Vx)zFcx2(vq0+NgMt-r)Msr49*oGI|rEcqxAGcZWo-a1W4gYgn z1=uKU<}^H{RDx`#bccNnbCL3;?vuz8s0;_BZfm3)(lM!fH=#&*0nSL>nuG$R%S@S& zoA8}d1@1{|UH^_!6&!1kGZ~PTa7d{JwU}nZurQabY7ilGTq7QGn6lXD)!Yqiv>!|7 zZYG^eg*HVBcO_F^ls!4Osg`BaZER73_pOOfv9UG;@7jPkv%FeaHDRhChkl7oviu=k zQrXDnNb@9RBnBfblJrt&d!%JdnGiYZK?V9Xh(5(e1H2klR{&Bqdve+69F}F%Z5r;Z z+Gq>YWl;jQL^Q5f8`?UJ2gicwFk%)Wcul;hfafZ~InO zAe2a5^R~UzK)4}w<^2ySLGX*z`T6G}iBGZ1*FKB0nwfMHskuo~bE7 z{}{k@DR@;@E7p+id!*JTMYmd?#W$OB$^l3rR-N&3yRBKF@Q3gWdu&fu8>q?y;kqOF z(jG!3kuM!!kR_k>LESA)>%h{|5D3SDQu(R47 z{OVE4ci`uUt6AM4h$$1!N8HMagf5a^7}!vYh6G9F2e!~+V5XHqe$VOwA288)al^YF zSDS>_Eny>5I?w)ixMk`fJ09B9r_w2(Lw0ZIDhTe^bItApgCrT=<+J<3YNkavE2|@& zGxO11B3Deh4gKL3Qzq=FRVO`37xuR z4~1(cMQ10%xQ3+5aG)dXFqkT-j*lDCEJ<`kPloxD{_w`TGT|LbbPOL3A4p0--Edef ziH`OoV56ipt=y1uB+;B63Hg#}PLG6QNwJ=Tvq!-(NdrBTkzvfy3z1Z5ckm-P#THazK~b~W57|8KmM3K20SDsMAE&e6(xJBbq{ z#npC0N|rRT$C&JikSb|rk10q~ByH>ESZ)%eNy_i#gEUVN*LE^2GHG`9WZ2Af-I30F zrowhfbWSuC_DFgYdu1vd5~RGI^hWknDAQPs9yRuA*2@&cPq7Q7oF)K?Y}$xynq-ib zX;6)=(0o{&Jsp}cU3VlaGoYm;vN8kONg^vVpsOJEWd?*ZWx_8pSF>h9UrANVFUwAY zbS5g{Vm*VVKp|PX`NUuRVQ+G9M9`s`p z$Ex{|EOnK-ewjTVrb@CPEr5BZ?rPSX@UdOKx6D>D29|(HMtlED**0qF`9tal)y6yd2_B(Jw(jVSAUhlxyg4oJpxFU6)U9Nd8h8vQq zbn)|E40k0RZ(agR;15aP;Q7lE(3+Ct84j~?K4d~!NpIqO$OJD*m14uoy$h8k1;kE< zccGS~a6Erm3NK3P+rka0nWSEIO7Kl^p^^sIaYG7|w75qJybn>5KJJ0{u|sc3n?pRZaK`7G#z!z;dM#bsQVD!k#qocAHp(8 zZMv7h3Ro?vYj?aa88%5W#$5AS2|1Fy#`t-!gguf%Q1=lOONv3=M{r!y2yB;Ca8}YJ zY?oC~B1!iw!TZa9kmTX%hV+Z1J%QJ}R>MO{2Lt`QR|B44a33`udd+JMI7tc}>gT-% zJSDX&f6eO?s3fU-c|Y$@pr)kc=xbhUp}wT4(SF`*AxKhc*fpzK0tMy$lYsBX&H{C1Mr)qU8pODza^bQT``p5 zlhq7|P#o6>p`4^HIIa(ZucW&kCHR!nYLfo+a6_sqsaKtAUWcKvq``Ik@EswoBrU*v zpF?{|Z)3jCAzac*)E$8yl0HG*5$G>zGwP1wzu&~H%0}H$7%i#6@R*!0V3MSe;r)?j z2;wn+3^Jt76KD7_cvDgxoZ-jdT}f9*Uh_H*DF0eM)=8pO_ylZ~M62)#$dwd? ztM^IRE2$H%-Y4O6Nz~I{!k3b$r@w>?lBlOo!Bt7r)2HB;q&~PZoQ8XnQgLNC4Sz|Z zRpTo#_$x$)1Fafgfvcp!I10{ykEEAy6r6#oRvjMW&O#kYlLopWHImeB@HMY<&_Ytg zU_bA3&`#1D@xybzhOUw_l43_B#z{JRW= zlBid3^h%;$DS?xcs8_DQ*OI7LuE4jFX#RZ*Hzm>h`xbtcMDy<|{3(g%-&N50i(Q5T z&A)5lEQ#jdHNd}W@$rG?-*@nWB$|KUL2XGi|E@y=Ni_ei1OA1L^U?hK9`NrjOf>(# zhc1$6{`~;al4$<@0DUCUT)6@G_aV+lbL9q%WV)`L4hXi~go#22--V3Hz6rmEa!PLb zoA9R~htF_6+yt$Su(Av1!%c9OM04dw@RCGxxEhB+;0-4bg(wv!9{2NpA2nj5q0swH$`{0@^P zP4W38=K;)?G}z~y&qG))X?mB9Ie$Q&q!m3k=KKlbQ|xlwW3J^9JdnC$Ls#ZJ0=IUg z&4kN!vU2`{7Lr=E&&v55`kT7lIsZW0_LOoF+>bkyV<-`l`t>}NQ$|UaRERo9Wu~M6 z)Rk48=G0ZLb)tNk@K5ri zoB$=Uv!K1nmhJVGv0;MtjB?%nqB335kDXk%H&7NZEdr&b*Y<|WUM6uwZ=xI)I==GN zL@8mq?no`)MEOCabhzMg1nC#Md`*>yCLOUfRUEod=^|gC;>MH?-=md4r6yA*j2c{d zd!TZWNt7O>Tr`m8@hq+^k)sG*>!G`n7feQg=z!f=cjNAU!4d2e~07Ncs)G zhqqLwOQMwt72N=+v6v-$Q= zCCE2=g~P*Nl!`dU=@jZZDjAZ( zY8M-wls6^C)z&PXly?R3eDAERkh(tY!nSu-)|S$7_3*ndT|Mt?*7h5`UT!10Cf-@e z<9wM=qfYnjT@<%)%9#nf>kQl;t|Ut8H8^#9q*5rU`LOQWV->Fmkut2+tnEFOK_Yw)asUn3T1>pVG0r$k(&WzU>2)xsu+fy>EMha#T{7=ZWnD6}L!{vMBh{ z_CZRbq<+zNwhvXdN_xMYvLi{+qeRLw$-X;=D^Zf>x2v;bq%uX)Ps0Ltj8;xFErR!2 z2kscBG>R7aHpF+@F-e&&>F+_kcD$q%Fl9Itwvxwk|&8g%TUV2Q9hb0X*=dBEd)7KPWi}bfzpX76Lhcn zI~FMYnHE8w&pSKbQWi?x0iO?dyrcXe$=z$sjwQ<0c(S<&`VZf@<6WhMDFZIG$l9?~ zaqq=CUbEg)USOi%kMJA2QlBZqA*MBcV>f3&gW8vTY;<^JbB7OzL?wyj?p!R9t$KFBuL$C6vHw#hdB6lGgm_j@3$pq@v(c zJJu-cBwem^b;mm8fux1CPVLyB#PuO7*OhOE-Q2NB*(#}Dw7T;%#ksH0{qE_xGh5jx zX<>53o!gZ%{YXbGUvFow;%idS&fQ8~liKgxqck@ucIQ4N!lWTPi)HCFlya_}ECXXh~`ktqX=A#WkQEC^FB-FZ@ZR}fz(I<2gb zRIgmS?H&;>NXhglL@ox?%P>TO)=@rPEYlONw;?T zs%?jelo!#@D(YgBD&}dKJ=7ADe$VZx`X*5knNY>!pWI$*Rg)~cda1P~ zWpyjJtGD{1B%@p9U47IbNs~v^+SON$HYsq|0Cki}9d`{@Gfe8aD@py>q~u*A)k2eA z-j%9;W6~SDCaQm!^wF-Vs?RXt=j0JtyIxU)Oggx0wi;*B#a;8%2`2rr>n-(dlgjK~ zqHZ;*((d=wlO{FZ{gHatq%OPHsh-K!@&@kSq6V7u((dhQoJnu&&QnL2v~qW$nr2e= z?gQ$(CLP}Wxw_M&%e#-O7fkwX_gCuQCb{NaQ0oo1mR=|CirUwtc6mRj^CW$r)IaZM zwMf#ufysGyRo@XJ-_oSiynAYjq=Zo~<^85klvH&{dfxBqbV-5D=jT08=b7|Q-a~b% zq=Ka7dH7D5k;3N1K^yWOsV*kv=l!KtH0fmC-)db+<6^$g1FeNgYQCyXH&a%@KU(gQ z^kz&@zD4`Nr0{$P?N3QFlLqHIX#t}|=`)kY=R0dHOiIgl(R!QodVV==qDh(g?%Jo4 zK1*7i@14m-Dh#W*r<2xO(v|S~d%9?wn9`wMcLl<=eS)w& zqMITmQplcg?V(8>_e5yUslw*^!I66+wO*1S=wW`8Hq4}+dt$W7l3r^*bWfa?A?b^j zQ}*=ImPo2FZ1$c$+FD6h!ZY^_&~lkX-3Mz&rLIxH{B1)ux3Qx1ej!9XBtg)+Jwvq= zlYYt{s_m3Ctk=3diP|Gchf|2!jI*{&7E*tc3il*wTP0lyKei`X)5cRu(MlsUUqReT zBeb?mbc_qxGeV0pspFoJ+8{x&e(=RTDcYx!8UKAe;dyIBa67_AW_LWHw z^T%q}Bn|8JQ~r4EuB5{$Kjq`|aVJ>oaBR;+t(-|$_e|ERO1ct$ch6LnC|DLYMDW|D6~y0(!i9k1oqESRM|kh=GpHz=5`b(|oi%E070V)-qGSDxdctwvqT$e(&U17wegbPYd*W+JuO`ljmQtQg_0@^ z3olr%tuQIGV1>3t61C?lt-z$rf;HN4K@N`fi$M*w4Zz>d z)@#2=I_6yh8?=X#&f{GJ8#MJLs!=h}U5KA*Rhcqjp8LlIpK6Uv+JN+$B(x)cDSD_$krSs9dy5hH3-dL%X+oD+-@R~; zHi0PKIMg@xKWld2W&*LE_cgFosHXui{hl@aay3lC|*CN(KMq74Uoo`BlIRzJ6WVe~ibtoyliE6_Ot?5GKM$WT^NJ{MGPcr} znvY50g{QUpCiN*it93MKMBxQ3LDFYQ(+W$p6q9BZUeR8b^nKF2!f&-VB^4wsEWD~M zlXN`k{laV729q`yey8meg!S87cwIZlvs{;g6czOsno{;ccykNjD0A)D` zu=l=JWRla~-?dt4R+~P1|Ik{PRCVv4TD(d1_Wq@%NlNf)wHGfFq*K039G~s?s(PqN zQF{$Ng^6Z|0uK5_laf6g^fW^CX?}oVd4~ULxtn@R#?x=`f4R z%YYlhXYcjUtC{rnULU=qNvro((o;;z+gn3lYSPKQ{(6oe^vn$c^us14d(_iU$&`B& zF7AC%zbEPN@NbdaW{c7f55Kv$f!;{cDbH)3P4upkHuZeCx2fJsQneAVFHoOslGDCs z`a(%JhI{O5p>H**(!N&u36lc$h3fZA3f|X2uRO>}d3q(qX7U4HN)WMnnEMH&0;WaqPw-3odg;eSO6b|)s!wnIs-*nkJ<9gc%e*S;P%$BWUthhV zNw4ker~6B4G~}&){q<&&3P$uOJ3x-|ky=s8&*Ytl!a z)AYF}?e(0cf5=2*K6l?7eVa)I`!e)HCLP{4SMT~7w*=mIf6Z&Y9wTXPC!#)*{D&3e ze_;nRWjg#g`qaMp`Y1`iBQ4OUFkM&hp8S1p>W7%b9r|zSKS`oH^cU(6L_U1l?ZNzo zdfT~FdM51kzqW6YK3&rF0e|g#M}H*gZU3_S7waDLM9R1Qz4vG8wN0wA|2@5}q{ihN z?q8-yNV?pt`Th^}L6Twv+w5PdkCk+!XW0H#`cWpaGOX5b34;1w(fe2HE#`B(AkFsv zM1NV*_*!H4uhZW!Y3BY7`f8JMy*KHPOgiknMgQt`vO?!>3-)i*e`LyV_;5_-{%rkM zNpCb+hV-W(aE*5?m#tS_AWBaPT!p%}OyX#tqenCG`5@%z@o#WShomt@N{*hulf#-4d2iQKrEajpN}uie6sc=d_Llb!Jx%Jmm0jtxL!T#gyPR)%@6;Db-2vy7 zK0EdIB^fa%eRB0xlH6j}B5f4;AjNB|_by#|lRV3Wi7DrNcI!1vs_L1i2TKa_S-U@9 z|H!0G`wR3flJw>cwY_>Vljx&;I$5NvP43>=`%QB3>~(m5k$%EVc?zlHTa@y;LMadG zOPSK)(?OT_AJ*L#3LRZp|6H#viLPINt~X(#@_yO>x!z8Y1C?+@k6;r0a76cAOja`C zqu@uVt0n2fV7=(5-ci!)NXPU9CXw%ip2{R@bV7fr6wNF}uQ3%n{#2*fIHA8K>0uqs zazbBfm-3{(vJ|b8DTBHc8z=Rxk~($KEGP9`yOdw*drQ$_neuq^xt1^Wlajt^egx^f zUCLAXx25Q2DY{#V{$MJ0BwtSH>Jn)h7FGgZ>%Nly z33EfLZkO`BUbhrAmMI_Mua@WamXaKBT%Xt5+oimqcPmA)rKoQy8p2fUNMrYcK2j2m z-3$5zyObC8X(nwee^Gyx3GYO2S=IBB{)wcIS~k=!>)Dc4qpn0RVY;FWABoR+()Fd( zE?1OI0rio*B$4i0{j{C#Tm71y?yA1?eOtb(`XNb_@0vbknN4?1pDT%U-|2&v+jQUQ zVh5M-lvc>5 zyK!QT&8E9?iAmJY!??*L>gQqHWtt6tfs5{8{2?jTaG`gLe?nG7J}<+SN#ye~e3)j# zK*dG(GO9>=1M_(swe9lx7)|W*`53Ka%9YA$-N$Gz=~H91Uf$>?Dc*6l?rX#{iP9?= z2~48&3dS&*(ojcU+q~` z%@{A~lF`4Yx-o@GlwQLawBA;F4P&e%>S;eCZG%ncXS~Uj!M}FaG%_X8UGX)I6_Q$q zlt3+Gt)y`L-M*HwRg#~3c)8lfPD%CLCqr#xucWn|l8WjWhb8UlGz#fUNn6mSzj0pD zZnWudT$Mz3;ny{Oltg#o*EQ}*T8p{>IlM_gU`4#8ZwDKdeLZIO4osDHa?H}&7v2L?smEcMsKP6N_SQp z7|WPMKQu7rZnU*^17oQq>W7BL@J%*dLt~00(ls&?H`{cLjERy+*Vq`e#ina)jFm*X zCdSyUHeC}VO%myv8f`zb>6#kRl1LY51aGtH0*wesqzf`4vTV8_qrW85H8VP9+jPy0 zI7y^yZscvZ>6#lyC6TU$v0#Ty*TPsPiF7TE;X7@*mc|rGq-$kN$+hWP8FM9(uC=i+ z&!%f_tdvB$U}HhPO&4q|lSH}@V?lvU7h)`vM7mI;ccD!eY7Cb|x;DnneKuViNY~Nmf5@im zXrxFYT_>aR=Qdp@qrN24bv9NXwdpz=*^)>XW~~0grVBH&C6TU+5qI3C>tYOH66;x4 zV~y^iy~L*LW89HMXQO=#yagLSB41zQktEXfHJrb->G~NLC6TV5am!BE z-#Bqqq$FK`qeK$4q3PZ`gE0j6;%0H`M5V%cdJ@jARlcB+(epG#i5Tt3HWF znw>7mm@9Qd^lw~~jFn8HJ%<@{f3n#eW-OIN$Gv6@M=#5iO6eVdhW#sW!H!g%9{-)y?^ z#sf*Dn_wLM-KLvhT$Dt*iN@&%Hr+(ynk3RqG72Bsbd!t|l1Mk%DEh;un{1qxM7o!Z z6Mx!tFBzAZL~W-S*O_L6ufDBlit*4+H`P!cQ9fL4^xUGUh8L5__p(u0>aJ_KMK2p2 z>~zzNaH-Su!lG$Lf}L)#%FdZXBfFM z=@#W=Zdk z#<#E-I|T6=;A=*K)X_ggUo#F$qI2Qbj1!WQLP}t+aZb``Ja3(AToJ@p<{3Anj;zcx zevw30<{5uTs)bhO8!Ek$0MA<+p_TbYSxFJSe#?H{@RZc2SB}@~MrA=7)WBq<(O?*Y~{rR`G-SYvv&r8L66ef)nVyuKaTuh@(%2Vg7V z8$Xk5CH{NM<;zp9TWv_XaZhcCWjiQUxP+ctYe6Mx!|Gq~5XDMy|YuxV&KH=2ni3n5eR1meZ z*9!k>w1^L0+3>N2`*6LerxbWR{A7&EeJbLu?e>3T{QRG_((`j|PNDYsu`bng0ge!y zDG?+omkQ&1*}^S&6g?ULWE!{TlxxLEl5Me7OUvi`^FP{p*dzEVUX}-XQn(KH$eUd# zEM&`Q3Xh2=DbhS&&fs}rlPdpscs_dK>Oy-9n5j}Ah* z^EyeMXmEt{iZQu|^Zt!127ce?Rb^Nm3fqs^Lhccv{Tq8t1Ci$W@%9$%!}dqdJGdsR z_+)uEHw~YMOXWU0hRS`=!3}Txcy>x^0eh`u3t{tF@zxSWxz^Ixw|m?laf}nbwQfP$ zX?)ILjj`HMp#!$L2I;a~s+~x`zaM!%yHqZ+^JIKOKAMwdYcGgnD;-sFykWd9k8Yw> z?b}nt{QLAT)FuzqOJ`z_o%vwA{*;up zaAmW`mpW78^rSUpu918^vb71G`(ccV?_i)3MLRqhL+3Cm{8Nwo@fkwllDa&)O2v?c zWe(KB`=1g|9?mRFE&psS`B~P5`lWQ5|0zqf?f>s>D86gh%V|7X`tiBV|JzyihZNdH#}DmZy64-;pN8f&3v)boTb??IS#)_2h&z zc}qT*d5+Kj-6^fLAV0}NgFP(Ws-Hf$M@aj$7HAMh?ei?{r`&pPKDYHKjSiINX~>>GmKXx zF~@gvjF{;nY%lHO|9$w$)kEYJ@j}uXVqIsR3{!edu0l_0pJitzpX~^(eJw=TKG)-6 zRenpN=P+8w=qi~lhFUU` zbKU4h@g!9|52UcDqgek%DYh`42XZbELnUgmL|YmKY++oNuykFPUOJw}x$wchUc!FQ zVdM!(Ri>eoR2Qqa&+=K6ZZECvL#3CF7uJMV6t=dBh@le6f68U^5N9ZUi&SJg*m?oq z|Kv;Y_U(Tf$DV>uHn-IxoNFX<*@vI(1zV3;OSJD7`(AjwkF4!4Jh8R8HC}in;wfCZ z*5s8YN0&%rA7lT$QiQMb`SWo;zZFuPOH*EK6O31RJm3{q9-kuKYKN`{(~(G(N1~Bz zO`K7P@RKn@yPUr@FF2n5aJlUt?TInN{{hA|I=_l7HTKDiN^L!>YiC1irDg-?i)}Wmk zgTEa8m(z5Lp>j#8;Qv@ygXSDVZHV7zyHHBHs!+O3V&Wc;5pA2xSA+t&M%3~uC}>UN zYalv^czdmV_{o&^7T&8(s|t-SL)xJ+seK2R6iO{5p=vn{VR{&CNr7EiS{N2Vm#SG`8r-%_! zTs`PJl3GcGg?zmI75LA6r$7#`#w4HC=C*i|^7&~rZYv$^+f(>JcK%a)in7E!6?GXJ zMlJBHuric1m{U1;eXwX|1RVCp*9~Qa-1pL zr#N%KF zCUX1#_tZ%E_HR6V(jPIiXfEI{s{f*n_7?2ReO5S^+reH=!($oV70G3-<2fj#uxvj< zo)yjyCM$K@gS%22&qZp36K<}!RaffZ zbGhqad>xFhgYk7Rz7EE}2zk&5w{{Stgn^gR1-DqV7YqF%4)<}m?+w$HKKM+u1ek*d zpy|paXn;?J?+>rQE&N+|e|QyMQ0L+H25yURTY}qrxGl%+Biz>DwjQ?)P#w2g>Zh;{ zx9YgnQa9m~=r`lG1-GrZeTLgM+;-xYi`y>T@^IUaTQP12aXW(BQQW@3?HF#yaXW$A zN!-4~?G$dOar+9lGq|0_?Hq1j<8~gm3%Fgx?Hk-K;dU7}dLsT6+`h%_DsIf!m+BJ;LoT-2TSxAKU;R zH9(IW&~YG+p+A*GKOUzmV;T2U^xyYz9$x?H$LTx!s}61!uJ0f-%)f0!?m%#biddy zKzGyCRVdASDBU0zWfR!TF(*;B#Ct1AOELJiAuTRyGUTG9=R(jk7#i!OO@T_jAEFGv zKbK795+}mYp}8;--(0mHM=*t_b9f?rQs)$gNn&p{D}llKsKM9pN%CapGn8&DZ^Kmm za&7Dd{U}OBF&ec~6y=5FFqHLMSI1n5gGVbQCnLBZ=(MWuQv>WMb{Fnpsm-m9bP8GFWy-jUDZLmIdOhc5vwFpF+IJkw@l`ZeZUVarQ zeVmqu*2bVD%Xw&RhE~L_TEuS-E&}=o%Te}_dbUtI&DztfJq`39mWw#U?xQ?~Z!f;c z|L?iR>B)W-jG;FfUj+K655=_6Z}Iz#Z(;fb4AcL5Zv8LPzC1pPB7eKO=g0{p;R<&` z!Vy6b2;dPhAqfx-5Fm;Nm>DLMWF!~KM2X@$S@2**R|R)vMNI_VMR653=;Go!NIXz* zWknGMoCvO>h@vQpsPFTAx@R(E;_sg~`SjCIJ@u{X>gu}t82+~LF(q&HoaApCpM>xI z;PUp)8OC;!zjl05$s0T;`J2ZlmAt=W)#Nvit(yG)u~n1zbgY{E{;^e)w{)zU{0g#F zlXr9^XTG(@BKk((GS8eUqQ)735_jJ8u%VGU;TKiA_ z*ml%9F!M9p3F{y5{rX}xxGd9>h}bOlVr88YYd>M#ab1FaqxHJ!eSyy{9%FA*Z{SPK z16eZDwNq8s*weL#GV!}w+KfI`_RR>}032Ak%&ys{CjQhK12O+RcB_3e;(QY*_KCJ_m+v9&v-h)2OE?JJcKKm^%T~%^ zCXTgL%VgNi+7Q>T2sOlIk8)Zcz^|3}vz?yQEow9^N7HgY;!lZ6w2g`x8MWVPsk%6- zSV;`%tys?QUi3)RM(emMUxn`j)hFRAN7;&V5xjp`k7)F4v-?CBYI*o-pC}pN71y$|fqU zR9dODQrSjj8Co*s!hD;mzeFyA8YI``tH^GU3PKoUQK=*c&{eE zN4r;(-?iPV$!`h~R^G?MU*mg|*IrbQ@h10qq zJ2B2_{Q_5Ej_s1+4QSOjPLY1$3be*f>nPXAIH?i0s*^mUlT7nTrg@J=zEyFCM>)fz zWLWNTW!bH0{qEGPZ2hddT&Z{}@l^18W>9*e{75UBQ1w#WK>gm#Z{yNgqSAFKdmF7y zuDJMdde(?6`)D0+cxsut>hhbWnY!d;7Jakmn?>I&U4D-?i#A!b z$)imkZSrW7N1Hrdeu*}ZmU*-+q-7y33u#$M%R*Wf>hjyDg|siEeKF5&0Ya&63m9qv zLoJ}q0@FsyNiom8l$NEmETv^B<1eLsDeWt1Q%Rdj+Emh}l4+=tvEn8{XO3PMSw$iedmaR-%EA3lp->9x1_3!T6boq7X zZTdS2dx7#MPa8|}E`49x!)llQCTU4EHhyJg{=^Ah5r%uW#f zCHM}Qb7ev=QyDPl#)PXZL$1iQ41}^(8)&I+GNotk4heuJSv3@Rmf0<3{`Bo zqEb&r#I;q&wZAz8B*kYZsPg`K>-IE3+Eug-Dda0>DkeHcNO1+eNF=JjpEG4cb zHre(iW+DFLi3Ld;E%PQ^36xP{C49@1S}fjc8kLoR!mmT*dEi-w`f-Ola$XD7f z!FR)2ESqK@OuE-*zxHs_W=n1P=fv-bKLaJ-PFUspSXWuZW(~uxwaI9Fr{#lla(lMe z{x_naXFIRv9zDCf7`(@YSNGhb&nBM$-md?6?e%I8!j>oPvB>v*1S^2@Eu%da`D)Qh zmc5lc$_b`qkL75^@8Ns2;vQm4&yBXeh5sbq4wUi#9*cbANbL9ZTxXGQJqiB~N0Bcm z?YBrNI%-Mre9cg&dmc5;hF+3Yf~~`*EVaH=Dg5rv-WcC3%xcVR29Z)@{OR)_=?cJ zUi%B*p-^XazM}W5?hOOFuTU23x=*6?s zdP{G0PVa4&TP~R1yA8gY+GhFdoZ{ZQELpRc^xkWc+Pcjm-}h;^eX@8%?-RD@8Bf4c zzFxD>c=edOU%bC^4`uFDjThPN6m;nW|@TFWQNTi+q0vIP5w2mL)$8{yXBIi2YMr z`@|z2{6e@@e($->B46)`x5`^Ui74Uk_iD*x>ZImnT#`wDa<2gT33#|v9HV#TKX2!H-lJ;(buzmoz|2K4)9NN++Hzj*vb8qr8 z+AO2*3MEHbp))5$A%j;nZ%Ypoxar}vwqU6)Sa#NVXdl=)b{Ch#YKtB|%iTI)rhB)2luHil~D`EFy_R-RESWrqnC3J_v@!i zo-`rNPxMRG=HfSVWAx{dSN(L!fquH=b3a{jAkltJK~n#1Mx2ao8)MtX*xGna+pIEI z-9^3&{95Z?^1a~qTMv*Q0Dm8I#%T1>N34Gs^_XS9`l70$|1ol>ZQ7!>{ZI0WoZ(rV zVfx4ElVESP$(4$?$<>T!&d1y2YWA{8nT%(i$0N_T!dKEfkoM`c??wA`+K;x$?;U5N zR6nX`5oLV4Wk4^+(2FtjVhqx5XljrCHQo?g#TZu6W)*E#(Pjnp71UQyUqL+&M=wn- zuA4$zMHj=^G6O!*Lu1p z586PR4Yb)nn^MMB$=J5hzLK$RqvbYQZlh(YeaCgT5Axb%{NT08_`!=j*{UsL3@aGJ zCdROWF|495-gJZICdRgjv29{(YZz)BL$xy0I)-YcWh*UPjkBQTCR(=9auY4vXxT=~ zHd?M?+N69Q9NcP?c|@yCW@;Js;@Q^7yRxQ(`R3(Tl}c`i=~!81&1BQn;FzQed~8 z_eF|^x!9qUIXIUSQ1)m3km9s+#m|0n?95dBHWEtF86N8-bLk9^a+0}plDTw}xn#AA zWxSoWgY`PzF12H`_CtP~=CR*#PPgQE*6VoGYt#|e>s|~skf8?BKHYwA^ux-^7)B#i zkLu~bD$Euom#hqHW!OyUn##1x7(2_(`JG+neOY#y_hs2--j~Pt3mJcwJ;OdLEz2%* zhhn?re<6=pY?qje?UJfuyX5}@#@rVWz&IB$o&}7jl$NEmETv^BElce( zTP&r0DeX&XUrGB)+E>!PlJ=Ffue8gYv67)G8LE<@mNC>ahFZo@%V@KVHp^ghaqJ4( ztf0*b+N@yAD`>fbmMdtvik7Qrxr&ynXt|1MSVj9)v|mO0HMCzt`!%#*L;E$fU&A!7 zVW>3>wT7YAG1NMSTE|f9XtRzs>tLh0ZJ^Bt+H9cB2FARBmK$ifftH(SxrvsWXt{}& zo0x`8wBJPgO|);NeJkx-Y2QlwR@%2R&8-a8%22HgwT+>+G1NAO+D4mgwAlumi(}hp z(?**%+O#p|Hd?mPvW=FzXt|4)yJ)$Kmb;jSU9{gt`(3o(OZ&aF-%Iw9Hy4_jhCx1=(9v_(q(X6@A23x|)kNXZ{< zk&-{!A|-zb$BK>imlh?cM*Dbtb-K~My62nrCi^W|dvCHg_q@ZN#TeGwPK`Y{Jc}`8 zF@`M0aE5i(8YLso_$X-;dPPZ_kjGHHqNGh27-fth?_N|oB9AfTF@`+Ga4+XmR}r1o zgD$)|O}^8z@3KtGF{W^({iSi=jo7NaFw-`2r{#0Rzf}|8M*Eb^SFwKkr%U2SHqtUZ zN_v(i`<=Lt&}4ra=Q5f{&jf1fUic>(qhzE#&?>o_No4_JNac8AEpu-z^K&ipa{+By*miBSKQ#Y8 zBL`aLDh#yBRTyZMtFRfPsjo-sYM9D>DjN3~CuBt9zRmf-T6HndtEK{%s_7Zs)p=SW zaEA62lvVo444b+~{}H%G{|Wej{xfi${wr*HS+sMyt4)@hecjbFmV1D$mbJitS{?^( zvpf&z4;5w@Z z*lhg^aD#OV@Nd@lfSaseZAwy4StsCJPFjUlN2^mTFDv@A5aSrh+qKCMW_z*Bg zy=XfhxSf1A`5yXCv`d^9*z=$2uC4+msav5Wsg=aLh---t5uYM%Cca4APTWm=m)K5p zMoBzNh_@0SB5ovZCGIAELOem#q9s&s;<>~Nhy}!j#0Fv$@m}I%#21MNiS5J_#P5h& zjKpjsCKCG*hY_oYONciUn}~N2?#{<>)cQLBv$z zMB)X+nZ!9nC(%v3nb<^JOMHm9g}9Zthxjh>DDg|;kHnve-Qpw-iNsXmFychw1;m-e zIYc+nL%f;TL|jXJh`5EgmAElp;(v+>yo%^1dWen0n~B{L#6FSOk2r|lh+Bcts$0)%QGZi`s6jm^WTfH;AXXh3 zgJ&Gh&lsb6s^VA2r~zsrFikB3j#9T0*8?Z0mw*?ksMp4*Tr~)InK}nJPfZ41L)`_; zVVt>YG2(RK>4oz%T;wiwA-G#jRYRWjQD07dIrZiE!pWIKE8wfW(M;d<^j%Ni_3%ym z$WMJcZ0uR<5wN&zK@aJF4A>O6v}_Kd=$}8{iHV+rATgIBiWi-9g1k^g!9w?z62{ z>903YS!u)3+gr#tg5Un}cJdvJVJDPvhmVTQVP)rW?K{-1M^ebs>~fS0DC0iKwafL& zwafJ?fO6;)7kxe8tNyo~d?k3+r;pKQBlxGEzCyke{JzfujPnyJN1O`bz6fO5$f4ss9p=U@29n}{vM?ZkGX7A58CC>nV=2$j)4zU2r&SMU8C(#4t$T1)JN^r}U&Ey-whkogg zS*`x^`gSTip=5p8PJR^pnlH6jIie+2(i0Pl=X$u@RtR^ZC{qgN)7UWAN;Z@ z_EPoWp_SmLzT61xbKD=hTJ3#(C-{ZO+ZpyK_!Y-hoW!gVW8!uw@9`A!RAL5{yN+j* z=MW2^JaODX?j(Akyn5V6-b7p;C+S=X{j=lER9cAZsc(dC|H@BgJ8>tJ)UN{M?Zl&0 zw0KEdO#BWt^{Z6!4Dd_Zv*X`^o=qi(m>VxgEP(GdUpc5ai5@84uY9!kQE4Ksgns8& z&Eze_jZoHq<)@{e%68&T=>D$)0f7) z=MW2^4E@qU?j(AkT>Q0a$ZzVEhSa2fj&x;@+7`B`rZxl>t5X+id91@64f| zmvE_i{7?b(Z@zWV#!20k@U6Q0BM}v$-zxt{9w^ToYof9e{L`;n$k#LMMkuxu{>0TP>W%HxcS8B>csu!F#BksvElG}> zN=!?VBW5Q_{^U?`kUPm;N#ClIANi;>QE4V`Az#n1ek$9k1jyUT4kg=1JT5VXm`Y6R z#p9AYh^}7WsyhQd@@C?C+W5%>#KW+8Jdn~`;!Nw!7|3&o4x*3POl%>pC;Exoi93h^ z;$fodBXL@YDa2G_8Zn!gL(C;Qh)$x9*hFk5wh;Zq?Zg1_Fj4j8v50BJT%v>MB>ITU ziR+2}zN^)=H+GN*`oG6~5FUPg?m*d9t|Cbu}QyO^&cS3Yv)l4-=0Em*^lmi7uj#xSZHbY$2{E`ia|#JBR^dJMl14r7{gf3o(V5M$9JW5Oax6qKoJw zHW8N-n~Cd*JBR_|VWJw!>qtx`rV(?9xkM+?MQkE2C$pBNyjv9u><6P;r(Rhthr5&cxQlLyG#$&ZYEQu6sch9#z+C!w;* zbI2X!PI4c4GqHt=pL{!cfV`dj$axZT^SC&mpBNyj@uH*g;6>Wlyv2%bs4>>1DJWb&59%`8&=dzvHPSi3*NhRhGox~<$3vt85!|LNhj!9za zGjOu-W}=@MAgT*QPa$R#9Yi0ondm15h$$C}z5l}1s`s1z3**28;Ep!~ThqV zi$qTW|L)Bc@@(*eUD@Og@cVW-$bH}+?(&g0gJ6m6p#L3}yINWIW&`u~I`YJ(DNky&pFBWR`J$)f#{skRaooKQ z-~pg0KJel1`pBEXYu{}q_k+LiuAe*rZhbF6uBNS4h3~0p5;g^V&3h^2+29A>%O-aa zeZ*#>pBR8m`n~|Un!Z}q>{HVv9&Ng$IR(lK`%e(+KI{p4-aS$bzIma`+a&ye`lrA#x?LG%%ui2s;Cl3(Ysi;{DOUx!Zh(2O7F+fzaX-Ui` zI*2}EGto~B5LFTFiP=O4(MN11`iTLennQbHHqk+BCi;m1qMA!fVm8r1^bwnhexjPU zSV|PpUyQoBzxj&Q>c#zjpzQ-Sf3=$ZK?-o)2id^SKJWo2f7lFM_F?l?tJSL?s;gJ4 zUI$Wu6$i3`TMsyZ+Cd+1`awVN?t{$>WCf;qfgHtA$L%La|99&nEh>6+J*y zCA1+roWgy?W@37oT)RMp=*mM&Vm8r1^bwnheqvLlST++|h<@UBVu09A)T+cXmDpSr z2ks{Zh^ktY6k;~fLG%%uiGE_BM&ePmg3UxfF+fyHL{A}R6CFe!v6<*6rqr)i`w#l- z8JjmwLJ_lx0Wb9iK?l)C3=q}zqBj%$M8^%H_=qV>g=Z774 zKvXx0;vo8nDa%C3CZ^ncllT&wi2-8D@2C?~nuO;yJt>yt&BQh;M~Laar|<8@aszqZ za#7M(2p%D(-%6WX#U|ypxiV%W`fd}&PYm3)7+l>hm_p1ZI*2}EGto~B5Y-*DCuS2J zL?5x4=qCn0<+5dEu#t2GQo^b!3;bw72YkLV|=KT#+8 zh<>8_Gj*bm=r{NSqWg(zEp3QCqMxY#LY){OraUN$gV;e1oL3l=wK_5WPsdTytv6w9{IW-l)H>f1rPS*>OHyl!rl+}-q-ub-Y@j|x=(E1Tl;S9o0NQh^0UcbC6DTNSHHde zwEj!`xAo5)@X3G^1L6lx9Jp-Yp9g+EaQ2{egN6^jW$-hDzZ@Jtq;SaVL%tl+BV~4q zmO4DOHg#+2$<#SRpBy?g?ZdQdhy6IL|L|GEZyWyX@aKoWH2mY?e;o0`h@Kc?Ucq8AUqVYC&4BpF+!+&?xNA*yB z@n(0j>V-Ssz10w~G`!!Rt_G`-YLps{|4enR%2H$1C3t^-s+y?s)nqkIov&u#&F^b* zf4T%d4wbEH@NWMtu((s@s(WB{pPH^#!)lGXRNb#;s=ugN>R~loJ)-8QW;Iu}sCnv9 zy!*diU5@vVuTYQS{r|_+)#|V68ud5C{G@WKr<4nC?Jve#`&D>bzecs76PQ@k5BRlX2yp+U>A)H49ALifJm8@2lYowbETHY8 z9N>YArUO41D=GPDmK;VCro$~a0&rJP+f@$;nr;<({>YPgi@i4(=<-z<|x zY+8osHy7;#HWT*|?-?%2LpcY5My+{|M>qH#7fU<_PpLc%o6A{$_cKol97mxTWog9) zVrl3-%B1|ypL`O&2Ht$pY4D3iOB$RkEr(e5ze_|zV}>&FIW@@+#o)!4#e?5}SrTwn zVlwcvDRLE7=L?Q5laxPNJsA3y@#(+^swMuq=ySlYi4%M;Ua)!2dBDE&CxKL@A1c_i8}x!2*ty{6p*O@YQ37@Jh2y}_2kPh#CxBlF z#8>~(Q{tBwf%qjESn22yF91%1kB*-4V&J9dIdydz`b}LGqSw^XOXdUTz+XpiSb!L= z0_x}$F9W{@sN*|0Gr<=Eb@Y<6!ApR;T7+=;y)~e&O3}A!$_><28TwcJE*enBbG7rq zJwP4b>A4DgEl@|_d=2=6KwYgv+#34Kh2Re(ZhVm!sH{JzOsqq;QM4i9ew#?@J%coPoYF;=+&#BKaH}W;d?wa;G0njH1zUI z!2hA@!CQg4+Jdrx-)I8r>Uop`4d3j!0sLRM{<_+RYp!D~a5K=4kpRBaubO}_6Z!`jBWUp! ziyFT9^ECLc$VCm`{n-qzY5xG%fx5D2TfnVA9bW=^9^4Mp@im~W;L$)GUj+IWcq|Y# zQF{@*8xZwNdkH)Nh~Iy}dx9F?9o-H-OxpoI9H^@i+AH8AfjYk0^BVX$KwXW}c7l%v z>grtWO>n#;4n9`f4SpU_SL3w*fR6|2YJ#>0JQIlTiE8hFPXeNrY43uc4@51~_JLmr zL@m?ygJ%JCbumVB_ze>vzTT=G1kVQQYO3}TcrFk%QELa!2cjlwhry=O{4yYFrFIm2CJ^8K)xH3q4b)YU_9gfnpswa>UxCj9>Z({f0e(49$G2g=1)mQ@ zUDmz>zY2)DtepbC28g<>{RqAgh`Ox(1YQEvl|%a(+zHf`OZyeP6sRjV-p$lh89-O% zngzT9h~LD}Y~a@cb+uTF0s!EFiuLkO>MvDWl1?p;v)(yN4sH=Ld2e=ogs|LKw ziC^*q>gooqC-_pJt{S!8;5Pzw^*ar(gQ{DAI=R97-wM># zZQ2m<+kv{eQ%eP|($atrXv2X2&_=+w6^PocWdOHnqoBM9)YZSWbHQH%qIPRzf!nol zz?ZcNz}K~j@ZAZ-w+yw(;BNwTwM)AId^b>6Z)q2S{|Bh6J=(>VyJ zm=+IsJPP(b`+?1%C#JR^751{5c?6a?AbT+km*fmOq2P3`C1O)Hl_yHhVZ_9e{kAY}CtdD`84@B!>{VVu| zK(rp#jo?{8v>w(c!KVPxdRU(V&j#u$$NDt*R3NUbbu)M#5WTteAK=q~xC+)S;4^@_ z`o;P@_^&{e8QWHH9f%g#_AhWN5Z_p}y$Bu!)bUIAFM-DZQMzo~!Q+5&m`A5!baN$g z@hSCo)Cjcn|BcE(uelfe@9I79r`7x5Ppc2WpHT&{nX7w@nv+4-=v+94~ z|5ORlBY;WK8EUKQ1-@1F0e?XygTJ8qgKtym;M>%2@Exic9M8LgzpBc>UsV<0uc_<6 zU&Ak8WMF>%F!-CQ8GM&|6nvN30KQv24!&Fc4g4+j1o&HO6Zn7B-@*T*o&kSbJq!M} zY6ah;o&(>b{t5nH^#b^R)i&^V)W5;sQGW2f>Sge~stx>I^(y$g>UHq<)EnUMsa@dv z)LY>D)Z5_itN(((ul9oPSMP!ESMP&=pgsWqKpg=8P#psQPzAsbsE@%9s3YJ9)&IZ` zs?Wd=sn5X=sbkKpKYItkvcz6WntKY)L%PJ@4}&VV0Qzknac=Sf!nn;;8EJ2z@xMWz@xRlfJbZVz+<$B!DF;$@L26p@K|jFc)Yd=JYM@dcsK1C z@NU|(;N7)W@b21k;61c|g7?r~08h}ifhTDH22a%d;ECGH;7M8=c#`%i_(1Ik@PXQC z@D#0o>k!F}td%VTHTRWsp(jU+RdYR=R z%QKd@Ek`ZAtaGi)tWR3suqN3?*ekWKexZ5e{KJV`)}<3L;t7&=L{$x&@kXn10ET$ zalovB^9MdNaO=R*LDhqH4>~aDlR>t@a|T~Mc=g~12bT@`(~yUUJUyf-<-U|hQr=Fv zEA>yQX+uX3T|D%rq0K{M()y=ON}G~4Ep2{UL)v|5|47@O_Ia8mJtaLSy)6Bf^mXYk zrhlCNQ+o2S3x?e`?5<&d9rll5(IbY87&&6ni1{N1j&zP(Jo3(wYe)WdSOk&7OgepyJO)6GQKju_Z^GG8Yd1C1=dQ_l*_ivK@b^8E@u^>ukHf z;ajf3_=I7#FXN|cWPi5ZKztFrv(}r(2)D!6*72Jfo$aipqD5h|3*nzLTXx}LlQX`< zZzxC(#K?|+=VV+sU5FKZRq!u4V*=wd;tJ-$9;R7rL^*~t9of&|ee;$2C%(EbdM@}= znDhS~+tb*dLA;wWdw&*l^nYMJ-imDtw&$=tuTs&QrJ@&0Memi0`QS+OTq7|TJV*T- z+e_H|*tTPP8QTub-PLbTuu(Q+?Di@gvn^+L4J3(+z!M2ox-E%8FMzzfmxE<}sF5H0OOw6OR= zU~M7hfr~H;T!faj6fJ5QTGBGKpk-(|%g|z$p`|QC3t6V(vB{t6|6w( zSAkZq0Zw)Xo4r-4H?}_5`eIAgYE?h2QT4|*K)V?&;mvB0_BvM8Uspr0rD$)+ zB}e%sx{qP(K zH_FsUnffTr(9bpXb4~qR?O?nG_UD@ZV@?0DrvF&ee=PkIFgKhv5_4+oqfx)Dm{}Re zztOb6(Tr!AsV_72Wv2c+Q~#Z*|IUp6cc#D3^!J(mKGWYvefYhCHeYq z)BUQsKcrn>A$q{ve~i84_s80wqeVYrx{tt(TTgJ`7$^GwO#OeR{y*pz>UK7HpPBJ} zZrXir#&^tgA2Y)pGvhmM>c>s}xEbGZ&4}-7Grn(3yKl_+PMYqMX1J4PeBYb;_on{6 z8Q=G2d_S1+oi^=GoAI47-Dk{jXUzD1G4)?e{TDO7Ul^ZNjn^f=ttyjyg;|l2|3}UJ zujYQf)yVIwu$O$k%4+2EHKzL-xFw&ju^Rcj(9{>2`aJ6seU>?80jPC|BzDCoo(TwjV(|wZ}?j|$7n@#;@Q@`1a?`AW;CNsX}=Dx)` zll5Y~xqr;uKV|Np=H7}g4jXnaSqs_KZ#VZl%>7R6C4Y8Wjdtlx)BUFD-fg;fo9=f^ z_d9S)e!OG#vmU)`>hGHRyQaR+)c2YCK2zTh9l_Oy=Ki3$|H!oe$UI)V>25dOhfVik z)BTC*{=|&`6Epr#P5o0-|J2lvn)*>wKT178{lt7qP(PddU(LPECi$0uxvsJA#y!S1 z=04Hf_cZst&3#{U-_P6+;J%j{V!HR+W{s5dKWM9V%f8+A$Sm2PvfVIM_Hp*t@hcm+ zFUx&`8f2Gxn4rd*`*GYWHQjFHV*&PZ9SiKnb-c`UUk0~ar_1cdb((3~&o=#MoAz@| z_Z-uHj%ojt-G`BmQcrV_FY}r16ZS1^hrh+%=*cbU!DF-%^u{IVeM`{OmY`=X!5VA{ zdaDvO7TZL8P5);#13ml<*v^2h3+t3FtTDQm1RrUepWeJ zmTja~2={zjjy4~Bp>3x2kZrMcj=c)ot=R6w_9V6~+6z%t+V-gDwY^bW;ohSyimt-; ziS}0X7g{^EFTsC|KB0AwIidBBIi-!oc2UeH+H`F5Vt&>tV!pulvp>;%F&6#)m>B&D zY|mkPIi`pHeoSxuSd2^k5L2ZRW2@Al*bIGctV=Bduf}#G+<%VUqQ%F#^-Hi-$JOh9 zi2FqQQ`}ZRcv!Cid!#=RbrS`NQw^-K2 zRpFTLTi3-MvR>HZi1m^lw_6^vEwS9);}`2Ge6#IT_gHLCT26IOz&;7v)8NhUdlcK> zvBg8XRkQTC+WKO`)z()MzR*6v7MJ*i);IAr%V=!pW6Mi)>qXcWB)(($J^b!Y+;90C z_N~zT*mhxiKQRjN-LBu3bi2MD+p9^bbYI-_ecPKooz^#dmSekFj*D|>!hSinTd{3N z`VYWnH~1E9a-W~A3;Nh>Yx`7b3;NuyFX;0;%E36BweQc?qP|Gvy2{=k+n7NU?74%U!1eIh zmkt_bzX$xiLAThCV>^Q_e((f)|G`gKE*pHW-Gyxl_}zmav9AaJ54I!Nei{53j=$J8 ze#m0mlp+7JzuEH@`}5!*4Vh=tQhuS|#FWLhoRmtnGUXNf3n`~yv)GoLI?q;&ZBeQg z^$517QYYBo$M(O}9#IpA_K3I^AM6!*Q=~v-THk4`O>2+iTcf$F>vO8`$2&whNoI?<#A$ z+dIwe&U1R5Q%Xxp#+|3K^4wmx%R9^My`iRVaZoI-b5_@vx$A=NnVxE|$;;i|lKeW? z`14eev##Eq@2MSs!32q?rl_W}QjEkk#Z^+0=c%u)bT;NzI_vAlomV321tldUV_e>v zx+#lHS8h#pnWwy=&OO&%?y2{>>)fS~ymd~Ow?1UlImYqhf-#chR68phy&hLRj_O=g z=`NLkA(Qc9n^Rgk&r@Aq>GsxCi!Vh<(zprYEhjd^Szp0`RK#yQSx$YuyUvS5UGJ`| z_taF+bXGSqijbXQ*69c#-*K68gn91j()k{5#ay?`?Wy(hK=hCUk#tU?;oCVcCkD@a zJelOXobn83b!nx$4sjS~Z}>{wG@IE_>Gk9~D=TyA8>?M%aLSzzNwKiTS(;N>nOouX zRPz#0?R*KwO$sH1tW!efx~pogHwB*|aOi#yj{k2EoU!@u*1PGT2o`B1|#kFqMM(X`V_{&VuUN2Jf_*x?mMW0jhJ?8x>V$71Z-Q zLrH=m)6x;`RA;5L+U1s(0%^Ux-dXO>U+S!?tqe-@oMrAjH(CzU1gAUuhH7`+?6Rp& zud8B8c}dCC22W+Fl;vf{=?2?0coo+*PIJR-rgJIOdNG*mE<*|{!rQoUT{V0VB~CVU zK;t)g{5Vw%3#nV@m4Jjw3tenCMDAR-#)~Mv6T0%HD889p`BD_$ ziCy_p?4s71$D1T!x~g^Je?Cr)r8c*wl-EGS28x|)JQ{C@_;#w2XlF&1%rjb8W}!$$ z?z*y?x+=QIiy&=an9YRFMieCe@njMu8(ZZ6#9;WKFm5swR3eYF(sQGYj$0!bTMa(`AZrQ&ajx_UOKlZS0a;mjGhr~Rc%dmy(laY zg*D}%Mm=}dFBW-et<(clN;q;@J3$I^(K@4pHDzgfi(x<0?X9ROWifWwiM@D)V(aW1 ztgs#SVO6n1WX&^tq;jI|X52_ZRjsp*Tu!sn<82I+LPyQH!RbN$mPDI*gH9SQp0B8d z=$vIg*X=BwU0vB|x}{R^(Bo8n2Q6b`Vd}*N)rh&w>2f1@b*X!)yA+27_qwZ4l?tlI zDG#=+DU(Y|Zm4tCj#EbP*>#Md9$vrI3gE(^6IsR!Re|f;P&FoJYQdQNf}+Xe#&=ow zp`JCqfjht6>#1^j-P4`*Mp0G8HAwP=@v0cUQtQqu0ST+-rkp8q=W0&TsH$D~PLv=w zxED>BG7+U*W!0j96qK3{m-M(HSGlvks17}Z=~?Yw>XkmW*i#jh(2rKvW1NKIWg3;4 zJ%j1=E}iRMVsaEu_P54yUFHz$EKk!>?{(IBO?y>>ZLNB=YV>48!=v_PEA5)&@5QZCk2gy!npIHNS(mW zD7_8nJ>W1(>Ub3z>fqcP+$glBDpO z!cs1y?4&Jrm}G*Gvo9f~PM2_E&@6bxCW|0OL1EklP}pA*s?fzOp3sr?6T-6|nG?$T2`Z<&yv|*Y3Oyn0D&R=C{xqC`YY_|{yZ~kj!w2Y+ z>zSSNC^&jIJTJ#lC&5N)@jR(D!O97(+I>TC%z-OqL^M?{pIi&W$#XZI=u)JX8GhlJ zHU2yYtmQ&v3OPIfDT&`i@#}OUCI#(-`F_3#om;z!!Ew#FaT6!1EX>zJ^FgE=N~k^= zQwO9FV&}qTNSD`n`{_!c;vZV=nX2_ z6&MPynv{&Nqz1hsPa-_Vag#9!s&h;K8y41Vm*kLQFs~7_-l}s8c!n}07ScX5r^SvjwvwziVvYC}YkGdjHU(Ni{5OXpHpQ&TJH8V{+U z+T-QmDl7@-v#?xVJPrQyJ!YW~r4S+#Xchv)!E~7o7UG2{k z(8rULy^LgJ&)zvt8U1n|z4O9?V5mVYI6@P*1Pynab-Rh zvPcp?s}pja>fPb88Ed#yj-;`ZlxTuS**RsO7b7?#hYHjmmo zJe44cy@IYQ)b%olmcnPLkS2uB(-zhm~>W$ z{KA}dm9>~PK!37Hyv4o+j%(V=K zK`lF6oRzDl+T`8}Pn}6|;Ls%BFoa@^#$???GRct3JazRZjR=!dUtHmqsf1zbWk|EI zbxfS<$4qx)DuYOa<&e!mM?*O#yrEQQHyRiKoYjb_u+F4opvVZ7(T>#AhP%+E8&2t3 z&34-m%5k*{YH?3Xt{V1iGO+Km$X{AtQ!PeW(mwuQ%N0}bfF2?=2Mz_LjJCrSoCCl^ z%!+FkyD?v&QILC0P5hY_(?7_OfFN}l(+x(2{_;9ZR88X!7iPm(yX$I-oTaMP*;t8{ zK`9$b`ijo0j+iyg^VVSqCxuL^APXga>8Yl$rVDYZr(C+qa(7*XJ@ihRIOn zaV&Ax3ph(ljZ?*mRhL7kfPI$a?-Wl-$uy6< z63*h9FbCKBr!2<0o71&eF0Wx@tb|4CtjyznLm&Se`h-Xw@ym!b(gPiHq!{db(6vQ+ z2HVUoJ=u|U=`%Mnrg@Rl6_Jv(z>%uiD@A&Qx}Zp}VD}N}gXSbs47C)IUS|6c>47@I zMTdwB9BKq2!$G|C9VF99R&uLCirL6Hsq#?J) zQ@zMp--SrYu;fdbpDj>1h_O z-}1)PBr*)|&qZVaXBb_3h0VFTHb6#TJlnP3OwZD;J<#hHIlUE;>67~>5y>;FWTZzS zCfb)(*W6J3+ZHu0OiUwUoL%QB$F!&mAL$O*wPC;<8O~h!iHMKa>9;&Duj?Wvv^}#h z-t5w^pt`K4OOM&LScLbY|1gGek?E7^C@v;CqKG82dx}u=YO2t5MOt5B+@_862rCa= zc-BN}v)H5Oa*fc{D5n-_BTGJ5F|DeN^ukD~E>bmT!x5(wK2?tJ40d7WdVgfB!48nq z368wFICQv?F~jM?2oq(jE=Ht)3nq~=uG;)MxpNTdRfM~EUFkUuxc$+EJ!im?(M(0_ zhSnN4lhAcUdKb*5p zXzEb(y`HWt=2bW+Twd*}?8@)Abm<_vI2c!RBCeW|1ha|hB2;L#DNC9F+TZdE%}ajEfCG)lIN6*S zOZpKfH@Bvyi&V%dySw%Zzkpp^m}|H7UHf9e57$bT{vs0^7B?p?kru`Ut80w($@7$z zd0bfZ=)#X{p8uCYepPK(;h3L!-Ws#sM#g*VQrRqghopQzsJat7)h+qmkzV!_u7h&@#v|$P3OOf|4xx1$l9BED;pS zaF<4!|Dc=Uc>^}6R2j1?SwNaA3pJ<#Uba$(YmqF-7}R_~A%CfhD>@4IxnVxjT?Y(i zU9Qtr;l}Bf7F1u4H7_+4j}KOx95Fd7-FW<>vZmTC%R9yetPif2gr0E_uY!)HL{-4W zy)c1wohvnrCir+(6&?pcNido|E@gU*Q3RUSETK_|sB6A(>qorA~-Z&8eZWVS%GVibB{-l>x%t z*E@0h0H;7>V@yqoqQZRxnzB$tp;;}X>2TE=gPcYhR!efQ2;!EpvEp^TycTQFhMU91 zLJTr-VpWS|Z{#|=pP9I-BB5xUd%Wz}q6Sr*0F=**P)^)}c4bZ$bUP;}2xp@`2<}4k_m|Tphr0f_^*LL&@JSB5I zfyWDSNlQ*;Wz7viL9*;DK`dm*8e01|9=hmo;%tNM!r9LsN^M|iiIjr@%&AS-6OF1q z_-vzb^IlpmgYo*%*>ST!6pvWpaBM6KN;}IP?R{q-vtjHk8`D3dr3$XLbhcqLChc}- z51Hlvre}D}p=o627#P}^Gj{e04<8(K{$Dm7gP{m3V-e82bLXvL*2*Odb&e5UW^P63 z;fV@nSAZkh8$8KLyoW(D5TYy&nYVNmYBlxu$af8 zKFoE?!|SL$9M>2v1}cc$F2U2bd|F2C1~3^RLAuMc9Gsztlu+AZwx;zVA3ieTLeUQ? zNC@LbHy5h0lDZB@o_kS4Iqn8ct*g0#4?wW}mySS^ArB@PLe`XVB_-?*6do|IyFnHo zR6aTcdGbB9pecPzEjrIS-aJI#5#|*#Vuu=XVFV>9kgl*p3qDBNp+uy!!%Id7Rf}*x z)8h?~gJTLN-t53SLd;$yJv*Lo2rk5;+s7aWx4+PZ$~zey9xN-ep3or$lQP4DbFc2u zaYMmfEzhEMNWrAxW|rGrAB*&q1ukgt@09mWOq z!RKo`v|w^LDy|MQHpiUQy`DuLdA7GBn4DQ~^w6Oi^8=Z8pm&vlCTVdEccI!ifgNmE zU(1Hb5Tz9|7*2m$=>EPTVQg=ZQg^+~&I|{Z6b&Mm9o?kiK=nrqVIJ5>Gp!J;ZwpD1sv3Smx|*c9}TL zC%}wn1R+VsK)~hCa(ywc@2x|4a?%1 z%Q2%UXIVg+W%!If1`n_p4*`f|Jew}ecp6GrrI^a)4ofp1WaS`y4BKgiI*7^5S;deK z@r9K|!(C86Q(kppB4kX-5=kO89e3-&ZZ%x6MD!km&a^X?gw9^@5rF0!bEXVtvM-_UVc=QGYJ}mEX1v2y7ShY1qvA{BXEcQ-$E1K7j%*Mo z9=iz+8H119gxuBUSkfqLk(EOhuFSgb+#3R#F3Q)@MBnprjYcsVtY^^+ByYk&q9Mij`=Z)sZ!`rWQt={B6I~I2m0I^ z44~b(XKje`5?o|S3oWdTL0c5*{aYf20Y;}#&l^PEf@(Fj1`|JLwbbzGoRil{B@eIg zxQkTi@uEw_8n*{tvfeST7UWX)4?G8hMci&c4}iNC=Hr4L)-1A8E)3$55sSh*{CHQ+ zSog(RIG?Ft+$NQhVp7cWLvLG}QmJ8oDV{=7v!;5yE+IIlJkRx*^wm@|CUdyP%N68u z4MVp!gJPkxYEh}P<6TN+tn`Kn>`tX_yX6(+j+dm3?zJlq*I8!hTfzpfSR@Wj9_m?2 z@FLM!i@jzFLT4^_IOO~=WMnTNJVh2h<8>{?h0Jh4*8RiX^YM~nxEog_-0AHYZK*Ct z(|K;WX^5r~kEF=_K@wpO-q8=5FPtjW`HrWkRe=;;bD<_&j+E++7t_Oxj8RFLfQQk; zTrRmBMk+cckinsn3f(9Q6}*l$S&=%H7(+pz%HRkOY=lc)t(1lPb5tTNNw|2{$T!?0 zJhsqEVz>dLJA2&~HB!c*Xh}kbct*J6YVqyD&K5YC@M8tn978d5^6yw~3|W+!BTXrH zm|x?0UR-Y!fTEgugS(71#E=`SV|7?HGkx(skzvN$%S&DET1Fr)mQ>tjGo_rma=a@2 z|JZvQ5WlbU-t#x3ml;X+*fWZo_*U|rrtPNL#)@APyG{32mK9s6ZK<~0)NR^C(&#PH zXeJsdlF|ldB!%0uH;_OA3A=@q?OhtE?=4Hq-Yf~^LJSGpLd&*r3n_TnWC=?HEwt=i z=(79$JfGkB|Nb*0J5JN|LLML*YCRVjkA`?}7Vz|a#S~*;jYJuP9TPQ;$l9W!Q>NW<})6( z$>fxyb4OR_AQ#VqaB&{HIp3Dam3=2Kp1Ajc`|eE?zVCytp=$0yzvjB!p&lx8y16iX zbfn9nE-!cVe!HCE(WP#gb-nj81)h#$-2B{GRlfx~t2GZ7)w5~UGf(SBPhGw%Lx+b} z3f#n&QOLC~4?MJ&dIF)8tPY13Mu*<(ZFL>GH`aByah-4H+UqKe%yk`hoxQFr8Sijp zu=*OtSfVIkq}*U5|fdi>MJmb>T9on2PU?b$%3 zJ<7q}v2*{?bhwMm8pdgNg7B4dc_*e@Nr&}{;J(~6{m@3;7wH51AIt|Z68qKj`wd3= zQNxQxK>=VisiILAr+(Fo#a+FK)1#?8#@DJgp3h9iv&Y#Y_Dz>Lr|sc(l9Z^d$6RnM z!&c5bPhRW;o0f@j_TbSRoAzK^^iQ(y@3(@vF}^N4zA>yRCgL8|9d$5{Ob6rHi(~Z< z^$X;v130n~SAKLOGJcT{yo?$iA_6_e`F3q!vm%!-9P;g?ZiERo2}lzU5BZo1l|(y>7iD!(3?J9;laabOT4~`Ub%IUpym8h zK0RR|Jhp1K3L&j6dE==1l0-w~Ky=+fYKeCv?!<;V6*IOTJjkn+x}o0n-&}hC`;U7v zJH`;Bo{Kd^BaHoL!xI?a3P0Llwu)%Xc*Qy@jVv~H(D0ehO8){V<27`qbt^Qz*GEmV zZ}Pic`Bq20Or9;`vD{GObaLr38^+2VUCI&Y@bXn8xITY;^j=o=LkF2rzV$`m+^NID zM-LaOBI<6bV9twqQt7F)$1mnxhB&NqY1Grxp9ySUoKa9VRQXHvVG#ccwRosubJg~c z!+87H^mvvtN8TgcIAj=5yCu#;s*snv%s&_kRbG)rz`LXZdz{cULIQ4y>4_BS~CJZP0zDASJUu8>~`ySluNte-u zArp5^sFoX>18(1msux#XQQUL66<-J@Fy;n|D~DDNCiYLS{X)|M;$Z4lU%M^p-ORM+ z&P56jjVao}t0zxf2FU=o!iVy9(m$#juQO&fIaAsf``?%MyH~24_pWqf-;^j+9}pg? zNA^q9>oJTz{@i|5S%=8OiKFNBtIL#bdXT?0+gy<5n~|rFNpNZTN;U35J@p75PrJ}Q z4ARwG&!b$u&pgUSE!OqW-^^Nv+aIOGt>x*6dOdqxVU?^exWsGFD=p+pv=s9h@{gZA zcKX6nK3Ejgrf9zW=;%;|hd}CKhW27BankEs+UbjY7Xy!$oSDKAw|yf^>#>=^k6;UAgSz*C9j}i zPlAz-kzCv8(UY@{D`JO6i39fKZ+&I93^@+YILG{G#~5N%l;g&QvkSSiw$g>i_+b>U zJ^V8+qqxU?Ef%W4CQ{fp_|MHcO;}KOp|h#wJUNj|LK4nOAAVST{3-|5w=U!iHBaEZ zQlncJI#Rpwa*J^`7CFjBY)=?tY%F^A)QJZkdGrx)S~?9*z1gIji#c$Rw0~uk6*$ff zd5oppNG_dZdAeUC}8N@q>CQ=fR2{cTLR6l+d{VLg4XN%#y|Xo{vGJLR zeQbej7@txf3MvB}We{8|SZF}qxqAiLxXmUT2=-UH(Y-H6DY;qRgGa{#gC2F3uX2vy zd|@v)wWD=t5M~h#89`?&e>#3AL2i*wy6*c-e($CfiO&d*vpSKBPnNChyTu{&*b^UP zZn<|Wqkv>(yxJyJ!roIgaY(-ZJ6^M29fot~9x;&A0;AYn?XWjj7{2;A)@p;F94k>Z zM&4<>q(xT=gvXwZ8LKfmSsTN#K5v@FSa~=#Y|J#evC^z(ZDwQGP5r^VNG%Uix}zPd z+xWV!QEyv!J60h{LQru5da} zqU4Z#D8?i+*94e3B+4Oo?-SNxPOQrf9&i}FJ!!RXKaVtdL+ZOQ;B~ETX`5r#qJvt8 z*bpj}E5B8sG~&i!&i2+~gH)&m{iq4AAWT%KQPl?!d> z-#h5`e(dIlr95=rH&RAcVcw0&*OF_=J9J_FX@T9Z4+zT9vsWa3KDwlFZLETJdLTYF z*1-eWWMw0KvYxo=zbUbj=dMOztut)99k_p)x0am-QziE+e9gB?hMYH-TA9zTvr4X~ z?tG%ZQE?azdT=$9i zJknF2t}UUum##Uo$LO;OxyJW*Jes-K7oDulcSk&w*Y)bNgSQS6eUEZqdqA-_m6g#~ zY-@NPt*vKt{z^zt3H4e!wd^m}HF{^(M}CIm2+AJtmffcaow!mhms zO9nl>R1e!HR^zCPQ7@3@tRj>Ycr>0rPu;W0ahF?fMAVE`q>TpBV>c~Vqhn=nv~=fB zp1RcK<0)q@1-w9#8|pmn5yLJRw_9+nIyHE^Us%JBG9hjJ{@nGe{Muk0zSuDJ zc=C{?a!xh!s9XO6WS=<^2iJq?qldC_>Ys4?A%! zpO%Qj&T-M%Ww66$fBj)e&DEHvX4-?BtB)eB?$Gejf@(dMJu~{8L1xxYpZYGD^+w$0 zuq=;mZ3@P^V;j0UMC9#DAN_03EvGvuem7Lq4cEEZ^wpB#t@{qd*jxB{(qi;RzHIW& zZ9AbGi(uHeoajsaKxQ>4N7S2>@PT8)j|=2nqxSLy2=zM-*-}_5rwU7_N4e+%d*M-j zgUcJ?H?A)BHDbBhbSA)qbGetHrPbFWisXtK%%Siv`+xbR@8U zrMHa3Ra~#1*W1|p>%^?IAVN+&QLTw%#=hayzv!}^@kPxwt8is`{uq)Y0Wq$yy^u!j?E)Y{^H8tjFYY`kII3 z$HJ#tm0Lb--N^a`jAcQNXWOZ-h4odM(dwQli$1i%6V`_>Qd!I~-W=@KKNF_&URt=; z9Xyat8LY~_2I%AouJE0$W`c-(#ndfN!w-A8Zh5q=+ia@nJZn{sacLPpS%-wc3EN2` zZ<2HQ%S_KFa&4-RyGVIs<Al8u+1_>Rj)g$pr6oqI4MIL$&ew8s z&7{V@XP%FlrvJGAJm3&=;spwDTc;OqKiU;ymqT7QG^9tDhTnJSACJ9!{6PG9o?)l<8ncmk&3I^gC2+umoqyd(iPYv^1 zXen)GnY&;kT;0uHhv;7|8r2BT>c}~)t{C@1R;N6}nH)n8kGR#~W7%+aJgyxpq1}cL zDrs1JSbjsj(%>o;YN~5a!6cZiU)0HAi)aR@kYw!3OFq;+j_4l#mF`!%`R?7_#cnCT z#692rRQ`UYyRZ9b_qISsgKfC`gPYIaN4xHg&vwh*iToBitv=kH?ef{*z}@Z71wP&7 zXT#boFp4BX&P{pn7~u(ZW1Vq(yeDsWI^a6ume3_Yya(~ckf6Z9@D=(=ziFIUcBqB^?e-3I7k7h zA+PQZc?xfsad-c7!5&LF)XSxlBiYS|-%FX%`OM{fpgfD)w*Xpxtu3~^x$7Q&bMa|h z3yuY|9El$i^bM@L+_3IWnmWBgOw-I!E;` zbSl4Qayo3lES>c65-aM9O3!y!GCfRrKJ2EYtj18A!o-7?;f^zqvT?)N*G)YAT>80K zv(c0^*-KH@<&-oh#fbU6g5)tKM1)#gOMcvKbf?Fe4K?eX!SRuTG}rKV9B0=95&y&W z*X@2b)U5Qgbq?L3!L7kf-5R`uW0#6|sQI{C)umy6xH8oL8Y=eSp|tsM%^LSRUu~}@ z9d`;CBGSm~_9^eCt|WIhF63OeCbT$$PB&=RN?g*h;$L?=^1G0KCo^id3&|tjIQIk4 zjtj=LQT$86Lx=8Tqtgek(dxTUkT&~$g>_^)PxKAC?<@|S0h zt@~C>tcwJ&z(hEkYwnWAms8U1$oKtI?^vYC0(-$xw%wO8y1O^()U(}F88ZvzzY;oF z`qUOwY-QYXPNdi7D_rU>L_b&%Cbkhwbi2^rrHptkOA8Xa6lv=;yF0LI7I|bG=e(mW zCf$~wC@zJ*gB#_Kz2|(s=7D|8clYKG&p}VO4nHPdcrpv>GigK6()^TGb2+pj58S)6 z8G;b&;$^TYG#y%@fHqiVw|B97d-qWOy(Q^85=4=<>%?q+Y&^9Wi&~`Ht*)uGnEP@% zm`@=Qh*1v%!bX^c@Np6Mr&}W&2zW4SJ9Vz5jRU_If^b&Sn&dZ%*!^uG`zyYz8mB^K^?UQUJ+hn&C&w@nGrn!I}@m+7sm!t_kk`J zg@pLf!F(^o-?ei538N}WR@SCDdKy<(+N_k>J1(=KE}TGaXG?35+J*RSXu|W8V91MovCa z!l41F{?@)uXEgi3XQ9E=U=>0yfc1o}1nynw@lb~Tz*iyqMl;Bv6{PBsv@r{L1HOd_ z)MAI_h|K<4{+un^@L2kU6Qr#U{#qXa7KxjpdqBfT$P#^jEG>{U{Q#joLijrQ3|_h! z9Sx)gb3v2fgySLU4EobQs>7hcfAbD{UP3fdpvL_Iu{8 z^tBuJIgUA={-6&}Cg*|h0Z?)|T8zI&w&airGsDXu6;h}pr61d%8Ld|}3aJ|zN-?nO zuXyFBT)8s;rfcMp26o+S=5jE~`Eus{ksQn5+m7c-ujc4O2wH$xb?6Pa)q{uRq2Dwg zGD#krK&HaWmD(TP&AR%<2E#pSv(h6E;ibNRcgl{9|7=~1PKwG|AW&@^BFsysZhB@$?SVij#P*ixGCGPJuCPTB+V zU~Hl$ONL%p5z%MxaNV(yqN^u(EapJ|+=-y`;&`U}V{9X>)LmmIK#3 zQiXFs=&BH>4vh**jASgsLkPit`ZK4-3OgHGGC$T*WG94`3!%ZxkMdJ}iYJ0s;NUrs zo`E@;YqhmDaqd2CiElj7_pJAG6fB;|H9xzUUWrtUT+LyLLKkZ!{Eb?L7NFJcZ4aae zqDQp>ee{qU>c~L@5gybX$R8St%>cmzQv4PN)8?-9sd;!sUrHI8fY1aujdzoSuC~Zo zES^Y+6+x)Ymb#AZ`2?kEtE&?H0m2^&;pK$zia>ZnQ?x?}2{pRV+!NKFwQ7KrBICk+ zY8?o~>PiaLtOCGtjFb^QY&X6&haCwSAp$d3>e~ZeNvx5JW3l^0=G1O71je`EYbeoI z=?Ta!lz!OWb6({qQ(D)0}VK`q9@?<0S5*o>pGzn0U?7mlGbkEe#SC)Jn2BXa0GkUbE$BLl|t z1cy{_4~5VVFIsQRhP-{?oAA}gswS(i(nTBKA{uBf=zz0f=FAF-NHIEL{zO_e*(%GX zH{_55DeDAY-5lDsFdCP$mZmGzg7RiBO>Z0>F4B%(;3BbtIU;f9$6Dw)ys&37XcKuX z&9%>zGeYJ~4vsXKh(rlt_xMBmhC}d%)x}g>z^CZDC{xRjDxUlC)P!gBBrNa2GFPN3 z{z|3T9ohi*j7 z?TOB*K-W?i3ZeU8%?$k!LbrhOrIXYX;;{`d*d!44)k>MaIBK(=E>((*JXZh<=a3I| z+#iyn(WJ~vX&o#ZKr)o%)6u!Moh?w?kseI%tP59C&Yn{Gp&i|U8_bM6Q7XD)ja4IdfO@sLg2bBHtga6rRI{bHM?7)*y@~pvUB(h4ld#FX75V4jUm}5Qci`rUctQ zSaMMdg_#Y|LVsmOXp}hkByH${+|?Iw=1U#pJSjszT-7M?yb3BWL}txe$$hY=@j~%H z`64}6HEPITbOBgv1a1%I0K+?U3JBlhNXA%T2j5Bw`zcN$k>tTT-^TL^VH*e2!?FJA zj2YM3Kxia7Mm_S3jP1bJgDFM7SZ#pue{curWZK9beU=iJc6aIr(}Q~~xZb>1YegP9 z@nrZIq4PC69(D56KuGyh=W30q9D#>Dq-9O>C}U^gJjr3*_JF1vzt9F=6C1Qrdejq8 z3jOQ@;033-+PLSs4QHypVmnvEFV}csElaq`lR9{Pe2*naLi)Iu&~)``MuyX9F|e}a z4CY`YK_rCCuH^1Drx|J&Fp@DfHst=cu@Nbw=Ix+@kP#4`)f75_ut!sUmaq{d@P#Tx zp7u_kcsO(HYN$0tkmMZI)!97z@qEvz%J5g5Sdx=&AlEu2%UybU!EaMf4sdFMpC_+J zV?N}p1J;~a)*vJaPJIM&J@TGEc~=1-S9l;ejYdc_zOs2K@F&wNBRLN#RA<0(ug+8} z0oGE4Y>5{#Z=@`Yej+FJ$JE|@^bL%*$_$6v@Egw2D^^2}ry|h3{Gvpq${CDf0MU+A z-UG`^e7mPh;P5Y`o*@gdgA&4*2c11V3jaI)2aI?B-@c}6j@gke*VWmJ;f&OEl5(S5dm|>oTEx=>^COpcv+HVa z@R)pyR)ASO#WL$Bsx8z&qq+P5LG?qga9OM;qQYRW`Ri&C@-oYA}xD;$289M32;h{#Wz+^4jS zgFaA(5y(2UTqe(4?M*z!7TV6N_{qGLyo)1q&!b(OE^Ujq)<;E!1ytt57(%ybf;5-UZ1X#=C7%Rw3iCYT7*v& zyIkpoy29BfOA2TaIC~(aJt-0KchY++J9@oJoB1WO4!}DU9EXf9E6R{;U)P~#X)ETc8zH{1dReN}6 z{CBN;PtoAnIPmGz!}|bx0kSKB&K36H+{F%^2J*Y*SekS#ioau6<#`~-)V6WxMSm!ET z=&#a633_UJIuLqI4i1tsB3JCdag>Qzq{GPlfX1{T1$+ zXQn`|_zk{RIJij}Tq0%m$PDWz&;A}?3hb#1koqOW9DzK&5MtKY9yxYOq*6z0Y7QM@ zw&Z+T0EiRHr!qFwqQk75;Vaa5gFLi{S_@U4<{E2hWkSc&ycCp%HaSj zr?`AeC_kM(PgG5` z5nBZd&q&o2R!{q|6uYF<)sK0)9*|z^NATp8`sfiBs0O;KN)PR!oI0)@Kv(l8Pp>6~ zx_m(@^{^>;lwV>`ZlSJHPu|z)^7?OJcxHOOPcKyZ!O(ZHAY?!d?+IATI#2|ql%he} zhPl&eFVs%Y%wb>l;ayO$M1jaj7}|xP*pZl9n+<2A=$>^b8K~fSB=Bgdsj>jp(+I&+ z*EI8v=-KYoYT2YnIcHfs$Gcc1?698BAAH5{2ty~hW?$x@5<6ve#dDpgJe-0D#6?g6 zbUuCYl#a0N(0V8ZXG~?eF%FtX3HS9$+1XpJuM&q92%#rHMAxR?t8q52rr@!EXn8uc z;Wd>EFf;IEgEF32F+HE0)M%m15_#DNts3{hs#idsFj5!aKpX@u%zv{S7;oEEkLf|d*EiN2RokM@Vd4ft?48g;6_ ziYM>fC}Z}t#j+2FUSg=jffwqk9+2m(f*tOO;Nd&7VC`fE$bhS!3y9e@ENu^`t>ciQ z0br=p+W3AV5~8GO?cu76Ou)0YIWqp4b%00;yfK~-y;8!ccyD>b8U+Q=4eWY|j*xHn z7Y~>AQcnMeQ(J96ToQ$&OQ~&6ZX#)SVq)7a>u{uH?`Sz3R@)E9UdVB^2TnbiAK1b2 z4=1`>syau~50WKqYX~rHNb&Kc=ktd=g!7|+$s0)s;a!B7olu(}IVA&xeBh|CToXRm zA?y$cPCBPE zC0l7?Ok$M_RSO(;fK0fy6_*@i(#nX#!hOb(r5j=;-BHM1iJC-G6{paKdg(Ti9zj6x)7TjE0IZ+ z)x~4MfmYJ=7Oc-vv>u4Y8I3gr?js{|a9`^t=Tji9CToc!v8Q9+tyNp?>|-%4)gAia zd0FvjXY(PHcwa#7*rM@`l@IAtivV~KuIm{D4b_Jk=VP1Aun?R6zEN1MeO@2V~cnKbli4F-9tqVyPo|8J@ z@I=HC!q8%!<)RV(S;EXM`A~8DVqanuYc2QzbI7 zFZO+~a~P;{m6UQUc;GuTM@Q+){hV`dciNwgZMvsIeyjvuecuMyxssl#GB^m{)eT5( z0CI;Sq>k%8Y7f1?iEH_fw2u!`3}sCNYSX3 zjFOM1RSsUT?;}UdVoUgIgbf~zBBhN!g}l+FDVizNA_sCh52q!b9x>0HS(M@rylejl?SB0YHFQ`YRAgpt&9DLd9*UB|@eJB6u_XJZt21k8LI zzQs-@RwA%)+1S1x$Q~5pKO<{mg=L z#wSI8m?M(MUWKfME=UKy*b@A!5H_X%Hm@eKuOQyD{>9Anbk+B?3a(QdZ8gr-Baw4- z{1kPV0V_0+eoP2$!v2r}lmJ6DDZ6>0HY?95jlL;?E@@y~B{fh0ckQ3`K)y6@NS+?9 z)|F`Vxr}S90EASrA7Ct&tFrMFOpM$+7p_Q1&_{bV9XIP<`4>&b|S#fTmgn%puf>ta=&12Vy4zo5; zf=_CJZ3n`FyO%amn76XXmB;vWu$34D~mIw}7SPR5+b^?TNV}?M(yvb?1KS*Uc%mrTxtPcT_J3vwlq&)&b6FK<} z)JDgnTZU9AfwHB7o4-MN$^l57VW+LG17RatHaR^g5SmA?@KG9!Y{9`v#^VWk^H2qs zz4xRHf$0%F1@^9>R>&HG_3P!xHGX-j+iG1473d2qYKz^?c^)Kev;(X?8qttLv)!BO z`y5AYgC4C>%2?BwgZH#a+cRLmXd_q7KZI8LIkVce9*sAxp`ICgU~$fabFF4+VAT#F zb&+1_-+KzpcFE%h?0Ka|bbU7-b$9Yy#eK+IKLuaZGa$5tl-&~$I)&!~QhGe2pr-<| zR?`|VZ4L0g0_!iQgha>ais#ho6gec$nC)bBG2a_&r~g3cAkqasT~~CK99T3%_*|u& zu#tz?q;k$WD}5RAvy^xQ9i}GtJ&y*jo(n;X9*Xor<+fR=Aw!mAV2V#*jkTxTPH-Xlp zsR@UXEHGG7^vzOsdSKdKR@ho-Ir-(fGCp66gCi>$%{oSWM?Ix84doK1Qm5TiieinrX^NK+K3M+z~Qn z0ya(;LK}!#&0Pw_?4=wofWMSF_K$s14o9I5{e)w{ZGNnsVBiQI6zK>l8*q3*DI@2z z4%R_Ogjnx9$28B3s7>@EgoZ#DSVu$qp{;2WDVhSt^<9YlrBI^|ZZ@5vE;c~wsBn^a z7aTh4xdS;*p@r;|c*L6MD|ReJdN6A$C03lH)f+AK$3{ft+UW)`QZi-bV$Mhct+xm6 zTZ?Pjiad;|j+Sh&crOzE&vK$&*|DO*Ho;*W2IXss%8kvD}bp&$7d_I)= zJS-5p^?XWyGGKk=8f{X{>U6F9x%A`dz@;9(oO+7|>m#UPv@JxB zwo@y>Ua0!60A~s|o}>)jN7GjdkA8rKLLk3prF_ZRrzJ`?Kbampd`44G_Bp&4csOH< zOrZd)K9`2wM~n`94L{En|+98KWT`bBled>@QXhZ%Zk$m??AsDGi_x z_n2$J_si+;-t1KO=lToXFLgiOP27PNzz^-Bo5C~X>(=k|#PL#k!dvn&U1A-c z_qBfe9y-=WDV)y7?(;S3rF>bNU6uO{dPe5^;xVA`!9dW?tn;)p0vys)Bu zPI!E9mP$yS&!0;oohW>k0e(Z^K!#>HBplIk^6lP@6XCnQiz$cweDGTnobQQpJI@Ek z9d9K)cW<@laeA)Q1kR*~R&zcdDxUc9w*+$~ZO6a556cMC7!lD(@5KGj2EtgN8urb{ z8DM@m`o>N=gRjVNO}7>wDZD!;9Tc>!Msv$xbghf!e02azXYnA9X=_ZZy4`y z0Sp|1UJSzx-S8Q36<~ZE6?hR&?Pk#?xbbL_N0_?3n{khg`t5djYb>hsLrql(^XQ?4 zu)gG&&wQ``x8n@Jk27(UhZq({Y}8Vw`%F!plS`ilrdAUX`|06+HR{4$MQjr5YRZG) zj8=&w5Ldpf|H6Thjz5?2)$u0+Iib_3qkyqh@28Q=BxDG8{1Ewxb_?hM+^UxO{JU1 z;G^0qJnIBMpMpu_YveIMoMJrPJ^Y>89;|f~hw$CC@&pBq7>)J*L!n}vuA{f03?pb~ zeVDVK2;V$|{h(bYdO}~Jw{elE9==(Q zJCF;vDF3N(E^RI!Oq^&8Tfz8sr1^UMTQ<*bb04X9;I-8I4r8tU`y&|~FM!Y2YvNG} z4n0021cmKxYGl72aokvCm8{3_J(ic4Fma9-#yzwx2{&Q=tM^8Lz#7v;gvoY4InG*+ z#Mje)D{(Oj>e}6Pq=ahFgr~2SWc7b#DcMXan&+t@ONO$>l5p_uIq`W%YIPXq`^IvyA(oKB+`CrVB zWxTnFTCNUPlKY7?0gLQeW09i_9WRAw^$&C4@IaSD`!@$O9umDdzxMRz)K_b*fljq! zNXwBh0=ab${9;t2^_9nMzg7UHo5v)MB4B(xDdXR2-0>bh8b;B}tIu`ZuJ{Ehx3egN zqY>D#JTvkyrpH&KtkJ!m7dRUa+HBwGTF+6H4Kv_q9v(T8sCwm zA6eeKQe^YG7ySE(Szq^pukUPz~O5*_k`+t_Od93wkAe*Bp zDSs_-G&jk)F@GzY`EGab|CpyHuO_Q@7PHa*DBM>a>ke^-C>4==OV!n4ii zSARFYZPd|Mur*aUWV*Ki)q*UbcH9uYB&m(GzW6Nm~thx_*wW4Bm4F)%@74qTGX#4nOtDnO1u` z=ld%s{QbtU*38*OK^ z<>6gkzjNQ7Q~3Kh>*kb=pUeL4PPM)lDZiTjy?(E6z?Pa%M)48 zd6fNl&a6)65zL3XN4t0CA1`{mBY%{=Bl-Js$LEp!dq>ja`MI(O5?$RN{DW2h9eHxl ze!4C9cipy!Qr>NOD1Q&<@4>E{r5_)d7wWd%pFX>7?@0S@iu%dzB4xbv(Zh_~-9F&c z*H|v~rtS|7?@awiQj>qd?O==sJ=7I7sYfaOI;&7Og4631PY^=U!x_KZ1{dguS*KcNciNKy9yyvS_RORkx1t{EZp6fWb!S9*gk{+K_n7No@# z@}NEA(1zO3aG$NJoIW2c+G*YGcr>uH7s{+^_Gy{1b1mLJkRH=>4>$fllzBf={CsEn zdMN!+r@{38NH9oVDjbK_1!dlpIv#wa2YL2j@e$oBKJ9oY<39pFcG2eH{81Bb6~}fU z4SPqjjEamOO3j*OaX6gbMgGykcDo;_a%g^__!bIM{%Ajw0Y>)fp%QtR`Gl9HZ5g?z zF>Qt5;G^jqJ;5%}*++9tdIvKa{xM@D&Fs4L2>PD2Y7>Qm`%5Xv?RHkUg_(;qN=o@G>LMo8OZ^4yJ@Xv!9_Hw+YOK5Cfq_-LQz^% zAMB&yI(%2x>G7SxQI}bz&(y_Q9!f1nek3)}WGH6-$OYb`Y1E}2FjA#eX42D&#K1j} zHsRiGURI$uYGb|WwKNNhAeXW4;Pv!V+2Q|0_xAkjew+^}@Uh^AY32KJ-n5h&EuXqu z@>bKMyfTTG8(t>jyn~pMy(Lfad+y`wKt6xVdurVqiL%dh?~m_nC;r@B=- z*xvENr_zfr;PHI=rQF}+t%h^yY2uFOQ*(GtyZg{HDVq-!d^o{VVc&4$X#!q6 zP)!*)UKQ}OOuSV=B+W}tP{$+o>-+Il0$zXj6)9fn>wfU58q3c$)7DY=wVqp)I8Zwd$0yus81_-tz&2b^j!YXd!GJ3nONac>}7q8qgBdV zgTAopOJwk6ME$+Du5+umbE3a*e=YrMv)u9O9(*nJpAGfc5Z)whMtp&0;%e;jQs&V8 zt9H)a?3h;;eJMvo31}fwy&U*dat}ri2YWseFV$YB%?P`F0*$#n9XucX>87~To0r6Av28vW z0fqeBTX*|P%G>9jx;J98oTKvTr}pMv+RqL;%TqTOvl{!M5#V}fc=g{OsKMTn=DhOF zdt~i*n&k`le)ew*r!zwR|G;OoVXA-v|dfitD{MWW|p zCWkV~wk$mz29<+Y{qM#n;)pUAHP9d@vet zwfF1T3ZBZJVCLi7$hBYJy1Yqx^~e8@AN##0p8C|DuYB%r{;!MIx-EG#ee3+h#PqgY zX72)=DR6&Xe|GD9H+u|lZn3V{w$E>wn3u*in-4iL8E?~>{ z-Ch1Bc1}$+)KqHSJF&alkpNU^YMv2xcYVo3I-lO%ZJ)A-`EF)Mw`FGT`olAO_iSgN zxfiDHoS3+$n>)L0XNY+h*VR9%>+06Pzgp-5=gGf`%b7y{_jUcPx_)Zg)Wq!d|FA9E zwz@WT-^9eko%eJp0Y}O275sYzf3e^%PIX&n_-}g%%70b#<>|X-SO0A&_&PHJ+-)yk z-Z7sUu6{iE?Oj;?`P;YOHTQUOliOz|w@<>t-5uhZj0h(qrtl>7U(B@c=^~xoG^E8n z-OeuTqbY3bK}Y{ek^iM4?qKy+dH?o z{jS-o>F)N7KH#@@6O(&F>fGud?t!|wOS>|DYqe#2^4;Xz^{4%R*VLA|>wo0`x7|6h z<(@9=<6lM&)~U>`{!J!2IkD$WyYHNsoJ?;oWjaY-M7gNB`Zu9^c5Pcx{Vis*c6-tO zt-^dGl!m3d3iXXbyLRg6wE z$C>bZdRsS%1fk%o(`m7`I=8m4J;0f{^SeT;EixNa;V-A|nq9khV(x7v;y}HK{}K_; zuKp(ZsSN*CNIAL#WxugC6OBe!8s05NqUrSRo-eU3#$LO-=-6YE>Anf+E;u~v=z&nu(WxFSD3m80Bw|f$;3AP_2E$8l>>}S$Co5&o~$s|d7nj1~E zRp=P#KlcMw@Bg{)eT<|nkhJCY)co76l623Ofv7Dr5cRiPC2IE;$l5YS))r}~B;Amk ztln;Pqu%Hu+13SOxN#ejzj534J14tv4ymnvac=eZ8t~<+^rqM&vbr%}wck|8Ju`*O z9KSues}=1j2|OM}D%FXZ?c5S~GWWi@wI{3SsR40hN7Q}o(Ydvsn#pVek&x2;+WzVI z)Y;WPo1WYVkfEK|K$h%Y&r@#LY4N%RmTba8O7H>G&7wfEv|oP z+tlRVZSm`qGt=nnwwdX|Y}=M^kt8z}(e9aB{aYwW>zM5BZhCw4dhfQ9Yi8S98_9Ht z*>-zuB9!$du>&;^8{ZRUtu)U2`bX(-w!>lr@5WP;#8cvs5tU@MW5QG1EO$Q(FShy>MH%Exu}T znm>!?cTR2HmLayyt1#Ta(P?$OZE8yp+wYv{GNs*9Tj$n(DKtg5 zk7ZhK$p59BzqFWhk}8^F+wM!H(N?HTcU$; zno)x3nc3@~LBpc%+c;stWHa`0-ZZTZMeQkl6U_ zjVBBK>4JZ{;G+c}E%->I?4d#)DdgJyr6td7Ln0dwkxO?R)o3ZlB(lM8Ti1^MBKK zN=jcx?1U`tVeRAPtUfun_UqGl&tIQg`{dRs%y)hws`P2xC$>Ngo9how-8OgQGtriV z6Vd+ZNsM7zpH+Y3AL1E)GtFtH4o}Z)-5Jf?$--WmOoTMIhPq_9Xx!eJEwk5OEaE@c zvy>%Z_QvOK?~QkE?bCbrOz)c4eI-{RE)nmitJ&{V_1`J@ckd{v#JqlEa_^qGHRb!e zRYrh0d*ioaIeRMq+f50!R>5z#AmIGW9{t0&S&W-oE-PYHjfa?9JMT2k(=fM}^`aw1bRXcdRr!Hq)t|lb zCj<=>QO_RQRZ1fE_Nwup`jBB)>NGf^|K#mevtjP2x?dkH^S7t=kW2k7cU1iWCzW3g zCAZ0N-6$#yGC?&uT>_6Us>a|Y`zs@|g(O>8vcEb;c7r9kk(j+WR z-x}jngQcnEr0Fl#@oC6O(~wUjb5FM?QN!F~%=g9@LrT06>&Ko+fM9BOG+A*8Sk@ah zE$HVW@n@HHFxLv=gGp3D-Lx37q#`BY(1(S|5wyeLh%>5OZDJ zSsTMb(^~;=ozlbAB>Re=rmt!GW9AJxSHL>d-torwbnBX7H;h{ivPqjaG>S``TYGWu zo|y#kW1YvhgvAVdAI>D@vb{D!L6@g_F}^#|@_lUjs?N;RWUTN{v+u7fCYj6+^buP> za-(Wz!o0+jU&=UBJGUfi%RX$UL?yF#ChJ^c>YEkp-@J`wVo%Nj;^+5_T;L~g|7#D| zqVkEkwNF%oH{n}vR=j_+{Cci*bf?ZYeOHA$3;BkE-%#*;!Sei66js3Z~wa=y5+}caTQvY#sZZTkVJ*`B$i$lSSg?cf^KD7AS zQ1G=X_*%B4+3TP6~=ZUn7`D~abW@_6sxAr$XdaJ8A zyhe&>(!)zLW0ozSO1!^MK*YS`fnK_uL4Us-SM2|e`9%EXkv?5~&30fdXE`*pvoe4=R4G zmKYE5beh+*El#k?IoI6vLuFiO`p${wG{QuFd{b+Y$Twz1o4CB3;2GB~!uGJ{)tnb{OJ2Rj2Yp=Fh}Q=7GyIXwzV zFE{geS@U>#sKJ?WmZPD@wA)8_ETV9R^W-E^wOy@F*EnMFbYeyq)E|2-vxwSg|yt({FgyllVD*Nfmq?DGoXAxnc zt7WiC+hY7B_6jeK3}JF-BFNq-?p#-ro^Ibcs+XMWSac%V6QYjAW6!PqMP2`vgQFZH z{l(ncUr%%Tc=z05J73Ac5ld{&g>nM%w%L!)9?LnzSYUECZeZ?xYMW`|gZCvinf>U_ z`z9wjq`vc>i5zmKY0ju&?+bnIKg8QjWX0Z2$E&|?-%-23IU@se{fm9oFaF5Xj_J8a za%w%32H$Gy?`2hd}78^&d-Kwmb}#56-E>=d;QDtGP`13C~38_ z@^7RvsOk{D^gU{%Wbz^{4kT<<*6@O zA!9fM$Ml(XPA(|k)#kcu_WH|2YagctQ>&&E^5^E>Hg{5iPo?B!j<0)3 z|D^}V9;C9w)JbwX(~VJ#9n@0HsqWapYnYlN>^QrKAmK&@>(j~4*Ra1gxB5Hk4fiL2 zelzA1C=-tX=g4P-0sIXM@96cRYUV)q!Kvv?;j5@zw6C4f_VwfEIkD|K>T`21w6S_b zBcjjl9*xi=W^cU7HG{r>yu|d?jUzoC4>cOdOiX}?{>D5G$EmfPb0If38q7wsH#i9s z?w#q4`RGJ>-4>)_{ZFizKYddaPc;8sXhvrJbUhXT-t-c&fj0LTZ6g+?m{_;pOS6`mJ@yNQ| zyJj%PHO{OylJe7z@U77Z-|9#BRx_ahj_|Fa&u`7%czj*%$uXjz`XRJr?V(WFXlr99 zEsrp?4XsB;xs={GQaoh#5x z&v)S28$UmtJA#QhCMU-_d*6LIz@1x*vrFvNPnX=UhkgQ<&sRF`ET~i^wTetPKM|mK zwKhG>X?pg?2ij~t;D&40P?{NkV2qN5^7d=l&gGn{?~C+LTtD4&EB|rcWKy@?0+xMu3ang zlX)QvY|dAHHL8+5NQ~~r-E%kgqEKtsa>pSnZnnu414c`TmoN7$AVh=(6;TR+;12Pf zJx`*9_WT3*q%~;I|J4d`;K%CMXK$?TE(531E7Z6t3y!45tF7x}Ecmr`Ecmtir)~=w zM_|E6=hoKbg03#vjH(k1Jh%3-S~p?MzhR0TR?>!Jx=}4Mqvmy1H_F{rEEuwOllA8D ztcZ12Y3*ag%xjmG=jUP3j{CsvK@cPERGL9L)GFv|JUzKE!#FZ93rUp6V zyv#t8Gk5lO)N943Mk=5)Z{J-ymI+pm!}0dq3wM-f7%&`we>S_Xb^!i{UZ)4l?2X^avfs)doZ1Q5 z10tjkejs4uT1#Vk18rf$?+&@Rzp-3=#qYLl%cnW^OZZQ`U5ALdO@>^E(~ICZ!LsKs z2SLafSCzUGgO7N{4X#S%N-dsoZ2?A>VWHU9Qpyof_ikgOmny-(jSx3r%#>ijZ zI5r5z{>J99MKSibZZ&p8GWK8Gdh7ws*nhckY!Hn7*PF){#n>&#T_=TxWbEM)g>~~D z&~M2KUaC=R@k`l~YV)N}$z;*mJ2TlfO1<_>H#47}z1c+>2@Ht-K2B(tK0+FHQ*aZe zxzvBtouf@n;YKGG{US(@xyd~pR{b(iLlVi~= zt|=Q<=iuI81o;^|#ZbmuylFhMXFM}MTf}?@l`K12-|$Dq>;Bl*smbh7bE3N^$D$7S zIhnk1!27a?n4bC3S{XlAyYjT?cjsT|nONsnUou8}k=tWmfa6Ijn)yO3ziNCTyP6V! z^&|WeLEpMLF6(}2_U1#JnV-xN%$KG!IO`nx!Ci@rlK1Z6c)dvUZ*;_kBxGA z;Gh9&*zpN1_hPy}n|rTmgIKQ5z5xc^__2!a)#0eQM*$ogj_La9^dJ1n?*H!(@BQ3{rp-=3cN>^pz?=!ZZ1*w#Eo z*=?QRGRb8N7my#=_~OFf_sbLS-Z;SD?ahd-c_pWtSe^KvC%!!Ke}B3AxvTr@;d36{ z=A{L4d}7_lNXhZ~3aO973w^l9wO_&j>+d`tueyA`gNNgJea12#T;{`?{3Hmi_NR=; z@%ey?Ft2y`2`lsMk$iJQD}L$hWc}(4CA1=?Hly-TJo(`R7vy;Oy^RD#!*AUP^WdzI z58z7^57G1VGLL^FO6bbhH42uTUSU4J_gJap0u9br5mc*K=oYZT(Kav*-k9k~GeLmxo=7Ui+RK_~Rt z4jrQ07r20Uz?$DE-k+X)T?b7v_mP_Y>B{-S4fsKCcufLbgI9iP*Izp(hw&(NU}plA zyyC$Oh2#o2KcK-&7d~=NxxbJM#H$Frl7U8>Z<^yv3P`~|S2CjpGfUdS3FOv(8Y>PU!>t>&VtpKb#L&J_C9zv@t*O=wyT2i+B5j zJD2j|7q)?U+P_&BIk+ai^#Rsjqy*1PcF2%dna+eK)Muu=48UA@84*et2^gNBLBLqE zzm0Bw@NxWn0pS+1=QgrhNzGAdLc}A9t!00?FG-6N4jGpDI^;tED|?G_kf0x zkR|&5SY&{t=?4hy5yIEWXYkUE<)DGoa2*F~PPYij5MJas971Xx(MWN&09mt!QuS2N5P3u*SLLx?nQVi_+D_;3Q7kOU2LfUecJkr3f@zVC?uTg^iNdEEK7jw~< znxhXPXaT}=(;G0Olfpw%=r>)g6q`W0;P~Vssr}*ItZN+5V7O;3Vu4ndAHow$Jm}c? z&sKxgUKvn}*RXw^&m3@@$HnT07Z_Vxw4HkJa;b-i5ia#Gv5e(n@Py=%zA1g%5(zXu zv5K}i+ESW$>791I1t^5y#J(H}3AJ8W5!uR653V~lQgrnMkHs9wpF0tBo*X^cBR|fH z#?T8Xl)*!BXc6O58=FHCzysIt5*a-(m@CD_CCLh2N|b#L7bO01SSMUrsl7 zrBBTxDf&{%&;*1gKnvbY4!YVZdtf|~<*W!oZMKv#QU0O^r0@^*;Uq3 zq8jF64!v+J@~qINma}h>pZu1ll;LG9#fqt|e!6N8BR4*~Zp%UDfJEC~P}?Hs{>TzO z%3;q)v~j;_+*0U3GpGSAY9ElRnAlUrIk0evRG9$jPl1}Y0AHzD0ez%qs*kcYdn_!A zp3n}s1caqvJJ6sXC#Ten1<-OJtP+{SdvQiKVj5pu_0e>HUD@BeHHV)SBF1p`=v`Zl zXkkQatu{-f2A`3KlEZRnPZYoks~nL5xaE|#IFCHkBO$bl9JRG_a)a+C=lVchyrkYq zt3c=$t{CaeYk<57{SFj|J3&Dl>op8$t7w_Z4{z`Cr>+6gbIgOqFwkDvkkN_asY z-k4{Gwx%C`A6fjlK4oOqCb9Y*`&DbC8j0YosKr?LedJFLn{hPu*UFCh!ZCD)Pry5S zQhg~rB8Scc*#mJqGGI(ka7gv`Pze3-qV>jX$lC{g-_K4^v+a|G;UXGnFX(`?Vdl&V ziAXUzVg5vB(`2hGo8FK^4y3FTcy)7V+d_J99L`#ru22igo4qu>adfyyJ9>eO{_;9G zB5~%&TFBmto`F4+!N$pBX|8>yoDsqUa%g3PiL;duc8@=_Zz5KEZmG6_PtkYLlUjyU z@!XH61w5lCVMY>Su1M9~l}fQYv;pqRF*LRH#5#`L!9kf2IyUIHei;n2Cxv=rGE#g3 zsn(CQ=?mWI-$;!&glO%F&Z$7xQWpxL`(VusISQd$Ko>*fwH~_Ar`RNA*jFoM{^F?3 zdb(68GD2En;T-ZI=l+lsjV5JYO6y?R0Ft4E4_+KhEq4MyZAW@Ay|XS{NjZB;>2L86 z++b$piBi!Wb8SCh&hzD=ls%T3M>(Ux3qG7e3eVxoxgPecK|K0_Ws`#z)(&92gewm@ zY=n4080w{)5^Vcm$we&`#u9)Q`YSU+qr|}{X+sa>E)e6}n{l3$p&zblwD$8`PA9*=L;j)*z*-|P`zv%F7~Y{%K=_`9MU%k}zLgU8Q=CL1$%A!Q z2G1u%Y<@639P6*nm~pKQghrxc)FaQx*baO>m{RnM)dm><2Ms_c(?;&-vy`~ByHh`y z9^7NW_2#`=EAr5ZC&R}Gov+y)%vq49213f8I((M1$q{(iLt54}k23ZV&XXM0Z4dZ$ z;}_b%Yhr^|N{@O1N}->90KDKdR~z?Sx8Y3HS8V5M_~jZe>^dUc` zB@A*YtB;gYGbAs?(UHX_C2UFv`A85x1YvzkH& z5cX)Q&k{C*1inzE$kX2G6Ax#OT@AH{2$Gzmx;mTpoJ<&h#a$6{(hcNVr)1xqQhL!^ z$T4e9O|TB~dNk%kj=s1q^r=|ZAS6kd`UvEDgeS9>s{kdg@IY|d$mwE1cp2>n{K>Rr zBrsE%8F;@q~^-1Op$zw_fEhdFZA@TZQ(awk4M`jv7VT)zm=u zPWP#D2ICk&v?G=G!15B`?wSG)|3b8*h|$z-1H@tF~;;k&B`xMS3^ zQV{gHcPEvzdQ3H*T`ql*GCJd__dv>1ESzjL&h<6XA$d)0;sWcoyEo+UbI41$Nev6Y zBEiB-Bb+8@a&iew=~CT(q?!q&_ho1@foAz(O4IpaVn zw0Y$O0*GCG^9ba`HXC{(W$oM<7@Z_V`d3p|82QtZ9J3=`uB)>b!x^dTB;`iA_C`#E zZxT-r%#Ykkf3-Jw47Nopz^tBPne`LZ7HXi;+}YHjA9{t$LY{~U`-3c&z)$_h6R|1z z`$VWS+5sZoBqfSs=D^B`k9}ctM7O8<66OXLFY!cR_-U$d5tc4W(JF98^Fpj}_+4^5 zqtGBCKXG!O(l!qIKpB#MB6zq)%KZebog8*U3f|Ol(0X(hioko%mzgxZMlsZxkRwJB4hN!UGGj5+PICJ`t)G>yw(U_)n$`S(Ba*Eu`!np+Oi;YB@XtSWepf zFsFA6tcxvBinl(~L&%XHz|Ma_Yakpb7k&_(gSif zh3|N$Yn7+xLmAb5IWY3^>h7)O+UkF(=EVGfg@Wc^goBHqO@Un&hRY zhiwF63ua9VwH1z-Q*V(Uy*K^?L%n{(vZboidGA`w9 zcKAws=Ajw~-WmU0>)ul|cs34vI`!~Az+O3ndQaNIY4-@`m>UqfNk7EUX#661oHGkh*@J5 zv%Oxo`F1Ishcf!kb&2B}ZVe6TfI%6W84 z4yt98pH4p~swUcqt%8MTq-qMQr+rw8T~g}m$2?sRNU!xHc=Aep^au-713ihA9@;}W zbzD1uuI5jkUP}sfEA^pfYziKotlUCfrT*#aof1Fk49~z3xtLz4^n;=AVnN7&67LCE z%Q{d5rIeyU+J?E)X)n}H&&*+8_TgPnutb69`+nG;o~f2t9CNV7FdNQD8}&pCXk4R$ z=aHz7mYOOHU_FfxJatVo?}(fovG*4@wB#&{=Xe*ZgdNt?`9ph%#Dt*}T(d88@EAK~ zb;Wa?s63p42gF5C0dzin@sy6R?b^LLaM&u61~$e)^UPhY6wX<$ucD0k*q5;tIHGG) z@6|XPS5xrVKeRlZws=h?1I!FO*`SOkR!q+)CpB6qvqWC@L950+u<8|%Cydm^HxLIw z3pt}zU}7KV4UAN^Z=a4LhrGDLO`+x$pUzn9Q|y;H!Dq1Wofr`qsTy;^S70bMPB(|X zSr?zx^n!ZuiaO4onJHNy=0Zwu_y}?pLo+Uc0}w(@LJU2B&?OuquLGrOz2@o@P)iu3j}wNS+im8v%}F-!F$iW z$?95aoykv9KsR&(E%xbh^akp{Dd{T((?36Bfu+g`Vb`l?(wh3DL>#0@oD`2q8%H9~ z%vc>MMV4}z9Cu}iuYkRW55(A{?b@F92FHw*D>=rHiYsXahBN19G72#lsTT4~IH*?x zQjdWa17Ao@>cVC13z$e8?GcuLXpA+{fuTQikb2ajzterLQQ;b6U(6NVfG2WrSXU@< zKM2HE^|7nN83~Oi{a_$C35=cNX@SunC1b8}lU&nRV6;=MJ)9P{0fLqb>50CVQjhkB z!wvYr7yVE5SMh2ztteymw8gRyhhAc+!+{s-sveN%tb!fxiQwTovtaF{7i7RyO#@k~(v>{c!9Besi@4 zPCc0)*unA-C%RgyI!DqEk|k|x2rz9(@$sbR^M^cy7b`WA0K;hKdmOV9*XBn~$p9fA zI4UgHgwORjyqXkox^S(qtSHnnHV`_~V;b+p(pp+te0QPh;TIhhUQrjVYvZHk&QE=Z z^G8w&y{7Jb#iD^ko%Bo(Ug47Tg5y3MbQqUo)4=W7HQ4H3!~5AxYt1HeAq3pI=7bSq+Fm57P&qTM*nZQBjah68~ijfaTG0A zy&+1~+tAiKO-D-3NUl+e++C+AGd9(R$)Qus5qP<%W_IM@B$1FgsDJ`W^dgoFqYz2j zmbj4lTOVC$b(eyL1FfX#Em)tUXgv^(Ga73M+($;_;J(&P&Zj_HO`;=5Vo%4sTdTI( z*~em9syp<-^RnX6&gMfX@xFlEu|?w>D<9IQ7Av7M_gNtIlXCq(8iz(;A*9QFs;07L zx5$Zd_kcjl>DM-%tAlH6O=~-Fld|Qa8E&-IABf106wdhOg4)c^5)MKA&!z-_q-@L~ zHK;QOU*HZo<0`e9JTpF5CA1gwkxJ#-v+0{NaY})Grv%F}cd}2M`l zZPaHlo~;4FM^ZT`#45SiV_BoX!qxeLxj8(NVY{(NV%i)!E z@u;nTb`Aqou98xY1rK~@=IAJWxu0{+?N0l%u}$|>$d8r4tMA(YOWFV5-nYlbb)EU0 z%a=%z8j~Z*ma`;xs!dv>mKjpi(^VWxq+~G>WvxirabiOn&RmKU&4Zd5%3{|BW@POG z=^{WDh`SEp0NzDhthZ6&q8nfhIKZ~3fi;k#8^A@kg#-AX0Q*Ob!a!3bK(_7g_kH)= zdEI$X98#1*O1$@+@0|0U?|iTGoyQFMUXn6$kZ_&dm{M(EN>?bFQXQupu1bAcB1`B? zloR9vEsj>H*3Yy?ikebc>3-Tp@I~ierbr+0F{LX=ruDQ-;nWX}$yq`lt8cCmIRe5s zW{tD?);Ukhbl;Uw@{^jxl-jA?U%Lnhy^2yvf6KOP$)}Eyt(i+h*BHSuofV19;Tbpj z)U}$X8EtTWVUBYn-}F9w(>}C~e)c@=L8&oXp7-8LD`B(^eJkIY=7{*FM&;1Us+S`# zxb9;aV-{^m{%V9xI5moIwo#wLyhfM$re^u`MZKraV+v8?DPSg4@d>q zOlp5jF#62({?HXDX{X1a=5Yk%2K^ORAez#?Cl3twDmWXp2~qK)fuj|Ro9uKji_Zaryi6kY96tYk4l3^wuF(B?2k9- zHBYL@Wj%XR88S_b)KjMQR8Xyua|Eqly&Q9vU%IPnYpsF`>I-L78@p>x_k%R8(GJsU zj~dZ1N6pr?sro+cN41Ugs5L5OoYOc4J=5mf-T`Bp+Q=vOKQxu|#?0ByV$^t3Yp9-S z>_Lmuad2PDS{k9M9Zab%5-aiRnS!-l=II9%b545H`Ca2tU7gHH+(&tqHDF7ww>1v1JF6)(j~;bp z!W4Co(q;OpJgKY95lYR_^fh^NhmCpins4Qt*2#Hgl%JL|9-$7iCeJ;@>D5aw*l?`F^f=U^4de=egP)9Vy`A+vS zHO~>THlrU+QA0=J01B2Kd%q$w|h$gi&X$ zb<_4O29*pUj9^)l`bs-iiqwNCT&2VrXI`+88uiB-5iw_XH<+fB^v#)zW2Pji^@@S# z)(W%QN_l8ZH7~NE#j`H`8zT};u@xaIQTn@i)KcHWH|tXNm%tm2>XJ}JuG0HPktb!! z4Na>~xKg60n1plfM`>jRu9izUHIHx36^t4*tx+S>^fkIq${f8mwKpa8?027ON#28L zFVtYdui=-vnU);q3rdS6d0^wXc&~xBuA|h?qG`!8sMGoX5@^t!XHw1_Jr^TerfG|O z>+Hys&X|`#sosZWin?_PB^oC&rFnWB&2g8H6tRRe1FeraOPf+mf3#|z10LNS$a`u2 zA^DV~)km;~M%$VqMs25BL1kP0YX^kgYM%|~T=LAmuAe0m`rQc?y@?}nOYKclU zE49dHYO3qyXd|po&gh#mC0&H&q)$@CoI=S3;wLOGaHX5pta|qxTJf&2&T7mtQn$1- zmq$+V>HLrZHm*rtmbYp$uG%_y*D*o%Q!}s zX^ckcXfEZwRrXoQ(c7|=v6#L|2U98yrfztURlwHu& zd8BFc`qoiVV--RVz!GW@-;@BKx(B3bt;v~N^OOqf(2tWJOj}NJbXq?rI4BR&VqxSd z<;%9Ti|0i{7UiuwvxKmJ#m%^Y6l#3Hw{nkf(!sZmfhk&u!gQRpD9W5P(Q9gooL25q zOO)?SsaDvP&T7frFxucMY)GE>C$b^LO)d}mCU?v&Gx zZu;7oes%hi>iiC8To$`y#SI)>3u5giYlc z(?j2tFvGR|o>JoIMtI@Tc96wOPOBXq0E~>TXPnjPz}2Ny5E?0 z=D%V7!0Z>$ve;}6xhIW6Ig>J~P`MP5@^dpR4enFDA-@HIERA|}RrXts;Z^gJP~Lc~)J%=e z@+KlT;pmlYJd-q&W(?o@LLMc-*_Q&jVJWk8SJK4UKx1lcZ|SP!D1Eh_)9Jl8a*}+f z_S<_stxJ$GB4vKi95zP+Y37`$Q4a5j*)>m)EUR&?RhIR*M*Y%RU%%<5xlAkhN6G2z zqW2d$&(p`!$E;$^)MW11aURqNAZT=qrsyUpbK1&&Q$D^2#jez|>-ekn&iY$^;+*`` zI4p=)beeRVl{~tC?Rj#OEqW51Yh=^w@!2KW)Ou^inWde;jhF1&Et?wEE^mENW)NM0 ztk?I{^WEFNr*$7-eMYTb>a5Dxs{OvFde*A#{RaFUy`7zDD`)NM_T{s}{p|6$I@eLx zvyF|3W+t&VwLNcp!SYynV`A2AFBr7K*k0Le{>rAb(m09uTK~GpgSpa~#Cl78TV;%0 z;=oz>K<<E-A?M}c};T8A8 zxTC@S)KgeH>8|M%-sBCp{CV=S9xgVIN*M#x_Eza*tFhc4e4NI(>@5%7v*F$?J?} zxzql(9xt1p<5hd2+BnMA2pXd;v!{>Nj|D}!r{R*l?jr4E(tgrg63N5mgdj?zUtZ&-`mFEBLyF;#bQz1AOQV&#Gn{My3SH?7z z@mcl$*sEA=GN#@3$lLquFPZsqe2^)I>3jnJ7O-XInsHpBJ8q8R-vX`!9>Fimjvzmd z1D|8~cLeVR{9%%V2(BjppOpGXaB)!agllj2?WqM#n$aL&*|~XX`?;Qp?+M!d-)Dh# z^U9jXaCJfXUaE(xapj-03;yT)3>)ur=5Rmpi}=S+4lN=#hE%33|3%}NE^az@_Kb9Q^mKRjgx#*5 zaPb5lg^&0s0Q3rem+%|G?>-h6_;{0#AMo*AJPLoy$H$#LL+4QIY5blg;C&=6^!Drx z7d~*p@$R0HaN)zgp1nhb|K zeA*Ej-bs9)cJzl|i?Hf6ALsb!!!SbZq}Yp2!o|~0xH!Xt*&W&^Q5Ii7hGn6y9?$?t z;a43!!z}q0AAjYc4~2_KA4{?X{7xzP2J8Q#lz*$AnEzu(I2A5_P?o+^mi~}!{tF*J z<%9hff62$M`S`%2jpP)5#u4A@>j;6;aPc=Jw+MC}5Jvo=6MhlgewEN~2}|F0L;&Gq zGT84qA%TA15jG7Ke$1Nhp?%V}j|1(kkA?g@9pS<+JJ{)MuXVq){vL4(;EEgSMOEqwMCjJvRSZq<;XzEP#U7 zBKXg4iSV_^Ll%W6Yvxhn%RXewr=1ZQWBB$fKz%z;4Y+-iy?kDVdZ(jPhW3d!5MgJ+ z@~qfrQ-x3bF>8t({RbbWDZq+{i2E^&V5smm`YxuBFJ71Y_atvIiXN)6zr#9I%b^08 z>ZORxu)z2Qh8!i@kR*UF)X@Wmhl^jsuRUexg@{PE*s-whJ6=y}K}E5Iw>t)7>30;ldl;NW$SE9pPgip~VwY_K`db1ivESf;``p z=MUuhT^1&QV<_6u8!_nm+fJy5C<}kf3Wbj~^YKov5RhHt4#tRzqb4*mj9Np5cUTLr zT@gs6@MoYNCKGxn(pi>6e%vV)qw&yqM~7cw)CrB6Fl(UgC@HzqvD=JtyhG;(B3(}S z>F`-Nmz;rJ%`A_L;b_WuAPxiCwu}756|~R3=sU1)!G zc@GYDg8IT6!l!Uzv}4C$msikLQP3$&dRM3~yi2s4cQ65w6PoPfAV5O+X|44`p=n<@ z(qkMFETlcn5mB~qQ~iS;b%KC%Sie8A;&fU1T%X5=P{`MsP&hwoIwPiE7*_1v0YW(2 z?Jymft`3LLX$Tg{EM5Y}JJe@7@ER(fB!mF_rn-g;zX2op8tE2I6$70SX{)i$kPXFI z8DMdis!omQ2Ysp!{W}b2^O0`6N4k;Xd!!pvv2l7wy7AmO(hbr8VwG@l&q()x=|R31 zKjGqVkLl<@rq6VuI`Sls@ZNsY4T#j~?FF0IvKRP(6k`HD{6}SCmVN-*0VHfgR-k@2 z6gAYb3sMS+xObc34%ilRMYnS|{K0UCNcmSorV}-&oPE$qv`swZL6DYw*mOw^$zzzP zGHBGC!-Y?%$i+mc0uU;d|3h^-0ij*SS_C^SQX$HGaggonf z$0wple-;`ronmn(DC$9P5SRy8*4H=WQOtQvdb&Q~5jDb|chP+mr^EB`YTn+GuMpml2c|GlI8+>p^uWonyTV5ZGU1zgpn}C$ z#P3lGaORw=x_Tm*vqGUq;0_5c%~@JJ=)oa0zkUd*61+>{eRNpt?)?E;tk?1T56S43 zs`4eO!jW!N_RD=jufSxWj#n^XdId3=WN!paSmMa3U?B>h{)&#K$eDg=XwcDNz+0m& zhPQjLLv>0aqo~!jcd)Zt25VuX=&9?G!7k2joH^Kb)EVsIbB189o>Fjy4gL5NK@;>RfAa6qBkBH zrZ*lnBf~xP$}$H+@d!kfcf5CsE}ky!I?NpKJ1Fu~DR>9KQXybK=XX#SY`ZgR29N-& zKL+|y!-=E#H-Lwzn%4zKLW~*;$}F%m4|~u&wVi+=0~aI}sDOloEo4M=NkD^+twjb9 zwA%-ba5h$4@6E*j}@vtRIW? zVGGrseDGkWtxXIR7Dx1m57yo+917}@R$e>ok9EW!tk05=58LCzK!dG_ad{&EXvB`| zVSlu&>4P8f!Gghu@AJvh+9Q_UNBwblc>EF=gEw%C$}ie!I;nWnLF$`*12o)6)taTh z6eatSO~8Hr2xaO>X9wW^P$G&q3+7NYPxEn8taKLoQUPM+y-@qgYS8@I&(TBMwvq}L zUst@pQ>Tc?;2Fx=k=1vk4{35!`?iQudxN0w3@Qqx7^I|jDbWf@?L;wD0GQt?C0VCa zp={BII;cbgwy9J|nIvuoRdlMRS%b@|Ud#mG?-dC;uBhL>f@#7=g^XVirlRq;8Fhq0 zyS$Wq3g=nN+ENBOC>_B2!t(m6uO9q@uWA!C<^M>6PG2c@Wlnm0lre;~wPo@HL=GI9s|5H?=y z4Ov#PiiL)ThrF(pPsJZ{9MA&Lg&zA$orAlaA;}V86*}JXhuj=kTKqO!YKuRDA^B@y{xWn1@ zC$J!tV$rJc#E1I2qpuHurxT*VR5R{i^JLT@NXPU;2oPv;)UY$?+a2lb4y2A=tV2Xt zAUT^KiqJjLIa>(22U%RZ;RX8nx(;5e$H>2m&8LYPk3r5>on^Un-2US*ia>1RnM?#%GE_pCiM2 zBA7$UYD#4omQ?=CiwizgB6b@k0&i_jhIQ|TT(QjE4Mu*3@h}xqx{y%1{02&wp9L1B zi;XKOQ@YA)qK3*z)~DF06aW8nNc!g@9jF_m0pE{WcvAmMBik#(tnP%Xl71|pI_Ofw zNEw}y!HjZ-iXY)WuramI&?{io2{rQ*)G{s>yp=gs&k)0PG=NAYC5XL@;^sWYs_JOv z4YIHI^;<(z&Mq*ywD1n? zpeOl7_(0i;`8TkeaN*be;le+{VqjTF3ncskLH$rgj>;M@ig ze5fzlJ#ruD>*xA<56+uH;ILoEhKUSbb6t-?#rbeLA2Xru#|$V&7E=%&`!= zvq11G0xrn&O?m!6p5J9*g2}?icw(moI6D9wI>(Zy`8X@Z?=yLUj{`d&^EZPAkQB9) zjUN=|rSiLd7Cwv?Bf~)2&jM^2BOB_$14~ij(Gku_;cTymxSzGU0fS8lzF$fCw@VF@ z0!Yd8iadWR&pYz`r96Kv&ky*79^wg|Bn_Wv_n!!jqHP32sC?$7@b=AK$MkZ$5Ka|a zhVvZ{Kc9^*pURMm(q#+sxi+v=Fze9r|0ML(R4hTjURZ<&F0X8J!i7f zl>2ffdu=+ATTVt-&m%j;CK1~vf~tERGg#e+F$0d-k#&=9GzT)6nHU@AKVv2xGbWkG zkHjX9FT}Z&6LYJ%yqkJr=45U)9V4}wTy!DnKA}lhz)!_5U!FW_%n`>-G{Q9l_9UXo#J?F8C`t65?=WXyTT%rxkm!#;h(P3JFUF!pSD`tcJN zSJDKZ%Vd^`?I76x`;Iwxx9Fa6^QV%T*tPR3sRcJH7$K4w$4uWX#_0^{Bc@3(3p@PS z)_=+|$Aj^mT1h11qM?!!Rz+9Ru_a$0A*=eTeKH+QuI3Z5+}O$GgrAv8Ccr%?Npv~C zl68fbBxquy4k_fg(09?jn#kp|t5$a&KLG|w3EM+-Q;vD6W+V-opUXt!CzDBOk|U18 z#(c#wrvq`=UUOq*>U;WT-c8f#@aLoQ%cjuoN3~x&=2svmDd8%39##C!S9vlL#HNd4B=~VRwgW+ReMM zd|B8->uAB!0;sADp*WYGam>jk{0hKz!ObpavMIHVD?ro2=rA8PXH;uE4?tDRC{Wb` zqXJL`FbekH0;2+Ol{0FRj5_9+$v}QjWzzX9Ce7TKO)>Z>IkPo2oO9E0>uBnSI{`hi zA?LJm(}!32vSXfXnd)liiHWwZRobzZkNQH^U5;km3P*H(#m%XYgR=+>Z6$!K8BuxU zbt#7k=k(2JYB_0Rue-!Vxy)e&s(2n|=2lY+8Qo4W^_Qu(>)cpAm#o1w!ns&^Wn@pK?#yOkNC3C$^oXVN54icF?7j-*` zF=Goea2ckf2Pf>P%Xci4?@;u*+XJ>$g%GQ;J^OOn%|5$Wz6QYZ;(}wo+B(DP;5-%0 z$CjuZkU$I0y}^(@8$#q>cQM+0uw|mG8$Y&=g>r1c5!V}3g-XDt19$XhSCaVz=j|~+ z_4o-t=`Uyy)8!nK4wRQ&2-V#Jdn$JMvbWbhm5ktr&Sd09At_z{4vIP2}A;tDW1^ zyxNds22RghI684~I+Ma#hKvXOfE)QE=c9 z$Lzd{4PP8MEV}NF75IvShhaS!!vNvj;yD}5E$vuX&AYith#7|?AzPwb#HCgqHWA}Y zyafNeV;(`9sg-ONyRd?EDw9Yrpw}JIcpQw%33DE;sx+NgTuj8ELaPmNVO!-~B9+LO zDt!UxJ5{*m6Dh>}h}KKBKIfQSsC7EOVq3#s5LNdIyc6I*t59uQIcp17xPJfQ+t zxezj@@I&f-)p+`rvzc#V%V8!yf9b|~_vJhcBD0tu`${g89y`C1Og~d_Y(fOAFbnZy&5!-!1t7n~Cjn;n~ zz}McZ@H^b%-fF}KIsunQmkj^68nyo}fVKV0(bzS3w5>?*I|20e#N=#qtFbnaRNjYh zvs;bSw*$D^k{%eoANG8BLOG|yw$BV4H6(i$*u>61#_B+mlr#)3B+ zWsnpo!yN9a4F`0K&`Ot+f&HNn3+wnl323;B>sf3r;E)b0(m;xE4L}#6fy#qRPLN_C zlgs54I2tb30t*(inbgAp)MA3e!n8&sIx)a{T#@S;f#juRS49Voy@wjCdr$$bGuYq2 zHjKxiKxL8nEN~!k2okp@Yj8W+Kxi%ydLz(;qOllOu{^O4*29vKP}iCn(o8z;-V7A~ zg56H}-GFiQOQ~+D1TNEKE2))aG@rP^dn8oCz*_F&BG%hlNdy)+q?mWKc~W;@0@aab zzmf}-1)WM@K^9)3a3>(1>Y{?qUs|nN;Nw>1ViXJdjo${?6V#LJ1iTwSuHAImniK~z zn1;SJ$qib-N_@Q)wIL{WrBmFRto`=^y2}YnEPrc~{G$Mp2g)aqtx5Ke1IP}X*0v`3 zK|3AY-r{j9nqi=eV+e2`u~%aDtx4~H2+-!8r7&nq5{-bvKNDf7jRPw^c|p8t3(A8i zEktNz53l@uu49Zo zimS%Ec19w9z(*vqKapNu$>;Vz839y5FCFlTWT88|l8-JVl31yr&VJbNa&(m+i`s8% zF_L8wVrU!!uEg+Jhy6tGs#FN-hW+{kFbN{`!ZOd)h|4>+vwcV%9xbvgw~TvTZnmP# z(qP-^04xn`?$IHbs(bTvu>zy*4QKV4m-%^;ic;I3ZP~v5(m0}XFFVVI0SNQ};rLT4f*u8>7elmi&&9-5sHO*NW-pOmt zvg){{c2LodnbXoy&cZ-;*s0MU4_IbrC|PI)vctAg1;7MeM-$Y!M3WXtN&Gxp4~ReR zsrb1UWhoVA)%B}Bw<_Zm%k}l>U_R3p67I3!=ehZeo40l>O$Fb~yju@E*KfqF_q8Td ztz#oKq3eEp?7kH2QxU6uT_u6m7=5KIGhxer;_zi)8`QJjfCa^kg!{6^<>Ohz(GNf0 z9AL-o6X%*(?6aWKE?ei<`dywEp!v*Nqc9gT8Q)uq(5y4I2rDEhwbvlV2J6C25hnI( z_|ek9v9ubzdaH+L7cG_t&0gyG3A;70o?#!ejhm|$oy0M*Y}T!w;J1{ExV+9evvv1y zIf~GmgwJ#Aqt)U5I#Ajg3b3{btBEEyJy)u`LTIRm4L7pw zCY2RFzMv6zWomuEMx7}(9djeCzbrT0+YonK6I>rP_<-nIXsP3sPw^XOX5D<0cUvzl zp53m_nwH=zx5EY&fSt$NoZt`?U4UHJl$R=2P-$WHkwbK z%lAEX#U^EyYuS*~4sNG3KD@92kU#CUb^qdlKdWrc;EmQXeBY7A1*Pk_Yu(grqytuW zIZ%IUvkg>*xA^Jk`h(C)r(p*lXfahg8EfL24f7H?E6}Pyuflya*SxxsXrN3RMxX)C zX#>tAAKXLO=EB-&Hz8JV_jg7bDSeC&0Rf9R7q2 zzfRKPsPyz(KcZN75Z<~gzOMpB%GCzd^^YgFeL`Cvna(ETbJ7;By01Ms5yUaMD0&8Ws~7{TqU0pulbCzy(YLRF%>Um zUEjWsCDRE0s@J^tA^AprVe5Vp+PAVsfn1}ZwPT+h*T48@J<2~MfB%2-T1T`Qx0o7< zClSw`bJJJzOM$-Mw)A72b*qD1d0tbORq>*Y(tMpz4ra5_)yjeRyR@5dd#WAVos|Q+ zhj+o+b&0A>!SDN9RApn?&}&qUf}0Ik4L0nq{0?75L}*+2UZJsx&L(m>{CNc3%&%D+ z+Ay=8mEO~vTWk89VjbVu>S49zs*k2Du5F9xEg?-Wj?`Unu78i9nG$T&U6J)%R%k2p z*F(snmBY#W7s&#&c-Oh#4{ejAMZ__f+YAPr&-6(v=MS@(nF zR-D!p^e=&0R2y##P5n`WZL|8LuHHLq;)|O3Wh+Y`O<9Q0s`%@;pz;kxD>M1SHyiq; z9_@&)D$h4IkVV^Sd9X zr$X)Ra$~iq!Q55l8w2K)^?#Yr`c!G%E4WJU(8%MhbMvCIqsCgaxjMVHZ3tiM8+qCK z8oN%n$J<$=uy(DtDW}phW^cR|-=h9ot-OJA=%!89^%u@InD9g6d#|z&g0{A0E4$JQ zZs1`-Zu>$ZoRj}G%((~uLSb`XY#oE|56T!+;mqtNmTlmBlB$5nE*#1}k+9YanhmxF z14*jh6|ABtAVh27Lq`5rVVVDwiTzLG%wFigS7ZGVeutA?X83%Ueo+>l{97!$@%zv4 z`{yY8^RhC4%pf0SKNshw=XwWU`R?CbI(_ENCvxBUSAYDc|C%^XKl$Q?Z04KpwS3~m zDfuhTxfiFFq6z#-&PDgdm)(WQv6VFb5Xp0L`C`^hy7*H# zFXAtCyj5DfO~|NYA+{^aDffAObd|Mk`5 zpJ71ur$2>s#O5mB|5#Sfn9Ea{>~u0Y3*t>Ghi{p3-LZHwX`B4NF91z7TWsM2_;zHl z`-~}64vv3}$C&W|IP0Co@7D@lCf>=M{=_>EA@Q7nMTF|)~Lw>Pr@XP3!G`QXfjgm^U`V_rBOh0D36*v z>Sd7ApLe_dGmtuujoQVl7%N4Y?f@|FLf*yH>GN3+ zPCl?tOEYuIy|whMa<~AT8BnwW{^iR?VIZOAa=2x_2>L5=RCBPzzsJoH^fF0!_v$M11G51C{59XCf&Hfatb<)UUB@?Sv7BFYFoD(#K~&k>X^fHMZAl;26nEQdBJ jK$GBL1R7o`$r2ruXPbVmbeRF5ihQX}__op9R~-2N>9Ae3 literal 241152 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%0A< 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 Jlk~rnz#q6$tF! Create721Collection(string _bearerToken, stri new MultipartFormFileSection("logo", logoImageData, "logo.png", "image/png"), new MultipartFormFileSection("banner", bannerImageData, "banner.png", "image/png"), new MultipartFormDataSection("isImported", "true"), - new MultipartFormDataSection("contractAddress", Token.Contracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId]), + new MultipartFormDataSection("contractAddress", ChainSafeContracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId]), new MultipartFormDataSection("type", "erc721") }; var path = "/collections"; @@ -164,7 +164,7 @@ public static async Task Create721Collection(string _bearerToken, stri collectionData.banner, _isMintingPublic }; - var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, Token.Contracts.MarketplaceContracts["11155111"], args); + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, ChainSafeContracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId], args); return data; } @@ -193,7 +193,7 @@ public static async Task Create1155Collection(string _bearerToken, str new MultipartFormFileSection("logo", logoImageData, "logo.png", "image/png"), new MultipartFormFileSection("banner", bannerImageData, "banner.png", "image/png"), new MultipartFormDataSection("isImported", "true"), - new MultipartFormDataSection("contractAddress", Token.Contracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId]), + new MultipartFormDataSection("contractAddress", ChainSafeContracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId]), new MultipartFormDataSection("type", "erc1155") }; var path = "/collections"; @@ -207,7 +207,7 @@ public static async Task Create1155Collection(string _bearerToken, str collectionData.banner, _isMintingPublic }; - var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, Token.Contracts.MarketplaceContracts["11155111"], args); + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, ChainSafeContracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId], args); return data; } catch (Web3Exception e) @@ -318,7 +318,7 @@ public static async Task CreateMarketplace(string _bearerToken, string collectionData.id, _whitelisting }; - var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, Token.Contracts.MarketplaceContracts["11155111"], args); + var data = await Evm.ContractSend(Web3Accessor.Web3, method, Token.ABI.MarketplaceFactory, ChainSafeContracts.MarketplaceContracts[Web3Accessor.Web3.ChainConfig.ChainId] , args); return data; } catch (Web3Exception e) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ChainSafeContracts.cs similarity index 97% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ChainSafeContracts.cs index 5ec7331db..864b4021d 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ChainSafeContracts.cs @@ -2,7 +2,7 @@ namespace Scripts.EVM.Token { - public class Contracts + public class ChainSafeContracts { public const string Erc20 = "0x358969310231363CBEcFEFe47323139569D8a88b"; public const string Erc721 = "0x4f75BB7bdd6f7A0fD32f1b3A94dfF409F5a3F1CC"; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ChainSafeContracts.cs.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Contracts.cs.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/ChainSafeContracts.cs.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs deleted file mode 100644 index ae8b2fccc..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs +++ /dev/null @@ -1,191 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Numerics; -using System.Threading.Tasks; -using ChainSafe.Gaming.UnityPackage.Model; -using ChainSafe.Gaming.Web3; -using UnityEngine; -using UnityEngine.Networking; - -namespace Scripts.EVM.Token -{ - public static class Erc1155 - { - /// - /// Balance of ERC1155 Token (string parameter) - /// - /// - /// - /// - /// - /// - public static async Task BalanceOf(Web3 web3, string contractAddress, string account, string tokenId) - { - return await BalanceOf(web3, contractAddress, account, new object[] - { - account, - tokenId - }); - } - - /// - /// Balance of ERC1155 Token (biginteger parameter) - /// - /// - /// - /// - /// - /// - public static async Task BalanceOf(Web3 web3, string contractAddress, string account, BigInteger tokenId) - { - return await BalanceOf(web3, contractAddress, account, new object[] - { - account, - tokenId - }); - } - private static async Task BalanceOf(Web3 web3, string contractAddress, string account, object[] parameters) - { - var contract = web3.ContractBuilder.Build(ABI.Erc1155, contractAddress); - var contractData = await contract.Call(EthMethod.BalanceOf, parameters); - return BigInteger.Parse(contractData[0].ToString()); - } - - /// - /// Balance of Batch ERC1155 - /// - /// - /// - /// - /// - /// - public static async Task> BalanceOfBatch(Web3 web3, string contractAddress, string[] accounts, string[] tokenIds) - { - var contract = web3.ContractBuilder.Build(ABI.Erc1155, contractAddress); - var contractData = await contract.Call(EthMethod.BalanceOfBatch, new object[] - { - accounts, - tokenIds - }); - return contractData[0] as List ?? throw new System.Exception("Unexpected result from contract call"); - } - - /// - /// Token URI of ERC1155 Token - /// - /// - /// - /// - /// - public static async Task Uri(Web3 web3, string contractAddress, string tokenId) - { - const string ipfsPath = "https://ipfs.io/ipfs/"; - var contract = web3.ContractBuilder.Build(ABI.Erc1155, contractAddress); - if (tokenId.StartsWith("0x")) - { - string convertUri = tokenId.Replace("0x", "f"); - return ipfsPath + convertUri; - } - var contractData = await contract.Call(EthMethod.Uri, new object[] - { - tokenId - }); - return contractData[0].ToString(); - } - - /// - /// Mints ERC721 token - /// - /// - /// - /// - /// - /// - /// - public static async Task MintErc1155(Web3 web3, string abi, string contractAddress, BigInteger id, BigInteger amount) - { - byte[] dataObject = { }; - const string method = EthMethod.Mint; - var destination = web3.Signer.PublicAddress; - var contract = web3.ContractBuilder.Build(abi, contractAddress); - var response = await contract.Send(method, new object[] - { - destination, - id, - amount, - dataObject - }); - return response; - } - - /// - /// Transfers ERC721 token - /// - /// - /// - /// - /// - /// - /// - public static async Task TransferErc1155(Web3 web3, string contractAddress, BigInteger tokenId, BigInteger amount, string toAccount) - { - var account = web3.Signer.PublicAddress; - var abi = ABI.Erc1155; - var method = EthMethod.SafeTransferFrom; - byte[] dataObject = { }; - var contract = web3.ContractBuilder.Build(abi, contractAddress); - var response = await contract.Send(method, new object[] - { - account, - toAccount, - tokenId, - amount, - dataObject - }); - return response; - } - - /// - /// Imports an NFT texture via Uri data - /// - /// - /// - /// - /// - /// - public static async Task ImportNftTexture1155(Web3 web3, string contract, string tokenId) - { - // fetch uri from chain - string uri = await Uri(web3, contract, tokenId); - // fetch json from uri - UnityWebRequest webRequest = UnityWebRequest.Get(uri); - await webRequest.SendWebRequest(); - if (webRequest.result != UnityWebRequest.Result.Success) - { - throw new System.Exception(webRequest.error); - } - // Deserialize the data into the response class - Response data = - JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - // parse json to get image uri - string imageUri = data.image; - Debug.Log("imageUri: " + imageUri); - if (imageUri.StartsWith("ipfs://")) - { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); - } - Debug.Log("Revised URI: " + imageUri); - // fetch image and display in game - UnityWebRequest textureRequest = UnityWebRequestTexture.GetTexture(imageUri); - await textureRequest.SendWebRequest(); - var response = ((DownloadHandlerTexture)textureRequest.downloadHandler).texture; - return response; - } - - // Response class for the texture call above - public class Response - { - public string image; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs.meta deleted file mode 100644 index 5f5e2f3da..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c08a3b38196e24b31a3e35b41053a2cf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs new file mode 100644 index 000000000..d5cf15451 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs @@ -0,0 +1,7 @@ +namespace Scripts.EVM.Token +{ + public class Erc1155Metadata + { + public string image { get; set; } + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs.meta new file mode 100644 index 000000000..e29df799b --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155Metadata.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5c150d3e3858475db6446dccd3e3c383 +timeCreated: 1715619285 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs new file mode 100644 index 000000000..207695740 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs @@ -0,0 +1,52 @@ +using System.Diagnostics.Contracts; +using System.Text; +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Contracts.BuiltIn; +using ChainSafe.Gaming.Ipfs; +using ChainSafe.Gaming.Web3; +using Newtonsoft.Json; +using UnityEngine; +using UnityEngine.Networking; + +namespace Scripts.EVM.Token +{ + public static class Erc1155UnityExtensions + { + public static async Task ImportTexture(this Erc1155Contract contract, string tokenId) + { + // fetch uri from chain + var uri = await contract.GetUri(tokenId); + + // fetch metadata from uri + var metaRequest = UnityWebRequest.Get(uri); + await metaRequest.SendWebRequest(); + + if (metaRequest.result != UnityWebRequest.Result.Success) + { + throw new Web3Exception($"Metadata request failure: {metaRequest.error}"); + } + + // prepare texture uri + var metadata = JsonConvert.DeserializeObject(Encoding.UTF8.GetString(metaRequest.downloadHandler.data)); + var textureUri = IpfsHelper.RollupIpfsUri(metadata.image); + + // fetch texture + var textureRequest = UnityWebRequestTexture.GetTexture(textureUri); + await textureRequest.SendWebRequest(); + + if (textureRequest.result != UnityWebRequest.Result.Success) + { + throw new Web3Exception($"Texture request failure: {metaRequest.error}"); + } + + var texture = ((DownloadHandlerTexture)textureRequest.downloadHandler).texture; + + return texture; + } + + public static Task ImportTexture(this Erc1155Service service, string contractAddress, string tokenId) + { + return service.BuildContract(contractAddress).ImportTexture(tokenId); + } + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs.meta new file mode 100644 index 000000000..5b43e34cd --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155UnityExtensions.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 127e124a404b4e068b8436f5b18638cb +timeCreated: 1715601274 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs deleted file mode 100644 index 08d8b68a1..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs +++ /dev/null @@ -1,145 +0,0 @@ -using System.Numerics; -using System.Threading.Tasks; -using ChainSafe.Gaming.Evm.Providers; -using ChainSafe.Gaming.Web3; - -namespace Scripts.EVM.Token -{ - public static class Erc20 - { - /// - /// Balance Of ERC20 Address - /// - /// - /// - /// - /// - public static async Task BalanceOf(Web3 web3, string contractAddress, string account) - { - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var contractData = await contract.Call(EthMethod.BalanceOf, new object[] - { - account - }); - return BigInteger.Parse(contractData[0].ToString()); - } - - /// - /// Custom ERC20 token balance of an address - /// - /// - /// - /// - /// - public static async Task CustomTokenBalance(Web3 web3, string contractAbi, string contractAddress) - { - var contract = web3.ContractBuilder.Build(contractAbi, contractAddress); - string address = web3.Signer.PublicAddress; - var contractData = await contract.Call(EthMethod.BalanceOf, new object[] { address }); - return BigInteger.Parse(contractData[0].ToString()); - } - - /// - /// Native ERC20 balance of an Address - /// - /// - /// - /// - public static async Task NativeBalanceOf(Web3 web3, string account) - { - return await web3.RpcProvider.GetBalance(account); - } - - /// - /// Name of ERC20 Token - /// - /// - /// - /// - public static async Task Name(Web3 web3, string contractAddress) - { - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var name = await contract.Call(EthMethod.Name); - return name[0].ToString(); - } - - /// - /// Symbol of ERC20 Token - /// - /// - /// - /// - public static async Task Symbol(Web3 web3, string contractAddress) - { - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var symbol = await contract.Call(EthMethod.Symbol); - return symbol[0].ToString(); - } - - /// - /// Decimals of ERC20 Token - /// - /// - /// - /// - public static async Task Decimals(Web3 web3, string contractAddress) - { - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var decimals = await contract.Call(EthMethod.Decimals); - return BigInteger.Parse(decimals[0].ToString()); - } - - /// - /// Total Supply of ERC20 Token - /// - /// - /// - /// - public static async Task TotalSupply(Web3 web3, string contractAddress) - { - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var totalSupply = await contract.Call(EthMethod.TotalSupply); - return BigInteger.Parse(totalSupply[0].ToString()); - } - - /// - /// Mints ERC20 Tokens - /// - /// - /// - /// - /// - public static async Task MintErc20(Web3 web3, string contractAddress, string toAccount, BigInteger amount) - { - const string method = EthMethod.Mint; - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var response = await contract.Send(method, new object[] - { - toAccount, - amount - }); - return response; - } - - /// - /// Transfers ERC20 Tokens - /// - /// - /// - /// - /// - /// - /// - public static async Task TransferErc20(Web3 web3, string contractAddress, string toAccount, BigInteger amount) - { - var method = EthMethod.Transfer; - var contract = web3.ContractBuilder.Build(ABI.Erc20, contractAddress); - var response = await contract.Send(method, new object[] - { - toAccount, - amount - }); - return response; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs deleted file mode 100644 index 73763d6ed..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs +++ /dev/null @@ -1,170 +0,0 @@ -using System.Collections.Generic; -using System.Numerics; -using System.Threading.Tasks; -using ChainSafe.Gaming.MultiCall; -using ChainSafe.Gaming.UnityPackage.Model; -using ChainSafe.Gaming.Web3; -using Nethereum.Contracts.QueryHandlers.MultiCall; -using Nethereum.Hex.HexConvertors.Extensions; - -namespace Scripts.EVM.Token -{ - public static class Erc721 - { - /// - /// Balance Of ERC721 Token - /// - /// - /// - /// - /// - public static async Task BalanceOf(Web3 web3, string contractAddress, string account) - { - var contract = web3.ContractBuilder.Build(ABI.Erc721, contractAddress); - var contractData = await contract.Call(EthMethod.BalanceOf, new object[] - { - account - }); - return int.Parse(contractData[0].ToString()); - } - - /// - /// Owner Of ERC721 Token (string parameter) - /// - /// - /// - /// - /// - public static async Task OwnerOf(Web3 web3, string contractAddress, string tokenId) - { - return await OwnerOf(web3, contractAddress, new object[] { tokenId, }); - } - - /// - /// Owner Of ERC721 Token (biginteger parameter) - /// - /// - /// - /// - /// - public static async Task OwnerOf(Web3 web3, string contractAddress, BigInteger tokenId) - { - return await OwnerOf(web3, contractAddress, new object[] { tokenId, }); - } - private static async Task OwnerOf(Web3 web3, string contractAddress, object[] parameters) - { - var method = EthMethod.OwnerOf; - var contract = web3.ContractBuilder.Build(ABI.Erc721, contractAddress); - var contractData = await contract.Call(method, parameters); - return contractData[0].ToString(); - } - - /// - /// Returns owners of batch - /// - public static async Task> OwnerOfBatch( - Web3 web3, - string contractAddress, - string[] tokenIds) - { - var erc721Contract = web3.ContractBuilder.Build(ABI.Erc721, contractAddress); - List calls = new List(); - for (int i = 0; i < tokenIds.Length; i++) - { - var callData = erc721Contract.Calldata(EthMethod.OwnerOf, new object[] - { - tokenIds[i].StartsWith("0x") ? tokenIds[i] : BigInteger.Parse(tokenIds[i]) - }); - var call3Value = new Call3Value() - { - Target = contractAddress, - AllowFailure = true, - CallData = callData.HexToByteArray() - }; - calls.Add(call3Value); - }; - - var multiCallResultResponse = await web3.MultiCall().MultiCallAsync(calls.ToArray()); - var owners = new List(); - for (int i = 0; i < multiCallResultResponse.Count; i++) - { - if (multiCallResultResponse[i] != null && multiCallResultResponse[i].Success) - { - var owner = erc721Contract.Decode(EthMethod.OwnerOf, multiCallResultResponse[i].ReturnData.ToHex()); - owners.Add(new OwnerOfBatchModel() { TokenId = tokenIds[i], Owner = owner[0].ToString() }); - } - } - return owners; - } - - /// - /// Token URI Of ERC721 Token - /// - /// - /// - /// - /// - public static async Task Uri(Web3 web3, string contractAddress, string tokenId) - { - const string ipfsPath = "https://ipfs.io/ipfs/"; - var contract = web3.ContractBuilder.Build(ABI.Erc721, contractAddress); - if (tokenId.StartsWith("0x")) - { - var convertUri = tokenId.Replace("0x", "f"); - return ipfsPath + convertUri; - } - - var contractData = await contract.Call(EthMethod.TokenUri, new object[] - { - tokenId - }); - return contractData[0].ToString(); - } - - /// - /// Mints ERC721 token - /// - /// - /// - /// - /// - /// - public static async Task MintErc721(Web3 web3, string abi, string contractAddress, string uri) - { - const string method = EthMethod.SafeMint; - var destination = web3.Signer.PublicAddress; - var contract = web3.ContractBuilder.Build(abi, contractAddress); - var response = await contract.Send(method, new object[] - { - destination, - uri - }); - return response; - } - - /// - /// Transfers ERC721 token - /// - /// - /// - /// - /// - /// - public static async Task TransferErc721(Web3 web3, string contractAddress, string toAccount, BigInteger tokenId) - { - var abi = ABI.Erc721; - var method = EthMethod.SafeTransferFrom; - var account = web3.Signer.PublicAddress; - var contract = web3.ContractBuilder.Build(abi, contractAddress); - - var response = await contract.Send(method, new object[] - { - account, - toAccount, - tokenId.ToString() - }); - - return response; - } - } -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs.meta deleted file mode 100644 index 0e0cea078..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0cc525932e1f34ad7b1d2140d47856aa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Methods.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Methods.cs.meta deleted file mode 100644 index b1bcae6a4..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Methods.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cd0841fdefde87b40a16f2ded8443040 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/OwnerOfBatchModel.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/OwnerOfBatchModel.cs.meta deleted file mode 100644 index d704d7afe..000000000 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/OwnerOfBatchModel.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5f33373a980b4a13b40a1a940b622f97 -timeCreated: 1708607850 \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs index f57c3d34a..b5d028b51 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs @@ -27,7 +27,7 @@ public class Erc1155Tests : SampleTestsBase [UnityTest] public IEnumerator TestBalanceOf() { - var getBalanceOf = Erc1155.BalanceOf(web3, Contracts.Erc1155, _accounts[0], _tokenIds[0]); + var getBalanceOf = web3.Erc1155.GetBalanceOf(ChainSafeContracts.Erc1155, _accounts[0], _tokenIds[0]); yield return new WaitUntil(() => getBalanceOf.IsCompleted); Assert.AreEqual(new BigInteger(2), getBalanceOf.Result); } @@ -35,7 +35,7 @@ public IEnumerator TestBalanceOf() [UnityTest] public IEnumerator TestBalanceOfBatch() { - var getBalanceOf = Erc1155.BalanceOfBatch(web3, Contracts.Erc1155, _accounts, _tokenIds); + var getBalanceOf = web3.Erc1155.GetBalanceOfBatch(ChainSafeContracts.Erc1155, _accounts, _tokenIds); yield return new WaitUntil(() => getBalanceOf.IsCompleted); CollectionAssert.AreEqual(new List { 2, 3 }, getBalanceOf.Result); } @@ -46,7 +46,7 @@ public IEnumerator TestBalanceOfBatch() [UnityTest] public IEnumerator TestUri() { - var uri = Erc1155.Uri(web3, Contracts.Erc1155, _tokenIds[0]); + var uri = web3.Erc1155.GetUri(ChainSafeContracts.Erc1155, _tokenIds[0]); yield return new WaitUntil(() => uri.IsCompleted); Assert.AreEqual(ExpectedUriResult, uri.Result); } @@ -126,7 +126,7 @@ public IEnumerator TestImportNFTTexture() }; #endregion - var texture = Erc1155.ImportNftTexture1155(web3, Contracts.Erc1155, "1"); + var texture = web3.Erc1155.ImportTexture(ChainSafeContracts.Erc1155, "1"); yield return new WaitUntil(() => texture.IsCompleted); CollectionAssert.AreEqual(bytesOfTheTexture, texture.Result.EncodeToJPG(1)); } diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs index 83b37292b..7b58151e7 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs @@ -1,6 +1,7 @@ using System.Collections; using System.Numerics; using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Build; @@ -27,7 +28,7 @@ public class Erc20Tests : SampleTestsBase [UnityTest] public IEnumerator TestBalanceOf() { - var getBalanceOf = Erc20.BalanceOf(web3, Contracts.Erc20, Account); + var getBalanceOf = web3.Erc20.GetBalanceOf(ChainSafeContracts.Erc20, Account); yield return new WaitUntil(() => getBalanceOf.IsCompleted); Assert.AreEqual(new BigInteger(1000000000000000000), getBalanceOf.Result); } @@ -35,7 +36,7 @@ public IEnumerator TestBalanceOf() [UnityTest] public IEnumerator TestNativeBalanceOf() { - var getNativeBalanceOf = Erc20.NativeBalanceOf(web3, Account); + var getNativeBalanceOf = web3.RpcProvider.GetBalance(Account); yield return new WaitUntil(() => getNativeBalanceOf.IsCompleted); Assert.AreEqual(new BigInteger(500000000000000000), getNativeBalanceOf.Result); } @@ -43,7 +44,7 @@ public IEnumerator TestNativeBalanceOf() [UnityTest] public IEnumerator TestDecimals() { - var getDecimals = Erc20.Decimals(web3, Contracts.Erc20); + var getDecimals = web3.Erc20.GetDecimals(ChainSafeContracts.Erc20); yield return new WaitUntil(() => getDecimals.IsCompleted); Assert.AreEqual(new BigInteger(18), getDecimals.Result); } @@ -51,7 +52,7 @@ public IEnumerator TestDecimals() [UnityTest] public IEnumerator TestName() { - var getName = Erc20.Name(web3, Contracts.Erc20); + var getName = web3.Erc20.GetName(ChainSafeContracts.Erc20); yield return new WaitUntil(() => getName.IsCompleted); Assert.AreEqual("CsTestErc20", getName.Result); } @@ -59,7 +60,7 @@ public IEnumerator TestName() [UnityTest] public IEnumerator TestSymbol() { - var getSymbol = Erc20.Symbol(web3, Contracts.Erc20); + var getSymbol = web3.Erc20.GetSymbol(ChainSafeContracts.Erc20); yield return new WaitUntil(() => getSymbol.IsCompleted); Assert.AreEqual("CST", getSymbol.Result); } @@ -67,7 +68,7 @@ public IEnumerator TestSymbol() [UnityTest] public IEnumerator TestTotalSupply() { - var getTotalSupply = Erc20.TotalSupply(web3, TotalSupplyAddress); + var getTotalSupply = web3.Erc20.GetTotalSupply(TotalSupplyAddress); yield return new WaitUntil(() => getTotalSupply.IsCompleted); Assert.AreEqual(new BigInteger(1000000000000000000), getTotalSupply.Result); } diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs index 0e6408bb1..c7aec1de2 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs @@ -45,7 +45,7 @@ public class Erc721Tests : SampleTestsBase [UnityTest] public IEnumerator TestBalanceOf() { - var getBalanceOf = Erc721.BalanceOf(web3, Contracts.Erc721, balanceOfAccount); + var getBalanceOf = web3.Erc721.GetBalanceOf(ChainSafeContracts.Erc721, balanceOfAccount); yield return new WaitUntil(() => getBalanceOf.IsCompleted); Assert.AreEqual(balanceOfExpected, getBalanceOf.Result); } @@ -53,7 +53,7 @@ public IEnumerator TestBalanceOf() [UnityTest] public IEnumerator TestOwnerOf() { - var getOwnerOf = Erc721.OwnerOf(web3, Contracts.Erc721, ownerOfTokenId); + var getOwnerOf = web3.Erc721.GetOwnerOf(ChainSafeContracts.Erc721, ownerOfTokenId); yield return new WaitUntil(() => getOwnerOf.IsCompleted); Assert.AreEqual(ownerOfExpected, getOwnerOf.Result); } @@ -61,7 +61,7 @@ public IEnumerator TestOwnerOf() [UnityTest] public IEnumerator TestOwnerOfBatch() { - var getOwnerOfBatch = Erc721.OwnerOfBatch(web3, Contracts.Erc721, ownerOfBatchTokenIds); + var getOwnerOfBatch = web3.Erc721.GetOwnerOfBatch(ChainSafeContracts.Erc721, ownerOfBatchTokenIds); yield return new WaitUntil(() => getOwnerOfBatch.IsCompleted); CollectionAssert.AreEqual(ownerOfBatchExpected, getOwnerOfBatch.Result.Select(x => x.Owner)); } @@ -69,7 +69,7 @@ public IEnumerator TestOwnerOfBatch() [UnityTest] public IEnumerator TestUri() { - var uri = Erc721.Uri(web3, Contracts.Erc721, uriTokenId); + var uri = web3.Erc721.GetUri(ChainSafeContracts.Erc721, uriTokenId); yield return new WaitUntil(() => uri.IsCompleted); Assert.AreEqual(ExpectedUriResult, uri.Result); } diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmCustomResponseTests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmCustomResponseTests.cs index 087b6a91f..97481e1db 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmCustomResponseTests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmCustomResponseTests.cs @@ -56,7 +56,7 @@ public IEnumerator TestContractSend() { IncreaseAmount }; - var sendContract = Evm.ContractSend(web3, ContractSendMethod, ABI.ArrayTotal, Contracts.ArrayTotal, args); + var sendContract = Evm.ContractSend(web3, ContractSendMethod, ABI.ArrayTotal, ChainSafeContracts.ArrayTotal, args); yield return new WaitUntil(() => sendContract.IsCompleted); if (sendContract.Exception != null) throw sendContract.Exception; Assert.IsTrue(sendContract.IsCompletedSuccessfully); @@ -67,7 +67,7 @@ public IEnumerator TestContractSend() public IEnumerator TestSendArray() { yield return BuildWeb3WithTestResponse("0x3446b949c3d214fba7e61c9cf127eac6cd0b2983564cf76be618099879b6f1e1"); - var sendArray = Evm.SendArray(web3, SendArrayMethod, ABI.ArrayTotal, Contracts.ArrayTotal, ArrayToSend.ToArray()); + var sendArray = Evm.SendArray(web3, SendArrayMethod, ABI.ArrayTotal, ChainSafeContracts.ArrayTotal, ArrayToSend.ToArray()); yield return new WaitUntil(() => sendArray.IsCompleted); if (sendArray.Exception != null) throw sendArray.Exception; Assert.IsTrue(sendArray.IsCompletedSuccessfully); @@ -136,7 +136,7 @@ public IEnumerator TestSignVerify() public IEnumerator TestMintErc20() { yield return BuildWeb3WithTestResponse("0xf6133ad76359ffaf67853a5eb138a94ed11f29d350b907420a92c685c6df5303"); - var mint20 = Erc20.MintErc20(web3, Contracts.Erc20, SendToAddress, Mint20Amount); + var mint20 = web3.Erc20.Mint(ChainSafeContracts.Erc20, Mint20Amount, SendToAddress); yield return new WaitUntil(() => mint20.IsCompleted); if (mint20.Exception != null) throw mint20.Exception; Assert.IsTrue(mint20.IsCompletedSuccessfully); @@ -147,7 +147,7 @@ public IEnumerator TestMintErc20() public IEnumerator TestMintErc721() { yield return BuildWeb3WithTestResponse("0x09f1c615d638ae0b3a8c4a5555b46170c42dba214f04412400f3ff639657a223"); - var mint721 = Erc721.MintErc721(web3, ABI.Erc721, Contracts.Erc721, Mint721Uri); + var mint721 = web3.Erc721.Mint(ChainSafeContracts.Erc721, Mint721Uri); yield return new WaitUntil(() => mint721.IsCompleted); if (mint721.Exception != null) throw mint721.Exception; Assert.IsTrue(mint721.IsCompletedSuccessfully); @@ -158,7 +158,7 @@ public IEnumerator TestMintErc721() public IEnumerator TestMintErc1155() { yield return BuildWeb3WithTestResponse("0xa04294541b934b48ada4073b07ba01492d8ad676aa2db6f93249cec0820a1dca"); - var mint1155 = Erc1155.MintErc1155(web3, ABI.Erc1155, Contracts.Erc1155, Mint1155Id, Mint1155Amount); + var mint1155 = web3.Erc1155.Mint(ChainSafeContracts.Erc1155, Mint1155Id, Mint1155Amount); yield return new WaitUntil(() => mint1155.IsCompleted); if (mint1155.Exception != null) throw mint1155.Exception; Assert.IsTrue(mint1155.IsCompletedSuccessfully); @@ -169,7 +169,7 @@ public IEnumerator TestMintErc1155() public IEnumerator TestTransferErc20() { yield return BuildWeb3WithTestResponse("0x87d8826e895247b4106596040c5133a18ecbf76077c5433091a5f18c355a120b"); - var transferErc20 = Erc20.TransferErc20(web3, Contracts.Erc20, SendToAddress, TransferErc20Amount); + var transferErc20 = web3.Erc20.Transfer(ChainSafeContracts.Erc20, SendToAddress, TransferErc20Amount); yield return new WaitUntil(() => transferErc20.IsCompleted); if (transferErc20.Exception != null) throw transferErc20.Exception; Assert.IsTrue(transferErc20.IsCompletedSuccessfully); @@ -180,7 +180,7 @@ public IEnumerator TestTransferErc20() public IEnumerator TestTransferErc721() { yield return BuildWeb3WithTestResponse("0xba034c4150f2a5fd50926551a8e95028d51dcc91e3c3b566bbd316968bc29375"); - var transferErc721 = Erc721.TransferErc721(web3, Contracts.Erc721, SendToAddress, Transfer721Id); + var transferErc721 = web3.Erc721.Transfer(ChainSafeContracts.Erc721, SendToAddress, Transfer721Id); yield return new WaitUntil(() => transferErc721.IsCompleted); if (transferErc721.Exception != null) throw transferErc721.Exception; Assert.IsTrue(transferErc721.IsCompletedSuccessfully); @@ -191,7 +191,7 @@ public IEnumerator TestTransferErc721() public IEnumerator TestTransferErc1155() { yield return BuildWeb3WithTestResponse("0x390b47d378e9a6de830e2cc6d624de0920efc44d7b40fb61f75d983545c987fc"); - var transferErc1155 = Erc1155.TransferErc1155(web3, Contracts.Erc1155, Transfer1155Id, Transfer1155Amount, SendToAddress); + var transferErc1155 = web3.Erc1155.Transfer(ChainSafeContracts.Erc1155, Transfer1155Id, Transfer1155Amount, SendToAddress); yield return new WaitUntil(() => transferErc1155.IsCompleted); if (transferErc1155.Exception != null) throw transferErc1155.Exception; yield return new WaitUntil(() => transferErc1155.IsCompletedSuccessfully); diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs index cb1fdcb75..9af03cb87 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/EvmTests.cs @@ -1,6 +1,7 @@ using System.Collections; using System.Collections.Generic; using System.Numerics; +using ChainSafe.Gaming.Evm.Contracts.BuiltIn; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using NUnit.Framework; @@ -50,7 +51,7 @@ public IEnumerator TestContractCall() { var address = web3.Signer.PublicAddress; object[] args = { address }; - var callContract = Evm.ContractCall(web3, ContractCallMethod, ABI.ArrayTotal, Contracts.ArrayTotal, args); + var callContract = Evm.ContractCall(web3, ContractCallMethod, ABI.ArrayTotal, ChainSafeContracts.ArrayTotal, args); yield return new WaitUntil(() => callContract.IsCompleted); if (callContract.Exception != null) throw callContract.Exception; Assert.IsTrue(callContract.IsCompletedSuccessfully); @@ -60,7 +61,7 @@ public IEnumerator TestContractCall() [UnityTest] public IEnumerator TestGetArray() { - var getArray = Evm.GetArray(web3, Contracts.ArrayTotal, ABI.ArrayTotal, GetArrayMethod); + var getArray = Evm.GetArray(web3, ChainSafeContracts.ArrayTotal, ABI.ArrayTotal, GetArrayMethod); yield return new WaitUntil(() => getArray.IsCompleted); // Convert toLower to make comparing easier var result = getArray.Result.ConvertAll(a => a.ConvertAll(b => b.ToLower())); @@ -87,7 +88,7 @@ public IEnumerator TestGetGasLimit() { IncreaseAmount }; - var getGasLimit = Evm.GetGasLimit(web3, ABI.ArrayTotal, Contracts.ArrayTotal, ContractSendMethod, args); + var getGasLimit = Evm.GetGasLimit(web3, ABI.ArrayTotal, ChainSafeContracts.ArrayTotal, ContractSendMethod, args); yield return new WaitUntil(() => getGasLimit.IsCompleted); if (getGasLimit.Exception != null) throw getGasLimit.Exception; // Just assert successful completion because result is always changing @@ -107,7 +108,7 @@ public IEnumerator TestGetGasPrice() [UnityTest] public IEnumerator TestUseRegisteredContract() { - var useRegisteredContract = Evm.UseRegisteredContract(web3, "CsTestErc20", EthMethod.BalanceOf); + var useRegisteredContract = Evm.UseRegisteredContract(web3, "CsTestErc20", EthMethods.BalanceOf); yield return new WaitUntil(() => useRegisteredContract.IsCompleted); if (useRegisteredContract.Exception != null) throw useRegisteredContract.Exception; Assert.IsTrue(useRegisteredContract.IsCompletedSuccessfully); @@ -149,7 +150,7 @@ public IEnumerator TestECDSAAddress() [UnityTest] public IEnumerator TestCustomBalanceOfErc20() { - var getCustomBalanceOf = Erc20.CustomTokenBalance(web3, ABI.Erc20, Contracts.Erc20); + var getCustomBalanceOf = web3.Erc20.GetBalanceOf(ChainSafeContracts.Erc20); yield return new WaitUntil(() => getCustomBalanceOf.IsCompleted); Assert.AreEqual(new BigInteger(999999999999999), getCustomBalanceOf.Result); } diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs index 101235e55..d23939369 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/SampleTestsBase.cs @@ -67,7 +67,7 @@ internal static ValueTask BuildTestWeb3(Web3Builder.ConfigureServicesDeleg // Add any contracts we would want to use services.ConfigureRegisteredContracts(contracts => - contracts.RegisterContract("CsTestErc20", ABI.Erc20, Contracts.Erc20)); + contracts.RegisterContract("CsTestErc20", ABI.Erc20, ChainSafeContracts.Erc20)); }); if (customConfiguration != null) diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef b/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef index 959c0e10a..017811d11 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef @@ -19,6 +19,7 @@ "ChainSafe.Gaming.Unity.dll", "ChainSafe.Gaming.Gelato.dll", "ChainSafe.Gaming.WalletConnect.dll", + "Nethereum.RPC.dll", "Newtonsoft.Json.dll" ], "autoReferenced": false, diff --git a/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj b/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj index 5225af0ac..cb395f804 100644 --- a/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj +++ b/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj @@ -35,6 +35,14 @@ + + + + + + + + 1w{GMdrLzc61hI1;cCle9T{}er=@=rmT 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 KJv4U<2mU`;jv5L8 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/CountlyAnalytics.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/CountlyAnalytics.cs index 90ba4415e..b4d691aaa 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/CountlyAnalytics.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/CountlyAnalytics.cs @@ -14,24 +14,27 @@ public class CountlyAnalytics : IAnalyticsClient public async void CaptureEvent(AnalyticsEvent eventData) { - await Countly.Instance.Events.RecordEventAsync(eventData.EventName, new Dictionary() - { - { "chain", eventData.ChainId}, - { "network", eventData.Network}, - { "project-id", eventData.ProjectId}, - { "rpc ", eventData.Rpc}, - { "version", AnalyticsVersion}, - }); + await Countly.Instance.Events.RecordEventAsync(eventData.EventName); } - public string AnalyticsVersion => "2.5.5"; + public string AnalyticsVersion => "2.6"; public IChainConfig ChainConfig { get; } public IProjectConfig ProjectConfig { get; } public CountlyAnalytics(IChainConfig chainConfig, IProjectConfig projectConfig) { Countly.Instance.Init(new CountlyConfiguration(AppKey, ServerUrl)); - Debug.Log("Countly initialized"); + + var userDetails = new Dictionary + { + { "chainId", chainConfig.ChainId }, + { "rpc", chainConfig.Rpc }, + { "network", chainConfig.Network }, + { "projectId", projectConfig.ProjectId }, + { "analyticsVersion", AnalyticsVersion } + }; + + Countly.Instance.UserDetails.SetCustomUserDetails(userDetails); ChainConfig = chainConfig; ProjectConfig = projectConfig; diff --git a/src/ChainSafe.Gaming.Gelato/Gelato.cs b/src/ChainSafe.Gaming.Gelato/Gelato.cs index 1aaf60bb3..9eebd1383 100644 --- a/src/ChainSafe.Gaming.Gelato/Gelato.cs +++ b/src/ChainSafe.Gaming.Gelato/Gelato.cs @@ -57,10 +57,7 @@ public async ValueTask WillStartAsync() analyticsClient.CaptureEvent(new AnalyticsEvent() { - ChainId = chainConfig.ChainId, - Network = chainConfig.Network, EventName = $"Gelato initialized", - ProjectId = projectConfig.ProjectId, PackageName = "io.chainsafe.web3-unity", }); } diff --git a/src/ChainSafe.Gaming.Gelato/GelatoClient.cs b/src/ChainSafe.Gaming.Gelato/GelatoClient.cs index 15de4bc2f..6587b4f07 100644 --- a/src/ChainSafe.Gaming.Gelato/GelatoClient.cs +++ b/src/ChainSafe.Gaming.Gelato/GelatoClient.cs @@ -52,10 +52,7 @@ public async Task Post(RelayCall relayCall, TReq }; analyticsClient.CaptureEvent(new AnalyticsEvent() { - ChainId = chainConfig.ChainId, - Network = chainConfig.Network, EventName = $"{relayCall}", - ProjectId = projectConfig.ProjectId, PackageName = "io.chainsafe.web3-unity", }); diff --git a/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs b/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs index 0c39f2bf5..fe637f17c 100644 --- a/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs +++ b/src/ChainSafe.Gaming.Lootboxes.Chainlink/LootboxService.cs @@ -71,13 +71,8 @@ async ValueTask ILifecycleParticipant.WillStartAsync() analyticsClient.CaptureEvent(new AnalyticsEvent() { - ProjectId = projectConfig.ProjectId, - Network = chainConfig.Network, - ChainId = chainConfig.ChainId, - Rpc = chainConfig.Rpc, EventName = "Lootboxes Initialized", PackageName = "io.chainsafe.web3-unity.lootboxes", - Version = analyticsClient.AnalyticsVersion, }); // todo check if contract is correct diff --git a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs index e07321c79..fbfe64000 100644 --- a/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs +++ b/src/ChainSafe.Gaming.MetaMask.Unity/MetaMaskProvider.cs @@ -83,13 +83,8 @@ public override async Task Connect() analyticsClient.CaptureEvent(new AnalyticsEvent() { - ProjectId = projectConfig.ProjectId, - Network = chainConfig.Network, - ChainId = chainConfig.ChainId, - Rpc = chainConfig.Rpc, EventName = "Metamask WebGL Initialized", PackageName = "io.chainsafe.web3-unity", - Version = analyticsClient.AnalyticsVersion, }); return await metaMaskController.Connect(); diff --git a/src/ChainSafe.Gaming.SygmaClient/Types/IFeeHandlerRouter.cs b/src/ChainSafe.Gaming.SygmaClient/Types/IFeeHandlerRouter.cs index 9641184f4..852b52be4 100644 --- a/src/ChainSafe.Gaming.SygmaClient/Types/IFeeHandlerRouter.cs +++ b/src/ChainSafe.Gaming.SygmaClient/Types/IFeeHandlerRouter.cs @@ -1,5 +1,4 @@ using System.Threading.Tasks; -using NBitcoin; namespace ChainSafe.Gaming.SygmaClient.Types { diff --git a/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs b/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs index 121dc4174..45eeda7e8 100644 --- a/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs +++ b/src/ChainSafe.Gaming.WalletConnect/WalletConnectProvider.cs @@ -85,13 +85,8 @@ async ValueTask ILifecycleParticipant.WillStartAsync() { analyticsClient.CaptureEvent(new AnalyticsEvent() { - ProjectId = analyticsClient.ProjectConfig.ProjectId, - Network = analyticsClient.ChainConfig.Network, - ChainId = analyticsClient.ChainConfig.ChainId, - Rpc = analyticsClient.ChainConfig.Rpc, EventName = "Wallet Connect Initialized", PackageName = "io.chainsafe.web3-unity", - Version = analyticsClient.AnalyticsVersion, }); ValidateConfig(); diff --git a/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs b/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs index cde249870..b9215f538 100644 --- a/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs @@ -92,12 +92,8 @@ public async Task Call(string method, object[] parameters = null, Tran var result = await provider.Call(txReq); analyticsClient.CaptureEvent(new AnalyticsEvent() { - ChainId = analyticsClient.ChainConfig.ChainId, EventName = method, - Network = analyticsClient.ChainConfig.Network, - Version = analyticsClient.AnalyticsVersion, PackageName = "io.chainsafe.web3.unity", - ProjectId = analyticsClient.ProjectConfig.ProjectId, }); return Decode(method, result); @@ -170,12 +166,8 @@ public async Task Send(string method, object[] parameters = null, Tran analyticsClient.CaptureEvent(new AnalyticsEvent() { - ChainId = analyticsClient.ChainConfig.ChainId, EventName = method, - Network = analyticsClient.ChainConfig.Network, - Version = analyticsClient.AnalyticsVersion, PackageName = "io.chainsafe.web3.unity", - ProjectId = analyticsClient.ProjectConfig.ProjectId, }); return (outputValues, receipt); @@ -245,12 +237,8 @@ public string Calldata(string method, object[] parameters = null) analyticsClient.CaptureEvent(new AnalyticsEvent() { - ChainId = analyticsClient.ChainConfig.ChainId, EventName = method, - Network = analyticsClient.ChainConfig.Network, - Version = analyticsClient.AnalyticsVersion, PackageName = "io.chainsafe.web3.unity", - ProjectId = analyticsClient.ProjectConfig.ProjectId, }); return function.GetData(parameters); diff --git a/src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs index b2529669a..83e9d3636 100644 --- a/src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs @@ -4,21 +4,6 @@ namespace ChainSafe.Gaming.Web3.Analytics { public class AnalyticsEvent { - [JsonProperty(PropertyName = "projectId", NullValueHandling = NullValueHandling.Ignore)] - public string ProjectId { get; set; } - - [JsonProperty(PropertyName = "chain", NullValueHandling = NullValueHandling.Ignore)] - public string ChainId { get; set; } - - [JsonProperty(PropertyName = "rpc", NullValueHandling = NullValueHandling.Ignore)] - public string Rpc { get; set; } - - [JsonProperty(PropertyName = "network", NullValueHandling = NullValueHandling.Ignore)] - public string Network { get; set; } - - [JsonProperty(PropertyName = "version", NullValueHandling = NullValueHandling.Ignore)] - public string Version { get; set; } - [JsonProperty(PropertyName = "gameData", NullValueHandling = NullValueHandling.Ignore)] public AnalyticsGameData GameData { get; set; } diff --git a/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs index ef897e005..6b3099b42 100644 --- a/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs @@ -25,11 +25,6 @@ public ApiAnalyticsClient(IProjectConfig projectConfig, IChainConfig chainConfig public async void CaptureEvent(AnalyticsEvent eventData) { - eventData.ProjectId ??= ProjectConfig.ProjectId; - eventData.ChainId ??= ChainConfig.ChainId; - eventData.Network ??= ChainConfig.Network; - eventData.Version = AnalyticsVersion; - await httpClient.PostRaw(LoggingUrl, JsonConvert.SerializeObject(eventData), "application/json"); } } diff --git a/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs index 5a902ad18..67dbbef26 100644 --- a/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs @@ -125,9 +125,6 @@ public async Task Perform(string method, params object[] parameters) { environment.AnalyticsClient.CaptureEvent(new AnalyticsEvent() { - Rpc = method, - Network = network?.Name, - ChainId = network?.ChainId.ToString(), EventName = $"{method}", GameData = new AnalyticsGameData() { diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs index 065be2035..e163b82b9 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs @@ -95,11 +95,7 @@ private void LogAnalytics(Provider provider) IAnalyticsClient client = (IAnalyticsClient)Web3Accessor.Web3.ServiceProvider.GetService(typeof(IAnalyticsClient)); client.CaptureEvent(new AnalyticsEvent() { - ChainId = Web3Accessor.Web3.ChainConfig.ChainId, - Network = Web3Accessor.Web3.ChainConfig.Network, - ProjectId = Web3Accessor.Web3.ProjectConfig.ProjectId, EventName = $"Login provider {provider}", - Version = client.AnalyticsVersion, PackageName = "io.chainsafe.web3-unity.web3auth", }); } From 6ed31fedf8634630b6b8ed5d493fbe3ac36caced Mon Sep 17 00:00:00 2001 From: Robel Getnet Geremew Date: Thu, 30 May 2024 15:43:26 +0300 Subject: [PATCH 80/97] HyperPlay package added and remember me functionality (#984) * working remember me * new HyperPlay package with samples * Cleanup and Added documentation * removed erroneous using statement in Web3Builder * dependency updated to 2.6 * checkpoint * countly issue fix * added duplicate_samples text file --- .../Runtime.meta | 2 +- .../Runtime/Libraries.meta | 2 +- .../Runtime/Scripts.meta | 2 +- .../Runtime/Scripts/HyperPlayWeb3.cs | 31 ++ .../Runtime/Scripts/HyperPlayWeb3.cs.meta | 11 + ...insafe.web3-unity.hyperplay.runtime.asmdef | 16 + ...e.web3-unity.hyperplay.runtime.asmdef.meta | 7 + .../package.json | 33 ++ .../package.json.meta | 7 + scripts/data/duplicate_samples.txt | 5 + scripts/data/published_dependencies.txt | 5 +- .../HyperPlayConfig.cs | 14 + .../HyperPlayData.cs | 20 + .../HyperPlayExtensions.cs | 12 +- .../HyperPlayProvider.cs | 37 +- .../HyperPlaySigner.cs | 8 +- .../IHyperPlayConfig.cs | 18 + .../IHyperPlayData.cs | 21 + .../LocalStorage/DataStorage.cs | 138 ++++++ .../LocalStorage/IStorable.cs | 18 + .../Web3/Core/Build/Web3Builder.cs | 3 +- src/ChainSafe.Gaming/Web3/Core/Web3.cs | 7 +- .../Samples/web3.unity SDK HyperPlay.meta | 8 + .../web3.unity SDK HyperPlay/1.0.0.meta | 8 + .../1.0.0/HyperPlay Usage Sample.meta | 8 + .../1.0.0/HyperPlay Usage Sample/Scenes.meta | 8 + .../Scenes/SampleLogin - HyperPlay.unity | 394 ++++++++++++++++++ .../Scenes/SampleLogin - HyperPlay.unity.meta | 0 .../1.0.0/HyperPlay Usage Sample/Scripts.meta | 8 + .../Scripts/HyperPlayLoginProvider.cs | 57 +++ .../Scripts}/HyperPlayLoginProvider.cs.meta | 0 .../Scripts/Scenes/HyperPlayLoginProvider.cs | 37 -- src/UnitySampleProject/Packages/manifest.json | 2 + .../Packages/packages-lock.json | 25 +- 34 files changed, 919 insertions(+), 53 deletions(-) rename src/UnitySampleProject/Assets/ExternalDependencyManager.meta => Packages/io.chainsafe.web3-unity.hyperplay/Runtime.meta (77%) rename src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta => Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries.meta (77%) rename src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta => Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts.meta (77%) create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/package.json create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/package.json.meta create mode 100644 scripts/data/duplicate_samples.txt create mode 100644 src/ChainSafe.Gaming.HyperPlay/HyperPlayConfig.cs create mode 100644 src/ChainSafe.Gaming.HyperPlay/HyperPlayData.cs create mode 100644 src/ChainSafe.Gaming.HyperPlay/IHyperPlayConfig.cs create mode 100644 src/ChainSafe.Gaming.HyperPlay/IHyperPlayData.cs create mode 100644 src/ChainSafe.Gaming/LocalStorage/DataStorage.cs create mode 100644 src/ChainSafe.Gaming/LocalStorage/IStorable.cs create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes.meta rename src/UnitySampleProject/Assets/Samples/{web3.unity SDK/2.5.0/Web3.Unity Samples => web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample}/Scenes/SampleLogin - HyperPlay.unity (82%) rename src/UnitySampleProject/Assets/Samples/{web3.unity SDK/2.5.0/Web3.Unity Samples => web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample}/Scenes/SampleLogin - HyperPlay.unity.meta (100%) create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs rename src/UnitySampleProject/Assets/Samples/{web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes => web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts}/HyperPlayLoginProvider.cs.meta (100%) delete mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/HyperPlayLoginProvider.cs diff --git a/src/UnitySampleProject/Assets/ExternalDependencyManager.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime.meta similarity index 77% rename from src/UnitySampleProject/Assets/ExternalDependencyManager.meta rename to Packages/io.chainsafe.web3-unity.hyperplay/Runtime.meta index 11c988c51..0c74a21f0 100644 --- a/src/UnitySampleProject/Assets/ExternalDependencyManager.meta +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b68b274307aa0f4489642aa55b200874 +guid: b570d148b322940459375542e91ef7af folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries.meta similarity index 77% rename from src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta rename to Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries.meta index e5123a164..ad8be91f0 100644 --- a/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor.meta +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d939ba36a37c8274897ea497cd5dc8fc +guid: 6aa4f545932270b48acdc4de1df73b2d folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts.meta similarity index 77% rename from src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta rename to Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts.meta index e9466dade..91e399dbf 100644 --- a/src/UnitySampleProject/Assets/ExternalDependencyManager/Editor/1.2.179.meta +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 066c254a3621598429e298b41d522cc8 +guid: 541b8003286f5264ca1ed22079546a3b folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs new file mode 100644 index 000000000..a6f0b9074 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs @@ -0,0 +1,31 @@ +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Unity; + +namespace ChainSafe.Gaming.HyperPlay +{ + /// + /// Helper class to build preconfigured Web3 clients for HyperPlay. + /// + public static class HyperPlayWeb3 + { + /// + /// Builds a lightweight Web3 client with basic HyperPlay functionality. + /// + /// Your HyperPlay config. + /// A lightweight version of Web3 client with basic HyperPlay functionality. + public static ValueTask BuildLightweightWeb3(IHyperPlayConfig config) + { + var projectConfig = ProjectConfigUtilities.Load(); + + return new Web3Builder(projectConfig).Configure(services => + { + services.UseUnityEnvironment(); + services.UseRpcProvider(); + services.UseHyperPlay(config); + }).LaunchAsync(); + } + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs.meta new file mode 100644 index 000000000..1318e4172 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Scripts/HyperPlayWeb3.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7fd38b3373d04c6408afb61a39c01a29 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef new file mode 100644 index 000000000..6944e4657 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef @@ -0,0 +1,16 @@ +{ + "name": "io.chainsafe.web3-unity.hyperplay.runtime", + "rootNamespace": "ChainSafe.Gaming.HyperPlay", + "references": [ + "GUID:5426c6b788696eb4c88f4198b59839eb" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef.meta new file mode 100644 index 000000000..f7631ab52 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/io.chainsafe.web3-unity.hyperplay.runtime.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2de764c29718da4449911a17cfdde636 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/package.json b/Packages/io.chainsafe.web3-unity.hyperplay/package.json new file mode 100644 index 000000000..262bd237b --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/package.json @@ -0,0 +1,33 @@ +{ + "name": "io.chainsafe.web3-unity.hyperplay", + "version": "1.0.0", + "displayName": "web3.unity SDK HyperPlay", + "description": "This package includes the integration of HyperPlay, which you can use with our Gaming SDK.", + "license": "LGPL-3.0-only", + "licensesUrl": "https://github.com/ChainSafe/web3.unity/blob/main/LICENSE", + "documentationUrl": "https://docs.gaming.chainsafe.io/", + "dependencies": { + "com.unity.nuget.newtonsoft-json": "3.0.2", + "io.chainsafe.web3-unity": "2.6.0" + }, + "keywords": [ + "web3", + "ethereum", + "evm", + "blockchain", + "nft", + "hyperplay" + ], + "author": { + "name": "ChainSafe Gaming", + "email": "bd@chainsafe.io", + "url": "https://gaming.chainsafe.io/" + }, + "samples": [ + { + "displayName": "HyperPlay Usage Sample", + "description": "Contains example of integration and usage of HyperPlay functionality.", + "path": "Samples~/Web3.Unity HyperPlay Samples" + } + ] +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/package.json.meta b/Packages/io.chainsafe.web3-unity.hyperplay/package.json.meta new file mode 100644 index 000000000..2829a4dde --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3536bd3009300f64ca0dd11bfea1da39 +PackageManifestImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/scripts/data/duplicate_samples.txt b/scripts/data/duplicate_samples.txt new file mode 100644 index 000000000..485699603 --- /dev/null +++ b/scripts/data/duplicate_samples.txt @@ -0,0 +1,5 @@ +src/UnitySampleProject/Assets/Samples/web3.unity SDK:Web3.Unity Samples:Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/ +src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth:Web3.Unity Web3Auth Samples:Packages/io.chainsafe.web3-unity.web3auth/Samples~/Web3.Unity Web3Auth/ +src/UnitySampleProject/Assets/Samples/web3.unity SDK Lootboxes:Chainlink Lootbox Sample:Packages/io.chainsafe.web3-unity.lootboxes/Samples~/Chainlink Lootbox Samples/ +src/UnitySampleProject/Assets/Samples/web3.unity SDK Ramp:Web3.Unity Ramp Samples:Packages/io.chainsafe.web3-unity.ramp/Samples~/Web3.Unity Ramp Samples/ +src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay:Web3.Unity HyperPlay Samples:Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/ \ No newline at end of file diff --git a/scripts/data/published_dependencies.txt b/scripts/data/published_dependencies.txt index b2fdea8e8..95a06a814 100644 --- a/scripts/data/published_dependencies.txt +++ b/scripts/data/published_dependencies.txt @@ -1,2 +1,3 @@ -Packages/io.chainsafe.web3-unity/Runtime/Libraries/:ADRaffy.ENSNormalize;Nethereum.Model;BouncyCastle.Crypto;Nethereum.RLP;ChainSafe.Gaming.Debugging;Nethereum.RPC;ChainSafe.Gaming.Gelato;ChainSafe.Gaming.SygmaClient;Nethereum.Signer.EIP712;ChainSafe.Gaming.InProcessSigner;Nethereum.Signer;ChainSafe.Gaming.InProcessTransactionExecutor;Nethereum.Util;ChainSafe.Gaming.Unity.ThirdParty;Nethereum.Web3;ChainSafe.Gaming.Unity;System.Buffers;ChainSafe.Gaming.WalletConnect;System.Memory;ChainSafe.Gaming;System.Numerics.Vectors;Microsoft.Bcl.AsyncInterfaces;System.Reactive;Microsoft.Extensions.DependencyInjection.Abstractions;System.Runtime.CompilerServices.Unsafe;Microsoft.Extensions.DependencyInjection;System.Runtime.InteropServices.WindowsRuntime;Microsoft.Extensions.Logging.Abstractions;System.Security.Cryptography.Cng;Microsoft.IdentityModel.Abstractions;System.Text.Encodings.Web;Microsoft.IdentityModel.Logging;System.Text.Json;Microsoft.IdentityModel.Tokens;System.Threading.Channels;NBitcoin;System.Threading.Tasks.Extensions;Nethereum.ABI;WalletConnectSharp.Auth;Nethereum.Accounts;WalletConnectSharp.Common;WalletConnectSharp.Events;Nethereum.BlockchainProcessing;WalletConnectSharp.Core;Nethereum.Contracts;WalletConnectSharp.Crypto;Nethereum.Hex;Nethereum.JsonRpc.Client;WalletConnectSharp.Network.Websocket;Nethereum.JsonRpc.IpcClient;WalletConnectSharp.Network;Nethereum.JsonRpc.RpcClient;WalletConnectSharp.Sign;Nethereum.KeyStore;WalletConnectSharp.Storage;Nethereum.Merkle.Patricia;WalletConnectSharp.Web3Wallet;Nethereum.Merkle;Websocket.Client;Nethereum.Metamask;Nethereum.Siwe.Core;Nethereum.Siwe;Nethereum.UI;Nethereum.Unity.Metamask;Nethereum.Unity;ChainSafe.Gaming.MetaMask;ChainSafe.Gaming.MetaMask.Unity;ChainSafe.Gaming.InProcessTransactionExecutor.Unity;ChainSafe.Gaming.Marketplace;ChainSafe.Gaming.HyperPlay -Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/:Chainsafe.Gaming.Chainlink;ChainSafe.Gaming.Lootboxes.Chainlink \ No newline at end of file +Packages/io.chainsafe.web3-unity/Runtime/Libraries/:ADRaffy.ENSNormalize;Nethereum.Model;BouncyCastle.Crypto;Nethereum.RLP;ChainSafe.Gaming.Debugging;Nethereum.RPC;ChainSafe.Gaming.Gelato;ChainSafe.Gaming.SygmaClient;Nethereum.Signer.EIP712;ChainSafe.Gaming.InProcessSigner;Nethereum.Signer;ChainSafe.Gaming.InProcessTransactionExecutor;Nethereum.Util;ChainSafe.Gaming.Unity.ThirdParty;Nethereum.Web3;ChainSafe.Gaming.Unity;System.Buffers;ChainSafe.Gaming.WalletConnect;System.Memory;ChainSafe.Gaming;System.Numerics.Vectors;Microsoft.Bcl.AsyncInterfaces;System.Reactive;Microsoft.Extensions.DependencyInjection.Abstractions;System.Runtime.CompilerServices.Unsafe;Microsoft.Extensions.DependencyInjection;System.Runtime.InteropServices.WindowsRuntime;Microsoft.Extensions.Logging.Abstractions;System.Security.Cryptography.Cng;Microsoft.IdentityModel.Abstractions;System.Text.Encodings.Web;Microsoft.IdentityModel.Logging;System.Text.Json;Microsoft.IdentityModel.Tokens;System.Threading.Channels;NBitcoin;System.Threading.Tasks.Extensions;Nethereum.ABI;WalletConnectSharp.Auth;Nethereum.Accounts;WalletConnectSharp.Common;WalletConnectSharp.Events;Nethereum.BlockchainProcessing;WalletConnectSharp.Core;Nethereum.Contracts;WalletConnectSharp.Crypto;Nethereum.Hex;Nethereum.JsonRpc.Client;WalletConnectSharp.Network.Websocket;Nethereum.JsonRpc.IpcClient;WalletConnectSharp.Network;Nethereum.JsonRpc.RpcClient;WalletConnectSharp.Sign;Nethereum.KeyStore;WalletConnectSharp.Storage;Nethereum.Merkle.Patricia;WalletConnectSharp.Web3Wallet;Nethereum.Merkle;Websocket.Client;Nethereum.Metamask;Nethereum.Siwe.Core;Nethereum.Siwe;Nethereum.UI;Nethereum.Unity.Metamask;Nethereum.Unity;ChainSafe.Gaming.MetaMask;ChainSafe.Gaming.MetaMask.Unity;ChainSafe.Gaming.InProcessTransactionExecutor.Unity;ChainSafe.Gaming.Marketplace +Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/:Chainsafe.Gaming.Chainlink;ChainSafe.Gaming.Lootboxes.Chainlink +Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/:ChainSafe.Gaming.HyperPlay \ No newline at end of file diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayConfig.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayConfig.cs new file mode 100644 index 000000000..eaf0ebd34 --- /dev/null +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayConfig.cs @@ -0,0 +1,14 @@ +namespace ChainSafe.Gaming.HyperPlay +{ + /// + /// Config for a HyperPlay connection. + /// + public class HyperPlayConfig : IHyperPlayConfig + { + /// + /// Remember the HyperPlay session. + /// Like remember me for login. + /// + public bool RememberSession { get; set; } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayData.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayData.cs new file mode 100644 index 000000000..4822f2748 --- /dev/null +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayData.cs @@ -0,0 +1,20 @@ +using Newtonsoft.Json; + +namespace ChainSafe.Gaming.HyperPlay +{ + /// + /// Concrete implementation of . + /// + public class HyperPlayData : IHyperPlayData + { + [JsonIgnore] + public string StoragePath => "hyperplay-data.json"; + + [JsonIgnore] + public bool LoadOnInitialize => true; + + public bool RememberSession { get; set; } + + public string SavedAccount { get; set; } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs index b71c3671d..f418b75a6 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayExtensions.cs @@ -1,9 +1,12 @@ using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.LocalStorage; using ChainSafe.Gaming.Web3.Build; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Core.Logout; using ChainSafe.Gaming.Web3.Evm.Wallet; using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection.Extensions; namespace ChainSafe.Gaming.HyperPlay { @@ -13,13 +16,18 @@ public static class HyperPlayExtensions /// Binds implementation of as to Web3 as a service. /// /// Service collection to bind implementations to. + /// Config for connecting via HyperPlay. /// The same service collection that was passed in. This enables fluent style. - public static IWeb3ServiceCollection UseHyperPlay(this IWeb3ServiceCollection collection) + public static IWeb3ServiceCollection UseHyperPlay(this IWeb3ServiceCollection collection, IHyperPlayConfig config) { collection.AssertServiceNotBound(); collection.AddSingleton(); + collection.AddSingleton(); + + collection.Replace(ServiceDescriptor.Singleton(typeof(IHyperPlayConfig), config)); + return collection; } @@ -32,7 +40,7 @@ public static IWeb3ServiceCollection UseHyperPlaySigner(this IWeb3ServiceCollect { collection.AssertServiceNotBound(); - collection.AddSingleton(); + collection.AddSingleton(); return collection; } diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs index 8cb8186ad..5e7774bdd 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlayProvider.cs @@ -2,8 +2,11 @@ using System.Threading.Tasks; using ChainSafe.Gaming.Evm; using ChainSafe.Gaming.HyperPlay.Dto; +using ChainSafe.Gaming.LocalStorage; using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Debug; +using ChainSafe.Gaming.Web3.Core.Logout; using ChainSafe.Gaming.Web3.Environment; using ChainSafe.Gaming.Web3.Evm.Wallet; using Nethereum.Signer; @@ -18,18 +21,27 @@ namespace ChainSafe.Gaming.HyperPlay /// public class HyperPlayProvider : WalletProvider { + private readonly IHyperPlayConfig config; + private readonly IHyperPlayData data; + private readonly DataStorage dataStorage; private readonly IHttpClient httpClient; private readonly IChainConfig chainConfig; /// /// Initializes a new instance of the class. /// + /// Injected . + /// Injected . + /// Injected . /// HttpClient to make requests. /// ChainConfig to fetch chain data. /// Injected . - public HyperPlayProvider(IHttpClient httpClient, IChainConfig chainConfig, ChainRegistryProvider chainRegistryProvider) + public HyperPlayProvider(IHyperPlayConfig config, IHyperPlayData data, DataStorage dataStorage, IHttpClient httpClient, IChainConfig chainConfig, ChainRegistryProvider chainRegistryProvider) : base(chainRegistryProvider: chainRegistryProvider) { + this.config = config; + this.data = data; + this.dataStorage = dataStorage; this.httpClient = httpClient; this.chainConfig = chainConfig; } @@ -44,6 +56,12 @@ public override async Task Connect() string account = accounts[0].AssertIsPublicAddress(nameof(account)); + // Saved account exists. + if (data.RememberSession && data.SavedAccount == account) + { + return account; + } + string message = "Sign-in with Ethereum"; string hash = await Perform("personal_sign", message, account); @@ -63,12 +81,25 @@ public override async Task Connect() throw new Web3Exception("Fetched address does not match the signing address."); } + if (config.RememberSession) + { + data.RememberSession = true; + + data.SavedAccount = account; + + await dataStorage.Save(data); + } + return account; } public override Task Disconnect() { - // currently HyperPlay doesn't support disconnecting. + if (data.RememberSession) + { + dataStorage.Clear(data); + } + return Task.CompletedTask; } @@ -94,7 +125,7 @@ public override async Task Perform(string method, params object[] paramete }, }); - string response = (await httpClient.PostRaw("http://localhost:9680/rpc", body, "application/json")).Response; + string response = (await httpClient.PostRaw(config.Url, body, "application/json")).Response; // In case response is just a primitive type like string/number... // Deserializing it directly doesn't work. diff --git a/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs b/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs index fed910337..c829a54cd 100644 --- a/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs +++ b/src/ChainSafe.Gaming.HyperPlay/HyperPlaySigner.cs @@ -2,6 +2,7 @@ using ChainSafe.Gaming.Evm.Signers; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Core.Logout; using ChainSafe.Gaming.Web3.Evm.Wallet; namespace ChainSafe.Gaming.HyperPlay @@ -9,7 +10,7 @@ namespace ChainSafe.Gaming.HyperPlay /// /// Concrete implementation of via HyperPlay desktop client. /// - public class HyperPlaySigner : ISigner, ILifecycleParticipant + public class HyperPlaySigner : ISigner, ILifecycleParticipant, ILogoutHandler { private readonly IWalletProvider walletProvider; @@ -57,5 +58,10 @@ public ValueTask WillStopAsync() { return new ValueTask(Task.CompletedTask); } + + public async Task OnLogout() + { + await walletProvider.Disconnect(); + } } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.HyperPlay/IHyperPlayConfig.cs b/src/ChainSafe.Gaming.HyperPlay/IHyperPlayConfig.cs new file mode 100644 index 000000000..c1019e971 --- /dev/null +++ b/src/ChainSafe.Gaming.HyperPlay/IHyperPlayConfig.cs @@ -0,0 +1,18 @@ +namespace ChainSafe.Gaming.HyperPlay +{ + /// + /// Config for a HyperPlay connection. + /// + public interface IHyperPlayConfig + { + /// + /// Url for connecting to HyperPlay desktop client. + /// + public string Url => "http://localhost:9680/rpc"; + + /// + /// Remember a connected session. + /// + public bool RememberSession { get; set; } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming.HyperPlay/IHyperPlayData.cs b/src/ChainSafe.Gaming.HyperPlay/IHyperPlayData.cs new file mode 100644 index 000000000..c53dad351 --- /dev/null +++ b/src/ChainSafe.Gaming.HyperPlay/IHyperPlayData.cs @@ -0,0 +1,21 @@ +using ChainSafe.Gaming.LocalStorage; + +namespace ChainSafe.Gaming.HyperPlay +{ + /// + /// data for HyperPlay. + /// Persisted data for HyperPlay. + /// + public interface IHyperPlayData : IStorable + { + /// + /// Remember session from a previous connection. + /// + public bool RememberSession { get; set; } + + /// + /// Saved account from a previous session. + /// + public string SavedAccount { get; set; } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming/LocalStorage/DataStorage.cs b/src/ChainSafe.Gaming/LocalStorage/DataStorage.cs new file mode 100644 index 000000000..2a6d00e17 --- /dev/null +++ b/src/ChainSafe.Gaming/LocalStorage/DataStorage.cs @@ -0,0 +1,138 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Environment; +using Newtonsoft.Json; + +namespace ChainSafe.Gaming.LocalStorage +{ + /// + /// Default implementation of the component responsible for storage of persistent data. + /// + public class DataStorage + { + private readonly IEnumerable store; + private readonly IOperatingSystemMediator osMediator; + private readonly ILogWriter logWriter; + + /// + /// Initializes a new instance of the class. + /// + /// All injected . + /// Injected . + /// Injected . + public DataStorage(IEnumerable store, IOperatingSystemMediator osMediator, ILogWriter logWriter) + { + this.store = store; + this.osMediator = osMediator; + this.logWriter = logWriter; + } + + /// + /// Initialize all storable data. + /// + /// Awaitable task for Initialize operation. + public async Task Initialize() + { + foreach (var storable in store) + { + if (storable.LoadOnInitialize && Exists(AbsolutePath(storable.StoragePath))) + { + await Load(storable); + } + } + } + + /// + /// Save storable data to local storage. + /// + /// Storable data to be saved. + /// Create new file if file doesn't exist. + /// Type of Storable to be saved. Helps for serializing. + /// Awaitable Task for save operation. + public async Task Save(T storable, bool createFile = true) + where T : IStorable + { + var path = AbsolutePath(storable.StoragePath); + + if (!createFile && !Exists(path)) + { + return; + } + + try + { + var json = JsonConvert.SerializeObject(storable); + + await File.WriteAllTextAsync(path, json); + } + catch (Exception e) + { + logWriter.LogError($"Failed to save {storable.StoragePath} : {e.Message} : {e}"); + } + } + + /// + /// Load storable data from local storage. + /// + /// Storable data to be loaded. + /// Type of Storable to be loaded. Helps for deserializing. + /// Awaitable Task for load operation. + public async Task Load(T storable) + where T : IStorable + { + var path = AbsolutePath(storable.StoragePath); + + if (!Exists(path)) + { + logWriter.LogError($"Failed to load {storable.StoragePath} : File not found."); + + return; + } + + try + { + var json = await File.ReadAllTextAsync(path); + + JsonConvert.PopulateObject(json, storable); + } + catch + { + logWriter.LogError($"Local data file for {storable.StoragePath} is corrupted. Removing.."); + + File.Delete(path); + } + } + + /// + /// Clear storable data from local storage. + /// + /// Storable data to be cleared. + public void Clear(IStorable storable) + { + string path = AbsolutePath(storable.StoragePath); + + if (!Exists(path)) + { + logWriter.LogError($"Failed to clear {storable.StoragePath} : File not found."); + + return; + } + + File.Delete(path); + } + + private bool Exists(string path) + { + return File.Exists(path); + } + + private string AbsolutePath(string path) + { + return Path.Combine(osMediator.AppPersistentDataPath, path); + } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming/LocalStorage/IStorable.cs b/src/ChainSafe.Gaming/LocalStorage/IStorable.cs new file mode 100644 index 000000000..169453389 --- /dev/null +++ b/src/ChainSafe.Gaming/LocalStorage/IStorable.cs @@ -0,0 +1,18 @@ +namespace ChainSafe.Gaming.LocalStorage +{ + /// + /// Storable data for local storage. + /// + public interface IStorable + { + /// + /// Path to store the data. + /// + public string StoragePath { get; } + + /// + /// Load data on initialize. + /// + public bool LoadOnInitialize { get; } + } +} \ No newline at end of file diff --git a/src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs b/src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs index 37711f860..57958a8c2 100644 --- a/src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs @@ -3,7 +3,7 @@ using ChainSafe.Gaming.Evm; using ChainSafe.Gaming.Evm.Contracts; using ChainSafe.Gaming.Evm.Contracts.BuiltIn; -using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.LocalStorage; using ChainSafe.Gaming.Web3.Core.Evm.EventPoller; using ChainSafe.Gaming.Web3.Core.Logout; using ChainSafe.Gaming.Web3.Environment; @@ -25,6 +25,7 @@ private Web3Builder() // Bind default services serviceCollection .UseEventPoller() + .AddSingleton() .AddSingleton() .AddSingleton() .AddSingleton() diff --git a/src/ChainSafe.Gaming/Web3/Core/Web3.cs b/src/ChainSafe.Gaming/Web3/Core/Web3.cs index 1e6d6db97..74bd4c340 100644 --- a/src/ChainSafe.Gaming/Web3/Core/Web3.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Web3.cs @@ -5,6 +5,7 @@ using ChainSafe.Gaming.Evm.Contracts.BuiltIn; using ChainSafe.Gaming.Evm.Providers; using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.LocalStorage; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; using ChainSafe.Gaming.Web3.Core.Logout; @@ -24,6 +25,7 @@ public class Web3 : IAsyncDisposable private readonly ITransactionExecutor? transactionExecutor; private readonly IEvmEvents? events; private readonly ILogoutManager logoutManager; + private readonly DataStorage dataStorage; private bool initialized; private bool terminated; @@ -39,6 +41,7 @@ internal Web3(ServiceProvider serviceProvider) ProjectConfig = serviceProvider.GetRequiredService(); ChainConfig = serviceProvider.GetRequiredService(); logoutManager = this.serviceProvider.GetRequiredService(); + dataStorage = this.serviceProvider.GetRequiredService(); Erc20 = this.serviceProvider.GetRequiredService(); Erc721 = this.serviceProvider.GetRequiredService(); Erc1155 = this.serviceProvider.GetRequiredService(); @@ -108,6 +111,8 @@ async ValueTask IAsyncDisposable.DisposeAsync() internal async ValueTask InitializeAsync() { + await dataStorage.Initialize(); + foreach (var lifecycleParticipant in serviceProvider.GetServices()) { await lifecycleParticipant.WillStartAsync(); @@ -141,7 +146,7 @@ public async ValueTask TerminateAsync(bool logout = false) } } - serviceProvider.Dispose(); + await serviceProvider.DisposeAsync(); terminated = true; } diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay.meta new file mode 100644 index 000000000..e31cd1d39 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 75427b31abfe3df4cac0a541e61a77fd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0.meta new file mode 100644 index 000000000..2a6c792ca --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e3d4519bbfe0064b9144f4635cafd27 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample.meta new file mode 100644 index 000000000..2d377d24b --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c08bb86b42cf5254096d24c0240b9027 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes.meta new file mode 100644 index 000000000..be3471699 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d14fc9e97141fe548bdeadfc8bfa5fb0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - HyperPlay.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity similarity index 82% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - HyperPlay.unity rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity index 7ad506231..33c6ecd11 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - HyperPlay.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity @@ -326,6 +326,217 @@ MonoBehaviour: gelatoApiKey: 7MFQqyGS1Iui_e_MgmFW1BfbFeJ06g8nnL2oUTlIJug_ errorPopup: {fileID: 314965761} loginButton: {fileID: 2048731599} + rememberMeToggle: {fileID: 1755680257} +--- !u!1 &482586192 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 482586193} + - component: {fileID: 482586195} + - component: {fileID: 482586194} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &482586193 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 482586192} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 859742331} + m_Father: {fileID: 1755680255} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 0.25, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -44, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &482586194 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 482586192} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &482586195 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 482586192} + m_CullTransparentMesh: 1 +--- !u!1 &669337707 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 669337708} + - component: {fileID: 669337710} + - component: {fileID: 669337709} + m_Layer: 5 + m_Name: Label + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &669337708 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 669337707} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1755680255} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.25, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -75, y: 0} + m_SizeDelta: {x: -150, y: -30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &669337709 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 669337707} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Remember me + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: b137a8f4bbcdafc439306c89bed89215, type: 2} + m_sharedMaterial: {fileID: 7077468325371864899, guid: b137a8f4bbcdafc439306c89bed89215, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294111986 + m_fontColor: {r: 0.95, g: 0.95, b: 0.95, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 18 + m_fontSizeBase: 18 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 8 + m_fontSizeMax: 36 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 0 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &669337710 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 669337707} + m_CullTransparentMesh: 1 --- !u!1 &740974330 GameObject: m_ObjectHideFlags: 0 @@ -632,6 +843,81 @@ RectTransform: m_AnchoredPosition: {x: 0, y: -25} m_SizeDelta: {x: -50, y: -50} m_Pivot: {x: 0.5, y: 1} +--- !u!1 &859742330 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 859742331} + - component: {fileID: 859742333} + - component: {fileID: 859742332} + m_Layer: 5 + m_Name: Checkmark + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &859742331 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 859742330} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 482586193} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &859742332 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 859742330} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &859742333 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 859742330} + m_CullTransparentMesh: 1 --- !u!1 &893732502 GameObject: m_ObjectHideFlags: 0 @@ -755,6 +1041,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 2048731596} + - {fileID: 1755680255} m_Father: {fileID: 740974331} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -1447,6 +1734,113 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1572088722} m_CullTransparentMesh: 1 +--- !u!1 &1755680254 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1755680255} + - component: {fileID: 1755680257} + - component: {fileID: 1755680256} + m_Layer: 5 + m_Name: Toggle - Remember Me + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1755680255 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1755680254} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 482586193} + - {fileID: 669337708} + m_Father: {fileID: 956735924} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1755680256 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1755680254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &1755680257 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1755680254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 482586194} + toggleTransition: 1 + graphic: {fileID: 859742332} + m_Group: {fileID: 0} + onValueChanged: + m_PersistentCalls: + m_Calls: [] + m_IsOn: 0 --- !u!1 &1812470005 GameObject: m_ObjectHideFlags: 0 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - HyperPlay.unity.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin - HyperPlay.unity.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts.meta new file mode 100644 index 000000000..634ad428e --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2d9c25322424d4f41a30626fdfd56e0e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs new file mode 100644 index 000000000..7ccf6694d --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs @@ -0,0 +1,57 @@ +using ChainSafe.Gaming.HyperPlay; +using ChainSafe.Gaming.UnityPackage.Common; +using ChainSafe.Gaming.Web3.Build; +using Microsoft.Extensions.DependencyInjection; +using Scenes; +using UnityEngine; +using UnityEngine.UI; + +/// +/// Login using HyperPlay desktop client. +/// +public class HyperPlayLoginProvider : LoginProvider, IWeb3BuilderServiceAdapter +{ + [SerializeField] private Button loginButton; + [SerializeField] private Toggle rememberMeToggle; + + private bool _storedSessionAvailable; + + protected override async void Initialize() + { + base.Initialize(); + + _storedSessionAvailable = false; + + await using (var lightWeb3 = await HyperPlayWeb3.BuildLightweightWeb3(new HyperPlayConfig())) + { + var data = lightWeb3.ServiceProvider.GetService(); + + _storedSessionAvailable = data.RememberSession; + } + + if (_storedSessionAvailable) // auto-login + { + Debug.Log("Proceeding with auto-login."); + + await TryLogin(); + } + + loginButton.onClick.AddListener(OnLoginClicked); + } + + public Web3Builder ConfigureServices(Web3Builder web3Builder) + { + return web3Builder.Configure(services => + { + services.UseHyperPlay(new HyperPlayConfig + { + RememberSession = rememberMeToggle.isOn || _storedSessionAvailable, + }).UseHyperPlaySigner().UseHyperPlayTransactionExecutor(); + }); + } + + private async void OnLoginClicked() + { + await TryLogin(); + } +} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/HyperPlayLoginProvider.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/HyperPlayLoginProvider.cs.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/HyperPlayLoginProvider.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/HyperPlayLoginProvider.cs deleted file mode 100644 index c6230a0c0..000000000 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/HyperPlayLoginProvider.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using ChainSafe.Gaming.HyperPlay; -using ChainSafe.Gaming.UnityPackage.Common; -using ChainSafe.Gaming.WalletConnect; -using ChainSafe.Gaming.Web3.Build; -using Scenes; -using UnityEngine; -using UnityEngine.UI; - -/// -/// Login using HyperPlay desktop client. -/// -public class HyperPlayLoginProvider : LoginProvider, IWeb3BuilderServiceAdapter -{ - [SerializeField] private Button loginButton; - - protected override void Initialize() - { - base.Initialize(); - - loginButton.onClick.AddListener(OnLoginClicked); - } - - public Web3Builder ConfigureServices(Web3Builder web3Builder) - { - return web3Builder.Configure(services => - { - services.UseHyperPlay().UseHyperPlaySigner().UseHyperPlayTransactionExecutor(); - }); - } - - private async void OnLoginClicked() - { - await TryLogin(); - } -} diff --git a/src/UnitySampleProject/Packages/manifest.json b/src/UnitySampleProject/Packages/manifest.json index 154d659ff..c677282c4 100644 --- a/src/UnitySampleProject/Packages/manifest.json +++ b/src/UnitySampleProject/Packages/manifest.json @@ -9,9 +9,11 @@ "com.unity.textmeshpro": "3.0.6", "com.unity.timeline": "1.7.6", "com.unity.toolchain.macos-arm64-linux-x86_64": "2.0.0", + "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.9", "com.unity.ugui": "1.0.0", "com.unity.visualscripting": "1.9.4", "io.chainsafe.web3-unity": "file:../../../Packages/io.chainsafe.web3-unity", + "io.chainsafe.web3-unity.hyperplay": "file:../../../Packages/io.chainsafe.web3-unity.hyperplay", "io.chainsafe.web3-unity.lootboxes": "file:../../../Packages/io.chainsafe.web3-unity.lootboxes", "io.chainsafe.web3-unity.ramp": "file:../../../Packages/io.chainsafe.web3-unity.ramp", "io.chainsafe.web3-unity.web3auth": "file:../../../Packages/io.chainsafe.web3-unity.web3auth", diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index 24307719a..27ac78b2f 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -54,18 +54,18 @@ "url": "https://packages.unity.com" }, "com.unity.sysroot": { - "version": "2.0.7", + "version": "2.0.10", "depth": 1, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.sysroot.linux-x86_64": { - "version": "2.0.6", + "version": "2.0.9", "depth": 1, "source": "registry", "dependencies": { - "com.unity.sysroot": "2.0.7" + "com.unity.sysroot": "2.0.10" }, "url": "https://packages.unity.com" }, @@ -111,6 +111,16 @@ }, "url": "https://packages.unity.com" }, + "com.unity.toolchain.win-x86_64-linux-x86_64": { + "version": "2.0.9", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.10", + "com.unity.sysroot.linux-x86_64": "2.0.9" + }, + "url": "https://packages.unity.com" + }, "com.unity.ugui": { "version": "1.0.0", "depth": 0, @@ -139,6 +149,15 @@ "com.unity.textmeshpro": "3.0.6" } }, + "io.chainsafe.web3-unity.hyperplay": { + "version": "file:../../../Packages/io.chainsafe.web3-unity.hyperplay", + "depth": 0, + "source": "local", + "dependencies": { + "com.unity.nuget.newtonsoft-json": "3.0.2", + "io.chainsafe.web3-unity": "2.5.0" + } + }, "io.chainsafe.web3-unity.lootboxes": { "version": "file:../../../Packages/io.chainsafe.web3-unity.lootboxes", "depth": 0, From 578598d50fd3928499181e8905cb21120eeb8710 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Thu, 30 May 2024 22:41:33 +0800 Subject: [PATCH 81/97] Marketplace package (#988) * Marketplace package Marketplace package * Compilation conditionals added to sample scripts Compilation conditionals added to sample scripts * Cleanup Cleanup * Almost there Almost there * Update DisableGameObjectIfServiceNotActive.cs * assembly defs assembly defs * Package json Package json * testing testing * Update io.chainsafe.web3-unity.marketplace.runtime.asmdef * Defines via asmdef Defines via asmdef * Adding MARKETPLACE_AVAILABLE "on demand" * Adding csc.rsp file because for our project in general should be gucci. * Login fix Login fix * Update SampleMain.unity * Update SampleMain.unity * Update CscImporter.cs * Update CscImporter.cs * Fixes Fixes * Remove debug * Fixes Fixes * Fixes * Fix Fix * Update package.json * Fix for csc.rsp * Meta file changed? * Celanup * Moving IPFS back to samples Moving IPFS back to samples & fixing package duplicates. * Update .gitignore * Update .gitignore * samples samples * Update .gitignore * Update Update * Fixes Fixes * Remove deadfiles Remove deadfiles --------- Co-authored-by: Nikola Garabandic --- Packages/.gitignore | 1 + .../Editor.meta} | 2 +- .../Editor/CscImporter.cs | 49 +++ .../Editor/CscImporter.cs.meta} | 2 +- .../Runtime.meta | 2 +- .../Runtime/Scripts.meta | 8 + .../Runtime/Scripts}/Marketplace.meta | 2 +- .../Scripts}/Marketplace/Marketplace.cs | 1 - .../Scripts}/Marketplace/Marketplace.cs.meta | 0 ...safe.web3-unity.marketplace.runtime.asmdef | 23 + ...web3-unity.marketplace.runtime.asmdef.meta | 7 + .../package.json | 27 ++ .../package.json.meta | 7 + .../Editor/MarketplaceDefineLeftoverCheck.cs | 83 ++++ .../MarketplaceDefineLeftoverCheck.cs.meta} | 2 +- .../FileUploader/MacOSFilePicker.dylib | Bin .../Runtime/Scripts/EVM/Marketplace.meta | 9 +- .../Runtime/Scripts/EVM/Token/Evm.cs | 2 +- .../Runtime/Scripts/{EVM => }/IPFS.meta | 2 +- .../Runtime/Scripts/{EVM => }/IPFS/IPFS.cs | 2 +- .../Scripts/{EVM => }/IPFS/IPFS.cs.meta | 0 .../Scripts/{EVM => }/IPFS/ImageUploader.cs | 2 +- .../{EVM => }/IPFS/ImageUploader.cs.meta | 0 .../Scripts/{EVM => }/IPFS/UploadPlatforms.cs | 8 +- .../{EVM => }/IPFS/UploadPlatforms.cs.meta | 0 .../Web3.Unity/Scenes/SampleMain.unity | 394 ++++++++++-------- .../Web3.Unity/Scripts/Samples.asmdef | 3 +- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 84 ---- .../Marketplace/MarketplaceCalls.cs | 273 ------------ src/UnitySampleProject/.gitignore | 1 + .../Scenes/SampleMain.unity | 394 ++++++++++-------- .../Web3.Unity Samples/Scripts/Samples.asmdef | 3 +- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 2 +- .../Scenes/SampleMain/Marketplace.meta | 2 +- .../Marketplace/MarketplaceCalls.cs | 4 +- .../DisableGameObjectIfServiceNotActive.cs | 13 +- src/UnitySampleProject/Assets/csc.rsp.meta | 7 + src/UnitySampleProject/Packages/manifest.json | 1 + .../Packages/packages-lock.json | 9 + .../ProjectSettings/ProjectSettings.asset | 61 +-- 40 files changed, 705 insertions(+), 787 deletions(-) rename Packages/{io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta => io.chainsafe.web3-unity.marketplace/Editor.meta} (77%) create mode 100644 Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs rename Packages/{io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta => io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs.meta} (83%) rename src/UnitySampleProject/Assets/Plugins.meta => Packages/io.chainsafe.web3-unity.marketplace/Runtime.meta (77%) create mode 100644 Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts.meta rename Packages/{io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain => io.chainsafe.web3-unity.marketplace/Runtime/Scripts}/Marketplace.meta (77%) rename Packages/{io.chainsafe.web3-unity/Runtime/Scripts/EVM => io.chainsafe.web3-unity.marketplace/Runtime/Scripts}/Marketplace/Marketplace.cs (99%) rename Packages/{io.chainsafe.web3-unity/Runtime/Scripts/EVM => io.chainsafe.web3-unity.marketplace/Runtime/Scripts}/Marketplace/Marketplace.cs.meta (100%) create mode 100644 Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef create mode 100644 Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef.meta create mode 100644 Packages/io.chainsafe.web3-unity.marketplace/package.json create mode 100644 Packages/io.chainsafe.web3-unity.marketplace/package.json.meta create mode 100644 Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs rename Packages/io.chainsafe.web3-unity/{Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta => Editor/MarketplaceDefineLeftoverCheck.cs.meta} (83%) mode change 100755 => 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS.meta (77%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS/IPFS.cs (99%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS/IPFS.cs.meta (100%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS/ImageUploader.cs (92%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS/ImageUploader.cs.meta (100%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS/UploadPlatforms.cs (99%) rename Packages/io.chainsafe.web3-unity/Runtime/Scripts/{EVM => }/IPFS/UploadPlatforms.cs.meta (100%) delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs create mode 100644 src/UnitySampleProject/Assets/csc.rsp.meta diff --git a/Packages/.gitignore b/Packages/.gitignore index 2b9291d09..7a710cb0d 100644 --- a/Packages/.gitignore +++ b/Packages/.gitignore @@ -93,6 +93,7 @@ crashlytics-build.properties /io.chainsafe.web3-unity.lootboxes/Samples~/* /io.chainsafe.web3-unity.ramp/Samples~/* /io.chainsafe.web3-unity.web3auth/Samples~/* +/io.chainsafe.web3-unity.marketplace/Samples~/* # Since the folder is called 'Debug', it's being ignored, so negate that !/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/Debug \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta b/Packages/io.chainsafe.web3-unity.marketplace/Editor.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta rename to Packages/io.chainsafe.web3-unity.marketplace/Editor.meta index 379f2d5e5..b97cf0f0a 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta +++ b/Packages/io.chainsafe.web3-unity.marketplace/Editor.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b70d421e7223b8049aaf18e07497da9b +guid: 079c8322735d43a44b851753cad52f5e folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs b/Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs new file mode 100644 index 000000000..2a33642e6 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs @@ -0,0 +1,49 @@ +using UnityEditor; +using System.IO; +using UnityEngine; + +[InitializeOnLoad] +public class CscRspChecker +{ + private static string defineSymbol = "MARKETPLACE_AVAILABLE"; + private static string cscRspPath = Path.Combine(Application.dataPath, "csc.rsp"); + private static bool initialized; + + static CscRspChecker() + { + + CheckAndCreateCscRsp(); + } + + private static void CheckAndCreateCscRsp() + { + if (File.Exists(cscRspPath)) + { + // Read all lines from the file + var lines = File.ReadAllLines(cscRspPath); + var containsDefine = false; + // Check if any line contains the required define + foreach (var line in lines) + { + if (line.Contains($"-define:{defineSymbol}")) + { + containsDefine = true; + break; + } + } + // If define is not found, append it to the file + if (!containsDefine) + { + File.AppendAllText(cscRspPath, $"\n-define:{defineSymbol}"); + Debug.Log($"{defineSymbol} define added to csc.rsp file."); + } + } + else + { + // If the file does not exist, create it and add define + File.WriteAllText(cscRspPath, $"-define:{defineSymbol}"); + Debug.Log($"csc.rsp file created with {defineSymbol} define."); + } + initialized = true; + } +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta b/Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta rename to Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs.meta index 17b02f290..1103d5417 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta +++ b/Packages/io.chainsafe.web3-unity.marketplace/Editor/CscImporter.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d447d1e7a64b28a4295aca07791c5557 +guid: 0182abe6c136df64992eed91e4d911af MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/src/UnitySampleProject/Assets/Plugins.meta b/Packages/io.chainsafe.web3-unity.marketplace/Runtime.meta similarity index 77% rename from src/UnitySampleProject/Assets/Plugins.meta rename to Packages/io.chainsafe.web3-unity.marketplace/Runtime.meta index d6aee3f43..c73932036 100644 --- a/src/UnitySampleProject/Assets/Plugins.meta +++ b/Packages/io.chainsafe.web3-unity.marketplace/Runtime.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 417e8c78dd05ca5428a1d30e8ffefc0a +guid: d332d9b15b9441c4990ccf8277bd2fd2 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts.meta b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts.meta new file mode 100644 index 000000000..4fb026768 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9c12c3d86a0c0b541b9ec244ea4c1458 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta rename to Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace.meta index 8866f7cff..794a0c34c 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta +++ b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b7c5ee5d62f1b3647af14571b3f4225e +guid: f0f9d73ee8157af45a4e30aaebd4d926 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace/Marketplace.cs similarity index 99% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs rename to Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace/Marketplace.cs index 37767cf1a..4d7a6df11 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs +++ b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace/Marketplace.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; using System.Numerics; -using System.Runtime.InteropServices; using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.UnityPackage.Model; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs.meta b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace/Marketplace.cs.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace/Marketplace.cs.meta rename to Packages/io.chainsafe.web3-unity.marketplace/Runtime/Scripts/Marketplace/Marketplace.cs.meta diff --git a/Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef new file mode 100644 index 000000000..3334b59fa --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef @@ -0,0 +1,23 @@ +{ + "name": "io.chainsafe.web3-unity.marketplace.runtime", + "rootNamespace": "ChainSafe.Gaming.Marketplace", + "references": [ + "GUID:5426c6b788696eb4c88f4198b59839eb", + "GUID:1e69005fbbf5a4cd0a6c61596a74886e" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [ + { + "name": "Unity", + "expression": "", + "define": "MARKETPLACE_AVAILABLE" + } + ], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef.meta b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef.meta new file mode 100644 index 000000000..86440f7f7 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.marketplace/Runtime/io.chainsafe.web3-unity.marketplace.runtime.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: beb3cfa44e4e012468271dba212943b0 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.marketplace/package.json b/Packages/io.chainsafe.web3-unity.marketplace/package.json new file mode 100644 index 000000000..32e01f9c0 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.marketplace/package.json @@ -0,0 +1,27 @@ +{ + "name": "io.chainsafe.web3-unity.marketplace", + "version": "1.0.0", + "displayName": "web3.unity SDK Marketplace", + "description": "This package includes the integration of ChainSafe's marketplace service, which you can use with our Gaming SDK.", + "license": "LGPL-3.0-only", + "licensesUrl": "https://github.com/ChainSafe/web3.unity/blob/main/LICENSE", + "documentationUrl": "https://docs.gaming.chainsafe.io/", + "dependencies": { + "com.unity.nuget.newtonsoft-json": "3.0.2", + "io.chainsafe.web3-unity": "2.6.0" + }, + "keywords": [ + "web3", + "ethereum", + "evm", + "blockchain", + "nft", + "marketplace" + ], + "author": { + "name": "ChainSafe Gaming", + "email": "bd@chainsafe.io", + "url": "https://gaming.chainsafe.io/" + }, + "samples": [] +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.marketplace/package.json.meta b/Packages/io.chainsafe.web3-unity.marketplace/package.json.meta new file mode 100644 index 000000000..217ee69ec --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.marketplace/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 699ac64965427964d8c84088828c5fc2 +PackageManifestImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs b/Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs new file mode 100644 index 000000000..64df33351 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs @@ -0,0 +1,83 @@ +#if MARKETPLACE_AVAILABLE +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEditor.PackageManager; +using UnityEditor.PackageManager.Requests; +using UnityEngine; + +[InitializeOnLoad] +public static class MarketplaceDefineLeftoverCheck +{ + // To store package list request + private static ListRequest listRequest; + + // The package name you want to check + private static string packageName = "io.chainsafe.web3-unity.marketplace"; + + static MarketplaceDefineLeftoverCheck() + { + Events.registeredPackages += OnPackagesChanged; + } + + private static void OnPackagesChanged(PackageRegistrationEventArgs obj) + { + if (obj.removed.Any(x => x.name == packageName)) + { + RemoveCrcRspDefine(); + } + } + + + private static void CheckForPackage() + { + listRequest = Client.List(false); // Start the package list request + while (listRequest.IsCompleted == false) ; + Debug.Log("OK I AM HERE"); + var packageFound = false; + foreach (var package in listRequest.Result) + { + Debug.Log(package.name); + if (package.name == packageName) + { + packageFound = true; + break; + } + } + + if(!packageFound) + RemoveCrcRspDefine(); + } + + private static void RemoveCrcRspDefine() + { + Debug.Log("HHHH"); + var cscRspPath = Path.Combine(Application.dataPath, "csc.rsp"); + if (!File.Exists(cscRspPath)) + return; + // Read all lines from the file + var lines = File.ReadAllLines(cscRspPath); + + if(lines.Length == 1 && lines[0].Contains("-define:MARKETPLACE_AVAILABLE")) + { + AssetDatabase.DeleteAsset("Assets/csc.rsp"); + return; + } + + + // Initialize a list to hold modified lines + var modifiedLines = new List(); + + // Check each line and replace the text + foreach (var line in lines) + { + var modifiedLine = line.Replace("-define:MARKETPLACE_AVAILABLE", ""); + modifiedLines.Add(modifiedLine); + } + + // Write the modified lines back to the file + File.WriteAllLines(cscRspPath, modifiedLines.ToArray()); + } +} +#endif diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta b/Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta rename to Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs.meta index dfa434674..4e42b8f2d 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta +++ b/Packages/io.chainsafe.web3-unity/Editor/MarketplaceDefineLeftoverCheck.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 9a86b695c20675b43ba7a0f0a496749c +guid: 082d4d909f45f0944b8fe02c6f06764c MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/FileUploader/MacOSFilePicker.dylib old mode 100755 new mode 100644 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta index cb09d1a99..c4c592e4e 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Marketplace.meta @@ -1,3 +1,8 @@ -fileFormatVersion: 2 +fileFormatVersion: 2 guid: c407fec31cb14d20a43ae85cf2b9ace5 -timeCreated: 1715161231 \ No newline at end of file +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs index 1ede53ad2..e712b951c 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Evm.cs @@ -13,7 +13,7 @@ using Nethereum.Signer; using Nethereum.Util; using UnityEngine; -using Web3Unity.Scripts.Library.IPFS; +using ChainSafe.Gaming.Marketplace; namespace Scripts.EVM.Token { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS.meta index 2c09b35a4..b238f426b 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS.meta +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 3f068c0bc1723fd41ae1fba82a1ed3e5 +guid: 92107d9c380c6634597b1776a5421157 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/IPFS.cs similarity index 99% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/IPFS.cs index 8eab80e97..f80c0cb5e 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/IPFS.cs @@ -9,7 +9,7 @@ using UnityEngine; using UnityEngine.Networking; -namespace Web3Unity.Scripts.Library.IPFS +namespace ChainSafe.Gaming.Marketplace { public static class IPFS { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/IPFS.cs.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/IPFS.cs.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/IPFS.cs.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/ImageUploader.cs similarity index 92% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/ImageUploader.cs index adec2d7b5..cd95ebcd0 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/ImageUploader.cs @@ -1,7 +1,7 @@ using Scripts.EVM.Remote; using UnityEngine; -namespace ChainSafe.Gaming +namespace ChainSafe.Gaming.Marketplace { public class ImageUploader : MonoBehaviour { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/ImageUploader.cs.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/ImageUploader.cs.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/ImageUploader.cs.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/UploadPlatforms.cs similarity index 99% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/UploadPlatforms.cs index 4a0c3ec56..237affebf 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/UploadPlatforms.cs @@ -10,7 +10,6 @@ public class UploadPlatforms #region Fields - public static event EventHandler ImageSelected; #endregion @@ -39,7 +38,7 @@ public static async Task GetImageData() #elif UNITY_IOS imageData = await UploadImageIOS(); return imageData; -#else + #else Debug.LogError("File picking is not implemented for this platform."); return null; #endif @@ -219,7 +218,7 @@ private static void OnFileSelectedMac(string path) } #endif -#if UNITY_IOS + #if UNITY_IOS [DllImport("__Internal")] private static extern void showActionSheet(string title, string[] allowedFileTypes, int allowedFileTypesCount, IntPtr callback); @@ -251,6 +250,7 @@ private static void OnFileSelectediOS(IntPtr pathPtr) string path = Marshal.PtrToStringAnsi(pathPtr); tcs.SetResult(path); } -#endif + #endif + #endregion } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/UploadPlatforms.cs.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/IPFS/UploadPlatforms.cs.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/IPFS/UploadPlatforms.cs.meta diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity index 6bc95b455..06ba2d80f 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity @@ -242,7 +242,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -755,7 +755,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -1100,11 +1100,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 38231113} m_PrefabAsset: {fileID: 0} ---- !u!224 &38231115 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 38231113} - m_PrefabAsset: {fileID: 0} --- !u!114 &38231116 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1125,6 +1120,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &38231117 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 38231113} + m_PrefabAsset: {fileID: 0} --- !u!1 &67264513 GameObject: m_ObjectHideFlags: 0 @@ -1508,7 +1508,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 5 + value: 4 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -1667,11 +1667,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 198462057} m_PrefabAsset: {fileID: 0} ---- !u!224 &198462059 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 198462057} - m_PrefabAsset: {fileID: 0} --- !u!114 &198462060 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1692,6 +1687,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &198462061 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 198462057} + m_PrefabAsset: {fileID: 0} --- !u!1001 &199502200 PrefabInstance: m_ObjectHideFlags: 0 @@ -1715,7 +1715,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -2108,6 +2108,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 199502206} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 199502207} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &199502201 stripped RectTransform: @@ -2155,6 +2158,19 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!114 &199502207 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 199502205} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 3 --- !u!1 &213321590 GameObject: m_ObjectHideFlags: 0 @@ -2393,11 +2409,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 232490226} m_PrefabAsset: {fileID: 0} ---- !u!224 &232490228 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 232490226} - m_PrefabAsset: {fileID: 0} --- !u!114 &232490229 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2418,6 +2429,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &232490230 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 232490226} + m_PrefabAsset: {fileID: 0} --- !u!1001 &242508241 PrefabInstance: m_ObjectHideFlags: 0 @@ -2595,11 +2611,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 242508241} m_PrefabAsset: {fileID: 0} ---- !u!224 &242508243 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 242508241} - m_PrefabAsset: {fileID: 0} --- !u!114 &242508244 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2620,6 +2631,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &242508245 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 242508241} + m_PrefabAsset: {fileID: 0} --- !u!1001 &246667300 PrefabInstance: m_ObjectHideFlags: 0 @@ -2739,7 +2755,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -2981,7 +2997,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3151,7 +3167,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.2243478 + m_Size: 0.18288729 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -3371,11 +3387,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 413551942} m_PrefabAsset: {fileID: 0} ---- !u!224 &413551944 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 413551942} - m_PrefabAsset: {fileID: 0} --- !u!114 &413551945 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3396,6 +3407,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &413551946 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 413551942} + m_PrefabAsset: {fileID: 0} --- !u!1 &424437031 GameObject: m_ObjectHideFlags: 0 @@ -3713,11 +3729,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 468027688} m_PrefabAsset: {fileID: 0} ---- !u!224 &468027690 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 468027688} - m_PrefabAsset: {fileID: 0} --- !u!114 &468027691 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3738,6 +3749,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &468027692 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 468027688} + m_PrefabAsset: {fileID: 0} --- !u!1001 &491434542 PrefabInstance: m_ObjectHideFlags: 0 @@ -3955,7 +3971,7 @@ MonoBehaviour: collectionContract721: Set 721 collection to mint to uri721: Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a collectionContract1155: Set 1155 collection to mint to - uri1155: Set 721 collection to mint to https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + uri1155: Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a amount1155: Set amount of Nfts to mint i.e 1 marketplaceName: Set marketplace name marketplaceDescription: Set marketplace description @@ -3964,7 +3980,7 @@ MonoBehaviour: weiPriceToList: Set price in wei to list for i.e 100000000000000 marketplaceContractToListTo: Set marketplace contract to list to collectionContractToList: Set collection contract to list from - marketplaceContractToBuyFrom: Set marketplace contract to list to + marketplaceContractToBuyFrom: Set marketplace contract to buy from tokenIdToBuy: Set token ID to buy weiPriceToBuy: Set price in wei to buy with i.e 100000000000000 --- !u!1 &519420028 @@ -4236,11 +4252,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 526139424} m_PrefabAsset: {fileID: 0} ---- !u!224 &526139426 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 526139424} - m_PrefabAsset: {fileID: 0} --- !u!114 &526139427 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4261,6 +4272,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &526139428 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 526139424} + m_PrefabAsset: {fileID: 0} --- !u!1001 &553675705 PrefabInstance: m_ObjectHideFlags: 0 @@ -4380,7 +4396,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4485,7 +4501,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 8 + value: 7 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4850,11 +4866,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 571694324} m_PrefabAsset: {fileID: 0} ---- !u!224 &571694326 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 571694324} - m_PrefabAsset: {fileID: 0} --- !u!114 &571694327 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4875,6 +4886,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &571694328 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 571694324} + m_PrefabAsset: {fileID: 0} --- !u!1 &626054678 GameObject: m_ObjectHideFlags: 0 @@ -5043,7 +5059,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5148,7 +5164,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 4 + value: 3 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -5307,11 +5323,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 740305723} m_PrefabAsset: {fileID: 0} ---- !u!224 &740305725 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 740305723} - m_PrefabAsset: {fileID: 0} --- !u!114 &740305726 MonoBehaviour: m_ObjectHideFlags: 0 @@ -5332,6 +5343,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &740305727 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 740305723} + m_PrefabAsset: {fileID: 0} --- !u!1001 &741546195 PrefabInstance: m_ObjectHideFlags: 0 @@ -5577,7 +5593,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5930,10 +5946,10 @@ PrefabInstance: addedObject: {fileID: 1670752448} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1798261412} + addedObject: {fileID: 1039924205} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1039924202} + addedObject: {fileID: 1798261412} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 @@ -5944,6 +5960,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 743188463} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188464} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &743188457 stripped RectTransform: @@ -5983,7 +6002,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} m_Name: m_EditorClassIdentifier: - serviceType: 1 + serviceType: 3 --- !u!114 &743188462 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6048,6 +6067,19 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!114 &743188464 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 3 --- !u!1001 &772013269 PrefabInstance: m_ObjectHideFlags: 0 @@ -6167,7 +6199,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6373,7 +6405,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6684,7 +6716,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 2 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -6843,11 +6875,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 853126499} m_PrefabAsset: {fileID: 0} ---- !u!224 &853126501 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 853126499} - m_PrefabAsset: {fileID: 0} --- !u!114 &853126502 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6868,6 +6895,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &853126503 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 853126499} + m_PrefabAsset: {fileID: 0} --- !u!1001 &871233354 PrefabInstance: m_ObjectHideFlags: 0 @@ -6987,7 +7019,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -7401,13 +7433,13 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1424922161} + addedObject: {fileID: 1424922163} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 38231115} + addedObject: {fileID: 38231117} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1499018966} + addedObject: {fileID: 1499018968} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1312741006} @@ -7553,7 +7585,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 6 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -7712,11 +7744,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 937973260} m_PrefabAsset: {fileID: 0} ---- !u!224 &937973262 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 937973260} - m_PrefabAsset: {fileID: 0} --- !u!114 &937973263 MonoBehaviour: m_ObjectHideFlags: 0 @@ -7737,6 +7764,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &937973264 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 937973260} + m_PrefabAsset: {fileID: 0} --- !u!1001 &963882741 PrefabInstance: m_ObjectHideFlags: 0 @@ -8264,13 +8296,13 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1229855182} + addedObject: {fileID: 1229855184} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 571694326} + addedObject: {fileID: 571694328} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1997642614} + addedObject: {fileID: 1997642616} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 @@ -8557,11 +8589,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1031869231} m_PrefabAsset: {fileID: 0} ---- !u!224 &1031869233 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1031869231} - m_PrefabAsset: {fileID: 0} --- !u!114 &1031869234 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8582,6 +8609,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1031869235 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1031869231} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1039924201 PrefabInstance: m_ObjectHideFlags: 0 @@ -8701,7 +8733,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -8758,11 +8790,6 @@ PrefabInstance: insertIndex: -1 addedObject: {fileID: 1039924204} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!224 &1039924202 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1039924201} - m_PrefabAsset: {fileID: 0} --- !u!1 &1039924203 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8788,6 +8815,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1039924205 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1039924201} + m_PrefabAsset: {fileID: 0} --- !u!1 &1058195611 GameObject: m_ObjectHideFlags: 0 @@ -9003,7 +9035,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9267,11 +9299,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1101863644} m_PrefabAsset: {fileID: 0} ---- !u!224 &1101863646 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1101863644} - m_PrefabAsset: {fileID: 0} --- !u!114 &1101863647 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9292,6 +9319,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1101863648 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1101863644} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1106330805 PrefabInstance: m_ObjectHideFlags: 0 @@ -9633,7 +9665,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9839,7 +9871,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10201,11 +10233,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1225501825} m_PrefabAsset: {fileID: 0} ---- !u!224 &1225501827 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1225501825} - m_PrefabAsset: {fileID: 0} --- !u!114 &1225501828 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10226,6 +10253,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1225501829 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1225501825} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1229855180 PrefabInstance: m_ObjectHideFlags: 0 @@ -10403,11 +10435,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1229855180} m_PrefabAsset: {fileID: 0} ---- !u!224 &1229855182 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1229855180} - m_PrefabAsset: {fileID: 0} --- !u!114 &1229855183 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10428,6 +10455,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1229855184 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1229855180} + m_PrefabAsset: {fileID: 0} --- !u!224 &1247563127 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 419827145282415511, guid: dcf96d5d1be365e43a4caa7561dc9ec4, type: 3} @@ -10655,7 +10687,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11348,7 +11380,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11612,11 +11644,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1424922159} m_PrefabAsset: {fileID: 0} ---- !u!224 &1424922161 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1424922159} - m_PrefabAsset: {fileID: 0} --- !u!114 &1424922162 MonoBehaviour: m_ObjectHideFlags: 0 @@ -11637,6 +11664,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1424922163 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1424922159} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1432457963 PrefabInstance: m_ObjectHideFlags: 0 @@ -11966,43 +11998,43 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 2092108893} + addedObject: {fileID: 2092108895} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 242508243} + addedObject: {fileID: 242508245} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 526139426} + addedObject: {fileID: 526139428} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1800123348} + addedObject: {fileID: 1800123350} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1101863646} + addedObject: {fileID: 1101863648} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1440140101} + addedObject: {fileID: 1440140103} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 413551944} + addedObject: {fileID: 413551946} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 8717332} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1225501827} + addedObject: {fileID: 1225501829} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 2123417268} + addedObject: {fileID: 2123417270} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1031869233} + addedObject: {fileID: 1031869235} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 232490228} + addedObject: {fileID: 232490230} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 468027690} + addedObject: {fileID: 468027692} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1937105456} @@ -12241,11 +12273,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1440140099} m_PrefabAsset: {fileID: 0} ---- !u!224 &1440140101 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1440140099} - m_PrefabAsset: {fileID: 0} --- !u!114 &1440140102 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12266,6 +12293,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1440140103 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1440140099} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1499018964 PrefabInstance: m_ObjectHideFlags: 0 @@ -12443,11 +12475,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1499018964} m_PrefabAsset: {fileID: 0} ---- !u!224 &1499018966 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1499018964} - m_PrefabAsset: {fileID: 0} --- !u!114 &1499018967 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12468,6 +12495,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1499018968 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1499018964} + m_PrefabAsset: {fileID: 0} --- !u!114 &1540322698 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -12890,7 +12922,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13096,7 +13128,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13302,7 +13334,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13407,7 +13439,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 7 + value: 6 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -13613,7 +13645,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 17 + value: 18 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -13714,7 +13746,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13978,11 +14010,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1800123346} m_PrefabAsset: {fileID: 0} ---- !u!224 &1800123348 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1800123346} - m_PrefabAsset: {fileID: 0} --- !u!114 &1800123349 MonoBehaviour: m_ObjectHideFlags: 0 @@ -14003,6 +14030,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1800123350 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1800123346} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1876911315 PrefabInstance: m_ObjectHideFlags: 0 @@ -14950,11 +14982,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1997642612} m_PrefabAsset: {fileID: 0} ---- !u!224 &1997642614 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1997642612} - m_PrefabAsset: {fileID: 0} --- !u!114 &1997642615 MonoBehaviour: m_ObjectHideFlags: 0 @@ -14975,6 +15002,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1997642616 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1997642612} + m_PrefabAsset: {fileID: 0} --- !u!1001 &2001828014 PrefabInstance: m_ObjectHideFlags: 0 @@ -15195,7 +15227,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 2 + value: 1 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -15354,11 +15386,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2011409375} m_PrefabAsset: {fileID: 0} ---- !u!224 &2011409377 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2011409375} - m_PrefabAsset: {fileID: 0} --- !u!114 &2011409378 MonoBehaviour: m_ObjectHideFlags: 0 @@ -15379,6 +15406,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &2011409379 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2011409375} + m_PrefabAsset: {fileID: 0} --- !u!224 &2013807919 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -15631,11 +15663,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2092108891} m_PrefabAsset: {fileID: 0} ---- !u!224 &2092108893 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2092108891} - m_PrefabAsset: {fileID: 0} --- !u!114 &2092108894 MonoBehaviour: m_ObjectHideFlags: 0 @@ -15656,6 +15683,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &2092108895 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2092108891} + m_PrefabAsset: {fileID: 0} --- !u!1001 &2110182463 PrefabInstance: m_ObjectHideFlags: 0 @@ -15981,7 +16013,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -16245,11 +16277,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2123417266} m_PrefabAsset: {fileID: 0} ---- !u!224 &2123417268 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2123417266} - m_PrefabAsset: {fileID: 0} --- !u!114 &2123417269 MonoBehaviour: m_ObjectHideFlags: 0 @@ -16270,6 +16297,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &2123417270 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2123417266} + m_PrefabAsset: {fileID: 0} --- !u!1 &46731087532519589 GameObject: m_ObjectHideFlags: 0 @@ -18704,19 +18736,19 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 2011409377} + addedObject: {fileID: 2011409379} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 853126501} + addedObject: {fileID: 853126503} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 740305725} + addedObject: {fileID: 740305727} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 198462059} + addedObject: {fileID: 198462061} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 937973262} + addedObject: {fileID: 937973264} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1762398786} @@ -19138,7 +19170,7 @@ MonoBehaviour: SceneRoots: m_ObjectHideFlags: 0 m_Roots: - - {fileID: 519420032} - - {fileID: 424437034} - {fileID: 1255546033} + - {fileID: 424437034} + - {fileID: 519420032} - {fileID: 67264514} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef index 20f17f13d..88b6196b4 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef @@ -5,7 +5,8 @@ "GUID:5426c6b788696eb4c88f4198b59839eb", "GUID:a37273c0f1cc99640b9cce89c64b02d0", "GUID:6055be8ebefd69e48b49212b09b47b2f", - "GUID:a6d2ec6af5b0961468c9e2fca41a75be" + "GUID:a6d2ec6af5b0961468c9e2fca41a75be", + "GUID:d06132f8dbed59945b549d37664d46eb" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs deleted file mode 100644 index c50c03176..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs +++ /dev/null @@ -1,84 +0,0 @@ -using System.Collections.Generic; -using ChainSafe.Gaming.UnityPackage.Model; -using UnityEngine; -using Web3Unity.Scripts.Library.IPFS; - -public class IPFSCalls : MonoBehaviour -{ - #region Fields - - [Header("IPFS VALUES")] - [SerializeField] private string apiSecretKey = "Fill In Your API Secret Key From Storage"; - [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; - [SerializeField] private string fileNameImage = "Logo.png"; - [SerializeField] private string fileNameMetaData = "MetaData.json"; - [SerializeField] private string nftName = "Name of the NFT"; - [SerializeField] private string description = "An NFT description"; - [SerializeField] private string externalUrl = "The URL that appears below your assets image"; - [SerializeField] private List display_types = new List { "Stamina", "Boost Number" }; - [SerializeField] private List trait_types = new List { "Health", "Thunder Power" }; - [SerializeField] private List values = new List { "5", "20" }; - [Header("Required for image only upload")] - [SerializeField] private string imageCID = "Enter your image CID from storage or upload call"; - - #endregion - - #region Methods - - /// - /// Uploads an image selected by the user to IPFS - /// - public async void IPFSUploadImage() - { - var uploadRequest = new IPFSUploadRequestModel - { - ApiKey = apiSecretKey, - BucketId = bucketId, - FileNameImage = fileNameImage - }; - var cid = await IPFS.UploadImage(uploadRequest); - Debug.Log($"Image uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); - } - - /// - /// Uploads metadata to IPFS - /// - public async void IPFSUploadMetadata() - { - var uploadRequest = new IPFSUploadRequestModel - { - ApiKey = apiSecretKey, - BucketId = bucketId, - Image = imageCID, - FileNameMetaData = fileNameMetaData, - Name = nftName, - Description = description, - External_url = externalUrl, - attributes = IPFS.CreateAttributesList(display_types, trait_types, values) - }; - var cid = await IPFS.UploadMetaData(uploadRequest); - Debug.Log($"Metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); - } - - /// - /// Uploads an image selected by the user including metadata to IPFS - /// - public async void IPFSUploadImageAndMetadata() - { - var uploadRequest = new IPFSUploadRequestModel - { - ApiKey = apiSecretKey, - BucketId = bucketId, - FileNameImage = fileNameImage, - FileNameMetaData = fileNameMetaData, - Name = name, - Description = description, - External_url = externalUrl, - attributes = IPFS.CreateAttributesList(display_types, trait_types, values) - }; - var cid = await IPFS.UploadImageAndMetadata(uploadRequest); - Debug.Log($"Image & metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); - } - - #endregion -} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs deleted file mode 100644 index 4f0da47af..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ /dev/null @@ -1,273 +0,0 @@ -using Scripts.EVM.Marketplace; -using UnityEngine; - -/// -/// Marketplace sample calls for use with the api documentation. -/// Marketplace Api: https://docs.gaming.chainsafe.io/marketplace-api/docs/marketplaceapi -/// Token Api: https://docs.gaming.chainsafe.io/token-api/docs/tokenapi -/// -public class MarketplaceCalls : MonoBehaviour -{ - #region fields - [Header("Change the fields below for testing purposes")] - - [Header("Bearer token")] - [SerializeField] private string bearerToken = "Please set your bearer token from the ChainSafe dashboard"; - - [Header("721 Collection Call")] - [SerializeField] private string collectionId721 = "Set 721 collection ID"; - - [Header("1155 Collection Call")] - [SerializeField] private string collectionId1155 = "Set 1155 collection ID"; - - [Header("Marketplace Calls")] - [SerializeField] private string marketplaceId = "Set marketplace ID"; - - [Header("Token Calls")] - [SerializeField] private string tokenId = "Set token ID i.e 1"; - - [Header("Create 721 Collection Call")] - [SerializeField] private string collectionName721 = "Set 721 collection name"; - [SerializeField] private string collectionDescription721 = "Set 721 collection description"; - [SerializeField] private bool collectionMintingPublic721 = false; - - [Header("Create 1155 Collection Call")] - [SerializeField] private string collectionName1155 = "Set 1155 collection name"; - [SerializeField] private string collectionDescription1155 = "Set 1155 collection description"; - [SerializeField] private bool collectionMintingPublic1155 = false; - - [Header("Delete calls (Can only be used before the item is on chain)")] - [SerializeField] private string collectionToDelete = "Set collection to delete"; - [SerializeField] private string marketplaceToDelete = "Set marketplace to delete"; - - [Header("Mint 721 to collection calls")] - [SerializeField] private string collectionContract721 = "Set 721 collection to mint to"; - [SerializeField] private string uri721 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; - - [Header("Mint 1155 to collection calls")] - [SerializeField] private string collectionContract1155 = "Set 1155 collection to mint to"; - [SerializeField] private string uri1155 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; - [SerializeField] private string amount1155 = "Set amount of Nfts to mint i.e 1"; - - [Header("Create marketplace call")] - [SerializeField] private string marketplaceName = "Set marketplace name"; - [SerializeField] private string marketplaceDescription = "Set marketplace description"; - [SerializeField] private bool marketplaceWhitelisting = false; - - [Header("List to marketplace calls")] - [SerializeField] private string tokenIdToList = "Set token ID to list"; - [SerializeField] private string weiPriceToList = "Set price in wei to list for i.e 100000000000000"; - [SerializeField] private string marketplaceContractToListTo = "Set marketplace contract to list to"; - [SerializeField] private string collectionContractToList = "Set collection contract to list from"; - - [Header("List to marketplace calls")] - [SerializeField] private string marketplaceContractToBuyFrom = "Set marketplace contract to list to"; - [SerializeField] private string tokenIdToBuy = "Set token ID to buy"; - [SerializeField] private string weiPriceToBuy = "Set price in wei to buy with i.e 100000000000000"; - - #endregion - - #region Methods - - /// - /// Gets all items in a project. - /// - public async void GetProjectItems() - { - var response = await Marketplace.GetProjectItems(); - Debug.Log($"Total: {response.total}"); - foreach (var item in response.items) - { - Marketplace.PrintObject(item); - } - } - - /// - /// Gets all items in a marketplace. - /// - public async void GetMarketplaceItems() - { - var response = await Marketplace.GetMarketplaceItems(marketplaceId); - Debug.Log($"Total: {response.total}"); - foreach (var item in response.items) - { - Marketplace.PrintObject(item); - } - } - - /// - /// Gets items listed by token id. - /// - public async void GetItem() - { - var response = await Marketplace.GetItem(marketplaceId, tokenId); - Marketplace.PrintObject(response.token); - } - - /// - /// Gets all tokens in a project. - /// - public async void GetProjectTokens() - { - var response = await Marketplace.GetProjectTokens(); - foreach (var token in response.tokens) - { - Marketplace.PrintObject(token); - } - } - - /// - /// Gets all tokens in a 721 collection. - /// - public async void GetCollectionTokens721() - { - var response = await Marketplace.GetCollectionTokens721(collectionId721); - foreach (var token in response.tokens) - { - Marketplace.PrintObject(token); - } - } - - /// - /// Gets all tokens in a 1155 collection. - /// - public async void GetCollectionTokens1155() - { - var response = await Marketplace.GetCollectionTokens1155(collectionId1155); - foreach (var token in response.tokens) - { - Marketplace.PrintObject(token); - } - } - - /// - /// Gets the information of a token in a collection via id. Token id is optional. - /// - public async void GetCollectionToken() - { - var response = await Marketplace.GetCollectionToken(collectionId721, tokenId); - Marketplace.PrintObject(response); - } - - /// - /// Gets the owners of a token id in a collection. - /// - public async void GetTokenOwners() - { - var response = await Marketplace.GetTokenOwners(collectionId1155, tokenId); - foreach (var owner in response.owners) - { - Marketplace.PrintObject(owner); - } - } - - /// - /// Creates a 721 collection - /// - public async void Create721Collection() - { - var data = await Marketplace.Create721Collection(bearerToken, collectionName721, collectionDescription721, collectionMintingPublic721); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Creates a 1155 collection - /// - public async void Create1155Collection() - { - var data = await Marketplace.Create1155Collection(bearerToken, collectionName1155, collectionDescription1155, collectionMintingPublic1155); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Mints an NFT to a 721 collection - /// - public async void Mint721CollectionNft() - { - var data = await Marketplace.Mint721CollectionNft(collectionContract721, uri721); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Mints an NFT to a 1155 collection - /// - public async void Mint1155CollectionNft() - { - var data = await Marketplace.Mint1155CollectionNft(collectionContract1155, uri1155, amount1155); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Deletes a collection that isn't on chain yet - /// - public async void DeleteCollection() - { - var response = await Marketplace.DeleteCollection(bearerToken, collectionToDelete); - Debug.Log(response); - } - - /// - /// Creates a marketplace - /// - public async void CreateMarketplace() - { - var data = await Marketplace.CreateMarketplace(bearerToken, marketplaceName, marketplaceDescription, marketplaceWhitelisting); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Deletes a marketplace that isn't on chain yet - /// - public async void DeleteMarketplace() - { - var response = await Marketplace.DeleteMarketplace(bearerToken,marketplaceToDelete); - Debug.Log(response); - } - - /// - /// Approves marketplace to list tokens - /// - public async void ApproveListNftsToMarketplace() - { - var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",true); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Revokes approval from marketplace to list tokens - /// - public async void RevokeApprovalListNftsToMarketplace() - { - var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",false); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Lists NFTs to the marketplace - /// - public async void ListNftsToMarketplace() - { - var data = await Marketplace.ListNftsToMarketplace(marketplaceContractToListTo,collectionContractToList, tokenIdToList, weiPriceToList); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - /// - /// Purchases an Nft from the marketplace - /// - public async void PurchaseNftFromMarketplace() - { - var data = await Marketplace.PurchaseNft(marketplaceContractToBuyFrom, tokenIdToBuy, weiPriceToBuy); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"TX: {response}"); - } - - #endregion -} diff --git a/src/UnitySampleProject/.gitignore b/src/UnitySampleProject/.gitignore index 727c26cbe..09eff11ff 100644 --- a/src/UnitySampleProject/.gitignore +++ b/src/UnitySampleProject/.gitignore @@ -26,6 +26,7 @@ # Visual Studio cache directory .vs/ + # Gradle cache directory .gradle/ diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity index 6bc95b455..06ba2d80f 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity @@ -242,7 +242,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -755,7 +755,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -1100,11 +1100,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 38231113} m_PrefabAsset: {fileID: 0} ---- !u!224 &38231115 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 38231113} - m_PrefabAsset: {fileID: 0} --- !u!114 &38231116 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1125,6 +1120,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &38231117 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 38231113} + m_PrefabAsset: {fileID: 0} --- !u!1 &67264513 GameObject: m_ObjectHideFlags: 0 @@ -1508,7 +1508,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 5 + value: 4 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -1667,11 +1667,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 198462057} m_PrefabAsset: {fileID: 0} ---- !u!224 &198462059 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 198462057} - m_PrefabAsset: {fileID: 0} --- !u!114 &198462060 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1692,6 +1687,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &198462061 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 198462057} + m_PrefabAsset: {fileID: 0} --- !u!1001 &199502200 PrefabInstance: m_ObjectHideFlags: 0 @@ -1715,7 +1715,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -2108,6 +2108,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 199502206} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 199502207} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &199502201 stripped RectTransform: @@ -2155,6 +2158,19 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!114 &199502207 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 199502205} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 3 --- !u!1 &213321590 GameObject: m_ObjectHideFlags: 0 @@ -2393,11 +2409,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 232490226} m_PrefabAsset: {fileID: 0} ---- !u!224 &232490228 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 232490226} - m_PrefabAsset: {fileID: 0} --- !u!114 &232490229 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2418,6 +2429,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &232490230 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 232490226} + m_PrefabAsset: {fileID: 0} --- !u!1001 &242508241 PrefabInstance: m_ObjectHideFlags: 0 @@ -2595,11 +2611,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 242508241} m_PrefabAsset: {fileID: 0} ---- !u!224 &242508243 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 242508241} - m_PrefabAsset: {fileID: 0} --- !u!114 &242508244 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2620,6 +2631,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &242508245 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 242508241} + m_PrefabAsset: {fileID: 0} --- !u!1001 &246667300 PrefabInstance: m_ObjectHideFlags: 0 @@ -2739,7 +2755,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -2981,7 +2997,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3151,7 +3167,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.2243478 + m_Size: 0.18288729 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -3371,11 +3387,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 413551942} m_PrefabAsset: {fileID: 0} ---- !u!224 &413551944 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 413551942} - m_PrefabAsset: {fileID: 0} --- !u!114 &413551945 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3396,6 +3407,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &413551946 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 413551942} + m_PrefabAsset: {fileID: 0} --- !u!1 &424437031 GameObject: m_ObjectHideFlags: 0 @@ -3713,11 +3729,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 468027688} m_PrefabAsset: {fileID: 0} ---- !u!224 &468027690 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 468027688} - m_PrefabAsset: {fileID: 0} --- !u!114 &468027691 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3738,6 +3749,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &468027692 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 468027688} + m_PrefabAsset: {fileID: 0} --- !u!1001 &491434542 PrefabInstance: m_ObjectHideFlags: 0 @@ -3955,7 +3971,7 @@ MonoBehaviour: collectionContract721: Set 721 collection to mint to uri721: Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a collectionContract1155: Set 1155 collection to mint to - uri1155: Set 721 collection to mint to https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a + uri1155: Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a amount1155: Set amount of Nfts to mint i.e 1 marketplaceName: Set marketplace name marketplaceDescription: Set marketplace description @@ -3964,7 +3980,7 @@ MonoBehaviour: weiPriceToList: Set price in wei to list for i.e 100000000000000 marketplaceContractToListTo: Set marketplace contract to list to collectionContractToList: Set collection contract to list from - marketplaceContractToBuyFrom: Set marketplace contract to list to + marketplaceContractToBuyFrom: Set marketplace contract to buy from tokenIdToBuy: Set token ID to buy weiPriceToBuy: Set price in wei to buy with i.e 100000000000000 --- !u!1 &519420028 @@ -4236,11 +4252,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 526139424} m_PrefabAsset: {fileID: 0} ---- !u!224 &526139426 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 526139424} - m_PrefabAsset: {fileID: 0} --- !u!114 &526139427 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4261,6 +4272,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &526139428 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 526139424} + m_PrefabAsset: {fileID: 0} --- !u!1001 &553675705 PrefabInstance: m_ObjectHideFlags: 0 @@ -4380,7 +4396,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -4485,7 +4501,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 8 + value: 7 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -4850,11 +4866,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 571694324} m_PrefabAsset: {fileID: 0} ---- !u!224 &571694326 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 571694324} - m_PrefabAsset: {fileID: 0} --- !u!114 &571694327 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4875,6 +4886,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &571694328 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 571694324} + m_PrefabAsset: {fileID: 0} --- !u!1 &626054678 GameObject: m_ObjectHideFlags: 0 @@ -5043,7 +5059,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5148,7 +5164,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 4 + value: 3 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -5307,11 +5323,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 740305723} m_PrefabAsset: {fileID: 0} ---- !u!224 &740305725 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 740305723} - m_PrefabAsset: {fileID: 0} --- !u!114 &740305726 MonoBehaviour: m_ObjectHideFlags: 0 @@ -5332,6 +5343,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &740305727 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 740305723} + m_PrefabAsset: {fileID: 0} --- !u!1001 &741546195 PrefabInstance: m_ObjectHideFlags: 0 @@ -5577,7 +5593,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5930,10 +5946,10 @@ PrefabInstance: addedObject: {fileID: 1670752448} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1798261412} + addedObject: {fileID: 1039924205} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1039924202} + addedObject: {fileID: 1798261412} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 @@ -5944,6 +5960,9 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 743188463} + - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} + insertIndex: -1 + addedObject: {fileID: 743188464} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &743188457 stripped RectTransform: @@ -5983,7 +6002,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} m_Name: m_EditorClassIdentifier: - serviceType: 1 + serviceType: 3 --- !u!114 &743188462 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6048,6 +6067,19 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!114 &743188464 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 743188460} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} + m_Name: + m_EditorClassIdentifier: + serviceType: 3 --- !u!1001 &772013269 PrefabInstance: m_ObjectHideFlags: 0 @@ -6167,7 +6199,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6373,7 +6405,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6684,7 +6716,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 3 + value: 2 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -6843,11 +6875,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 853126499} m_PrefabAsset: {fileID: 0} ---- !u!224 &853126501 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 853126499} - m_PrefabAsset: {fileID: 0} --- !u!114 &853126502 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6868,6 +6895,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &853126503 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 853126499} + m_PrefabAsset: {fileID: 0} --- !u!1001 &871233354 PrefabInstance: m_ObjectHideFlags: 0 @@ -6987,7 +7019,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -7401,13 +7433,13 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1424922161} + addedObject: {fileID: 1424922163} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 38231115} + addedObject: {fileID: 38231117} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1499018966} + addedObject: {fileID: 1499018968} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1312741006} @@ -7553,7 +7585,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 6 + value: 5 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -7712,11 +7744,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 937973260} m_PrefabAsset: {fileID: 0} ---- !u!224 &937973262 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 937973260} - m_PrefabAsset: {fileID: 0} --- !u!114 &937973263 MonoBehaviour: m_ObjectHideFlags: 0 @@ -7737,6 +7764,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &937973264 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 937973260} + m_PrefabAsset: {fileID: 0} --- !u!1001 &963882741 PrefabInstance: m_ObjectHideFlags: 0 @@ -8264,13 +8296,13 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1229855182} + addedObject: {fileID: 1229855184} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 571694326} + addedObject: {fileID: 571694328} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1997642614} + addedObject: {fileID: 1997642616} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 @@ -8557,11 +8589,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1031869231} m_PrefabAsset: {fileID: 0} ---- !u!224 &1031869233 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1031869231} - m_PrefabAsset: {fileID: 0} --- !u!114 &1031869234 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8582,6 +8609,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1031869235 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1031869231} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1039924201 PrefabInstance: m_ObjectHideFlags: 0 @@ -8701,7 +8733,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -8758,11 +8790,6 @@ PrefabInstance: insertIndex: -1 addedObject: {fileID: 1039924204} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!224 &1039924202 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1039924201} - m_PrefabAsset: {fileID: 0} --- !u!1 &1039924203 stripped GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -8788,6 +8815,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1039924205 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1039924201} + m_PrefabAsset: {fileID: 0} --- !u!1 &1058195611 GameObject: m_ObjectHideFlags: 0 @@ -9003,7 +9035,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9267,11 +9299,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1101863644} m_PrefabAsset: {fileID: 0} ---- !u!224 &1101863646 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1101863644} - m_PrefabAsset: {fileID: 0} --- !u!114 &1101863647 MonoBehaviour: m_ObjectHideFlags: 0 @@ -9292,6 +9319,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1101863648 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1101863644} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1106330805 PrefabInstance: m_ObjectHideFlags: 0 @@ -9633,7 +9665,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9839,7 +9871,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 2077011804} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -10201,11 +10233,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1225501825} m_PrefabAsset: {fileID: 0} ---- !u!224 &1225501827 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1225501825} - m_PrefabAsset: {fileID: 0} --- !u!114 &1225501828 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10226,6 +10253,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1225501829 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1225501825} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1229855180 PrefabInstance: m_ObjectHideFlags: 0 @@ -10403,11 +10435,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1229855180} m_PrefabAsset: {fileID: 0} ---- !u!224 &1229855182 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1229855180} - m_PrefabAsset: {fileID: 0} --- !u!114 &1229855183 MonoBehaviour: m_ObjectHideFlags: 0 @@ -10428,6 +10455,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1229855184 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1229855180} + m_PrefabAsset: {fileID: 0} --- !u!224 &1247563127 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 419827145282415511, guid: dcf96d5d1be365e43a4caa7561dc9ec4, type: 3} @@ -10655,7 +10687,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11348,7 +11380,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11612,11 +11644,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1424922159} m_PrefabAsset: {fileID: 0} ---- !u!224 &1424922161 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1424922159} - m_PrefabAsset: {fileID: 0} --- !u!114 &1424922162 MonoBehaviour: m_ObjectHideFlags: 0 @@ -11637,6 +11664,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1424922163 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1424922159} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1432457963 PrefabInstance: m_ObjectHideFlags: 0 @@ -11966,43 +11998,43 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 2092108893} + addedObject: {fileID: 2092108895} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 242508243} + addedObject: {fileID: 242508245} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 526139426} + addedObject: {fileID: 526139428} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1800123348} + addedObject: {fileID: 1800123350} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1101863646} + addedObject: {fileID: 1101863648} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1440140101} + addedObject: {fileID: 1440140103} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 413551944} + addedObject: {fileID: 413551946} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 8717332} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1225501827} + addedObject: {fileID: 1225501829} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 2123417268} + addedObject: {fileID: 2123417270} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 1031869233} + addedObject: {fileID: 1031869235} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 232490228} + addedObject: {fileID: 232490230} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 468027690} + addedObject: {fileID: 468027692} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1937105456} @@ -12241,11 +12273,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1440140099} m_PrefabAsset: {fileID: 0} ---- !u!224 &1440140101 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1440140099} - m_PrefabAsset: {fileID: 0} --- !u!114 &1440140102 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12266,6 +12293,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1440140103 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1440140099} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1499018964 PrefabInstance: m_ObjectHideFlags: 0 @@ -12443,11 +12475,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1499018964} m_PrefabAsset: {fileID: 0} ---- !u!224 &1499018966 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1499018964} - m_PrefabAsset: {fileID: 0} --- !u!114 &1499018967 MonoBehaviour: m_ObjectHideFlags: 0 @@ -12468,6 +12495,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1499018968 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1499018964} + m_PrefabAsset: {fileID: 0} --- !u!114 &1540322698 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 531827906274991465, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -12890,7 +12922,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13096,7 +13128,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13302,7 +13334,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13407,7 +13439,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 7 + value: 6 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -13613,7 +13645,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 17 + value: 18 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -13714,7 +13746,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13978,11 +14010,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1800123346} m_PrefabAsset: {fileID: 0} ---- !u!224 &1800123348 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1800123346} - m_PrefabAsset: {fileID: 0} --- !u!114 &1800123349 MonoBehaviour: m_ObjectHideFlags: 0 @@ -14003,6 +14030,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1800123350 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1800123346} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1876911315 PrefabInstance: m_ObjectHideFlags: 0 @@ -14950,11 +14982,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 1997642612} m_PrefabAsset: {fileID: 0} ---- !u!224 &1997642614 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 1997642612} - m_PrefabAsset: {fileID: 0} --- !u!114 &1997642615 MonoBehaviour: m_ObjectHideFlags: 0 @@ -14975,6 +15002,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &1997642616 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 1997642612} + m_PrefabAsset: {fileID: 0} --- !u!1001 &2001828014 PrefabInstance: m_ObjectHideFlags: 0 @@ -15195,7 +15227,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_RootOrder - value: 2 + value: 1 objectReference: {fileID: 0} - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_AnchorMax.x @@ -15354,11 +15386,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2011409375} m_PrefabAsset: {fileID: 0} ---- !u!224 &2011409377 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2011409375} - m_PrefabAsset: {fileID: 0} --- !u!114 &2011409378 MonoBehaviour: m_ObjectHideFlags: 0 @@ -15379,6 +15406,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &2011409379 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2011409375} + m_PrefabAsset: {fileID: 0} --- !u!224 &2013807919 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} @@ -15631,11 +15663,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2092108891} m_PrefabAsset: {fileID: 0} ---- !u!224 &2092108893 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2092108891} - m_PrefabAsset: {fileID: 0} --- !u!114 &2092108894 MonoBehaviour: m_ObjectHideFlags: 0 @@ -15656,6 +15683,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &2092108895 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2092108891} + m_PrefabAsset: {fileID: 0} --- !u!1001 &2110182463 PrefabInstance: m_ObjectHideFlags: 0 @@ -15981,7 +16013,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 496534498} + objectReference: {fileID: 0} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -16245,11 +16277,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 2123417266} m_PrefabAsset: {fileID: 0} ---- !u!224 &2123417268 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2123417266} - m_PrefabAsset: {fileID: 0} --- !u!114 &2123417269 MonoBehaviour: m_ObjectHideFlags: 0 @@ -16270,6 +16297,11 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!224 &2123417270 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2123417266} + m_PrefabAsset: {fileID: 0} --- !u!1 &46731087532519589 GameObject: m_ObjectHideFlags: 0 @@ -18704,19 +18736,19 @@ PrefabInstance: m_AddedGameObjects: - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 2011409377} + addedObject: {fileID: 2011409379} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 853126501} + addedObject: {fileID: 853126503} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 740305725} + addedObject: {fileID: 740305727} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 198462059} + addedObject: {fileID: 198462061} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 - addedObject: {fileID: 937973262} + addedObject: {fileID: 937973264} - targetCorrespondingSourceObject: {fileID: 3719940706716398937, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 1762398786} @@ -19138,7 +19170,7 @@ MonoBehaviour: SceneRoots: m_ObjectHideFlags: 0 m_Roots: - - {fileID: 519420032} - - {fileID: 424437034} - {fileID: 1255546033} + - {fileID: 424437034} + - {fileID: 519420032} - {fileID: 67264514} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Samples.asmdef b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Samples.asmdef index 20f17f13d..55f3dbb12 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Samples.asmdef +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Samples.asmdef @@ -5,7 +5,8 @@ "GUID:5426c6b788696eb4c88f4198b59839eb", "GUID:a37273c0f1cc99640b9cce89c64b02d0", "GUID:6055be8ebefd69e48b49212b09b47b2f", - "GUID:a6d2ec6af5b0961468c9e2fca41a75be" + "GUID:a6d2ec6af5b0961468c9e2fca41a75be", + "GUID:beb3cfa44e4e012468271dba212943b0" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs index c50c03176..8e880b8a8 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using ChainSafe.Gaming.UnityPackage.Model; using UnityEngine; -using Web3Unity.Scripts.Library.IPFS; +using ChainSafe.Gaming.Marketplace; public class IPFSCalls : MonoBehaviour { diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta index 8866f7cff..4dd7b0018 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b7c5ee5d62f1b3647af14571b3f4225e +guid: 46c47784b8c4b6040936da2a1ee85782 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs index 4f0da47af..6f9b88f70 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -1,3 +1,4 @@ +#if MARKETPLACE_AVAILABLE using Scripts.EVM.Marketplace; using UnityEngine; @@ -61,7 +62,7 @@ public class MarketplaceCalls : MonoBehaviour [SerializeField] private string collectionContractToList = "Set collection contract to list from"; [Header("List to marketplace calls")] - [SerializeField] private string marketplaceContractToBuyFrom = "Set marketplace contract to list to"; + [SerializeField] private string marketplaceContractToBuyFrom = "Set marketplace contract to buy from"; [SerializeField] private string tokenIdToBuy = "Set token ID to buy"; [SerializeField] private string weiPriceToBuy = "Set price in wei to buy with i.e 100000000000000"; @@ -271,3 +272,4 @@ public async void PurchaseNftFromMarketplace() #endregion } +#endif \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index d75da834e..5db9a7e1f 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -4,12 +4,16 @@ using ChainSafe.Gaming.UnityPackage; using ChainSafe.GamingSdk.Gelato.Types; using UnityEngine; +#if MARKETPLACE_AVAILABLE +using ChainSafe.Gaming.Marketplace; +#endif public enum ServiceType { Ramp = 0, Gelato = 1, - Multicall = 2 + Multicall = 2, + Marketplace = 3 } public class DisableGameObjectIfServiceNotActive : MonoBehaviour @@ -17,9 +21,12 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour [SerializeField] private ServiceType serviceType; private readonly Dictionary _typesDictionary = new() { -#if RAMP_AVAILABLE + #if RAMP_AVAILABLE {ServiceType.Ramp, typeof(ChainSafe.Gaming.Exchangers.Ramp.IRampExchanger)}, -#endif + #endif + #if MARKETPLACE_AVAILABLE + {ServiceType.Marketplace, typeof(MarketplaceClient)}, + #endif {ServiceType.Gelato, typeof(IGelato)}, {ServiceType.Multicall, typeof(IMultiCall)} }; diff --git a/src/UnitySampleProject/Assets/csc.rsp.meta b/src/UnitySampleProject/Assets/csc.rsp.meta new file mode 100644 index 000000000..b7d246f8d --- /dev/null +++ b/src/UnitySampleProject/Assets/csc.rsp.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8630a7b4d41c54991bb6abdad2d1bbe6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Packages/manifest.json b/src/UnitySampleProject/Packages/manifest.json index c677282c4..a8f5838f7 100644 --- a/src/UnitySampleProject/Packages/manifest.json +++ b/src/UnitySampleProject/Packages/manifest.json @@ -15,6 +15,7 @@ "io.chainsafe.web3-unity": "file:../../../Packages/io.chainsafe.web3-unity", "io.chainsafe.web3-unity.hyperplay": "file:../../../Packages/io.chainsafe.web3-unity.hyperplay", "io.chainsafe.web3-unity.lootboxes": "file:../../../Packages/io.chainsafe.web3-unity.lootboxes", + "io.chainsafe.web3-unity.marketplace": "file:../../../Packages/io.chainsafe.web3-unity.marketplace", "io.chainsafe.web3-unity.ramp": "file:../../../Packages/io.chainsafe.web3-unity.ramp", "io.chainsafe.web3-unity.web3auth": "file:../../../Packages/io.chainsafe.web3-unity.web3auth", "com.unity.modules.ai": "1.0.0", diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index 27ac78b2f..09996190a 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -166,6 +166,15 @@ "io.chainsafe.web3-unity": "2.5.5" } }, + "io.chainsafe.web3-unity.marketplace": { + "version": "file:../../../Packages/io.chainsafe.web3-unity.marketplace", + "depth": 0, + "source": "local", + "dependencies": { + "com.unity.nuget.newtonsoft-json": "3.0.2", + "io.chainsafe.web3-unity": "2.6.0" + } + }, "io.chainsafe.web3-unity.ramp": { "version": "file:../../../Packages/io.chainsafe.web3-unity.ramp", "depth": 0, diff --git a/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset b/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset index 98aab735f..052a83825 100644 --- a/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset @@ -3,7 +3,7 @@ --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 - serializedVersion: 26 + serializedVersion: 24 productGUID: 2d36d76f9c79214498bace334980ebcd AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 @@ -48,16 +48,14 @@ PlayerSettings: defaultScreenHeightWeb: 600 m_StereoRenderingPath: 0 m_ActiveColorSpace: 0 - unsupportedMSAAFallback: 0 - m_SpriteBatchVertexThreshold: 300 m_MTRendering: 1 mipStripping: 0 numberOfMipsStripped: 0 - numberOfMipsStrippedPerMipmapLimitGroup: {} m_StackTraceTypes: 010000000200000002000000020000000200000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 iosUseCustomAppBackgroundBehavior: 0 + iosAllowHTTPDownload: 1 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 @@ -76,7 +74,6 @@ PlayerSettings: androidMinimumWindowWidth: 400 androidMinimumWindowHeight: 300 androidFullscreenMode: 1 - androidAutoRotationBehavior: 1 defaultIsNativeResolution: 1 macRetinaSupport: 1 runInBackground: 0 @@ -88,7 +85,6 @@ PlayerSettings: hideHomeButton: 0 submitAnalytics: 1 usePlayerLog: 1 - dedicatedServerOptimizations: 0 bakeCollisionMeshes: 0 forceSingleInstance: 0 useFlipModelSwapchain: 1 @@ -123,12 +119,8 @@ PlayerSettings: switchNVNShaderPoolsGranularity: 33554432 switchNVNDefaultPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216 - switchGpuScratchPoolGranularity: 2097152 - switchAllowGpuScratchShrinking: 0 switchNVNMaxPublicTextureIDCount: 0 switchNVNMaxPublicSamplerIDCount: 0 - switchNVNGraphicsFirmwareMemory: 32 - switchMaxWorkerMultiple: 8 stadiaPresentMode: 0 stadiaTargetFramerate: 0 vulkanNumSwapchainBuffers: 3 @@ -136,9 +128,12 @@ PlayerSettings: vulkanEnablePreTransform: 0 vulkanEnableLateAcquireNextImage: 0 vulkanEnableCommandBufferRecycling: 1 - loadStoreDebugModeEnabled: 0 - visionOSBundleVersion: 1.0 - tvOSBundleVersion: 1.0 + m_SupportedAspectRatios: + 4:3: 1 + 5:4: 1 + 16:10: 1 + 16:9: 1 + Others: 1 bundleVersion: 1.0 preloadedAssets: [] metroInputSource: 0 @@ -151,9 +146,8 @@ PlayerSettings: isWsaHolographicRemotingEnabled: 0 enableFrameTimingStats: 0 enableOpenGLProfilerGPURecorders: 1 - allowHDRDisplaySupport: 0 useHDRDisplay: 0 - hdrBitDepth: 0 + D3DHDRBitDepth: 0 m_ColorGamuts: 00000000 targetPixelDensity: 30 resolutionScalingMode: 0 @@ -182,15 +176,12 @@ PlayerSettings: APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 0 - strictShaderVariantMatching: 0 VertexChannelCompressionMask: 4054 iPhoneSdkVersion: 988 iOSTargetOSVersionString: 12.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 tvOSTargetOSVersionString: 12.0 - VisionOSSdkVersion: 0 - VisionOSTargetOSVersionString: 1.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 @@ -238,10 +229,8 @@ PlayerSettings: appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: - VisionOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 - VisionOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 @@ -256,7 +245,6 @@ PlayerSettings: useCustomLauncherGradleManifest: 0 useCustomBaseGradleTemplate: 0 useCustomGradlePropertiesTemplate: 0 - useCustomGradleSettingsTemplate: 0 useCustomProguardFile: 0 AndroidTargetArchitectures: 2 AndroidTargetDevices: 0 @@ -264,7 +252,6 @@ PlayerSettings: androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: - AndroidEnableArmv9SecurityFeatures: 0 AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 0 AndroidIsGame: 1 @@ -278,6 +265,7 @@ PlayerSettings: banner: {fileID: 0} androidGamepadSupportLevel: 0 chromeosInputEmulation: 1 + AndroidMinifyWithR8: 0 AndroidMinifyRelease: 0 AndroidMinifyDebug: 0 AndroidValidateAppBundleSize: 1 @@ -525,9 +513,7 @@ PlayerSettings: m_BuildTargetGroupLightmapEncodingQuality: - m_BuildTarget: WebGL m_EncodingQuality: 1 - m_BuildTargetGroupHDRCubemapEncodingQuality: [] m_BuildTargetGroupLightmapSettings: [] - m_BuildTargetGroupLoadStoreDebugModeSettings: [] m_BuildTargetNormalMapEncoding: [] m_BuildTargetDefaultTextureCompressionFormat: - m_BuildTarget: Android @@ -542,7 +528,6 @@ PlayerSettings: locationUsageDescription: microphoneUsageDescription: bluetoothUsageDescription: - macOSTargetOSVersion: 10.13.0 switchNMETAOverride: switchNetLibKey: switchSocketMemoryPoolSize: 6144 @@ -550,11 +535,10 @@ PlayerSettings: switchSocketConcurrencyLimit: 14 switchScreenResolutionBehavior: 2 switchUseCPUProfiler: 0 - switchEnableFileSystemTrace: 0 + switchUseGOLDLinker: 0 switchLTOSetting: 0 switchApplicationID: 0x01004b9000490000 switchNSODependencies: - switchCompilerFlags: switchTitleNames_0: switchTitleNames_1: switchTitleNames_2: @@ -680,6 +664,7 @@ PlayerSettings: switchSocketBufferEfficiency: 4 switchSocketInitializeEnabled: 1 switchNetworkInterfaceManagerInitializeEnabled: 1 + switchPlayerConnectionEnabled: 1 switchUseNewStyleFilepaths: 0 switchUseLegacyFmodPriorities: 1 switchUseMicroSleepForYield: 1 @@ -769,7 +754,6 @@ PlayerSettings: webGLMemorySize: 32 webGLExceptionSupport: 1 webGLNameFilesAsHashes: 0 - webGLShowDiagnostics: 0 webGLDataCaching: 1 webGLDebugSymbols: 0 webGLEmscriptenArgs: @@ -782,12 +766,6 @@ PlayerSettings: webGLLinkerTarget: 1 webGLThreadsSupport: 0 webGLDecompressionFallback: 0 - webGLInitialMemorySize: 32 - webGLMaximumMemorySize: 2048 - webGLMemoryGrowthMode: 2 - webGLMemoryLinearGrowthStep: 16 - webGLMemoryGeometricGrowthStep: 0.2 - webGLMemoryGeometricGrowthCap: 96 webGLPowerPreference: 2 scriptingDefineSymbols: WebGL: RAMP_AVAILABLE @@ -796,7 +774,6 @@ PlayerSettings: scriptingBackend: Android: 1 il2cppCompilerConfiguration: {} - il2cppCodeGeneration: {} managedStrippingLevel: EmbeddedLinux: 1 GameCoreScarlett: 1 @@ -815,9 +792,12 @@ PlayerSettings: suppressCommonWarnings: 1 allowUnsafeCode: 0 useDeterministicCompilation: 1 + enableRoslynAnalyzers: 1 + selectedPlatform: 0 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 1 + assemblyVersionValidation: 0 gcWBarrierValidation: 0 apiCompatibilityLevelPerPlatform: {} m_RenderingPath: 1 @@ -843,7 +823,6 @@ PlayerSettings: metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} metroSplashScreenUseBackgroundColor: 0 - syncCapabilities: 0 platformCapabilities: {} metroTargetDeviceFamilies: {} metroFTAName: @@ -890,11 +869,6 @@ PlayerSettings: luminVersion: m_VersionCode: 1 m_VersionName: - hmiPlayerDataPath: - hmiForceSRGBBlit: 1 - embeddedLinuxEnableGamepadInput: 1 - hmiLogStartupTiming: 0 - hmiCpuConfiguration: apiCompatibilityLevel: 6 activeInputHandler: 0 windowsGamepadBackendHint: 0 @@ -905,7 +879,6 @@ PlayerSettings: organizationId: cloudEnabled: 0 legacyClampBlendShapeWeights: 0 - hmiLoadingImage: {fileID: 0} - platformRequiresReadableAssets: 0 + playerDataPath: + forceSRGBBlit: 1 virtualTexturingSupportEnabled: 0 - insecureHttpOption: 0 From 874469b8f8289656bf3089035b56003189a5bf39 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 30 May 2024 16:54:04 +0200 Subject: [PATCH 82/97] Fixing Robs failing PR --- .../Web3.Unity HyperPlay Samples/1.0.0.meta | 8 + .../1.0.0/HyperPlay Usage Sample.meta | 8 + .../1.0.0/HyperPlay Usage Sample/Scenes.meta | 8 + .../Scenes/SampleLogin - HyperPlay.unity | 2145 +++++++++++++++++ .../Scenes/SampleLogin - HyperPlay.unity.meta | 7 + .../1.0.0/HyperPlay Usage Sample/Scripts.meta | 8 + .../Scripts/HyperPlayLoginProvider.cs | 57 + .../Scripts/HyperPlayLoginProvider.cs.meta | 11 + 8 files changed, 2252 insertions(+) create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts.meta create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta new file mode 100644 index 000000000..2a6c792ca --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e3d4519bbfe0064b9144f4635cafd27 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta new file mode 100644 index 000000000..2d377d24b --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c08bb86b42cf5254096d24c0240b9027 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes.meta new file mode 100644 index 000000000..be3471699 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d14fc9e97141fe548bdeadfc8bfa5fb0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity new file mode 100644 index 000000000..33c6ecd11 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity @@ -0,0 +1,2145 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &210878633 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 210878634} + - component: {fileID: 210878636} + - component: {fileID: 210878635} + m_Layer: 5 + m_Name: Error Panel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &210878634 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 210878633} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 751800059} + - {fileID: 1812470006} + m_Father: {fileID: 314965760} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -8.4831} + m_SizeDelta: {x: 400, y: 167.1662} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &210878635 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 210878633} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0.912, b: 0.912, a: 0.9490196} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &210878636 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 210878633} + m_CullTransparentMesh: 1 +--- !u!1 &314965759 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 314965760} + - component: {fileID: 314965761} + m_Layer: 5 + m_Name: Error + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &314965760 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 314965759} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1042712191} + - {fileID: 210878634} + m_Father: {fileID: 2066044329} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &314965761 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 314965759} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9df78976caa7771429cfe2b9b96e1491, type: 3} + m_Name: + m_EditorClassIdentifier: + MessageLabel: {fileID: 1028782728} +--- !u!1 &433476712 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 433476714} + - component: {fileID: 433476718} + - component: {fileID: 433476717} + - component: {fileID: 433476716} + m_Layer: 0 + m_Name: Login Logic - HyperPlay + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &433476714 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 433476712} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &433476716 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 433476712} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3d2237df0314604419146b916b88d158, type: 3} + m_Name: + m_EditorClassIdentifier: + sceneToLoad: SampleMain +--- !u!114 &433476717 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 433476712} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d4bbed5530529ea46a1f41b407499dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + rampConfig: {fileID: 11400000, guid: d1f58846e4fc71d4e90f287a86f328f9, type: 2} +--- !u!114 &433476718 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 433476712} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 16b51cbda3e44ff44a13173ffbde98b3, type: 3} + m_Name: + m_EditorClassIdentifier: + gelatoApiKey: 7MFQqyGS1Iui_e_MgmFW1BfbFeJ06g8nnL2oUTlIJug_ + errorPopup: {fileID: 314965761} + loginButton: {fileID: 2048731599} + rememberMeToggle: {fileID: 1755680257} +--- !u!1 &482586192 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 482586193} + - component: {fileID: 482586195} + - component: {fileID: 482586194} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &482586193 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 482586192} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 859742331} + m_Father: {fileID: 1755680255} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.5} + m_AnchorMax: {x: 0.25, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -44, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &482586194 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 482586192} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &482586195 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 482586192} + m_CullTransparentMesh: 1 +--- !u!1 &669337707 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 669337708} + - component: {fileID: 669337710} + - component: {fileID: 669337709} + m_Layer: 5 + m_Name: Label + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &669337708 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 669337707} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1755680255} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.25, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -75, y: 0} + m_SizeDelta: {x: -150, y: -30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &669337709 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 669337707} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Remember me + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: b137a8f4bbcdafc439306c89bed89215, type: 2} + m_sharedMaterial: {fileID: 7077468325371864899, guid: b137a8f4bbcdafc439306c89bed89215, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294111986 + m_fontColor: {r: 0.95, g: 0.95, b: 0.95, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 18 + m_fontSizeBase: 18 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 8 + m_fontSizeMax: 36 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 0 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &669337710 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 669337707} + m_CullTransparentMesh: 1 +--- !u!1 &740974330 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 740974331} + - component: {fileID: 740974332} + m_Layer: 5 + m_Name: Column - HyperPlay + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &740974331 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740974330} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 956735924} + m_Father: {fileID: 1135875169} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &740974332 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 740974330} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: 300 + m_PreferredHeight: -1 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!1 &751800058 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 751800059} + - component: {fileID: 751800061} + - component: {fileID: 751800060} + m_Layer: 5 + m_Name: Title - Error + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &751800059 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 751800058} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 210878634} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 50} + m_Pivot: {x: 0.5, y: 1} +--- !u!114 &751800060 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 751800058} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.412, g: 0.043672003, b: 0.043672003, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 24 + m_FontStyle: 1 + m_BestFit: 0 + m_MinSize: 2 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Error +--- !u!222 &751800061 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 751800058} + m_CullTransparentMesh: 1 +--- !u!1 &772918783 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 772918784} + - component: {fileID: 772918787} + - component: {fileID: 772918786} + - component: {fileID: 772918785} + m_Layer: 5 + m_Name: Button - Ok + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &772918784 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 772918783} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1558416531} + m_Father: {fileID: 1812470006} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 50} + m_Pivot: {x: 0.5, y: 0} +--- !u!114 &772918785 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 772918783} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 772918786} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 314965761} + m_TargetAssemblyTypeName: Scenes.ErrorPopup, Assembly-CSharp + m_MethodName: Close + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &772918786 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 772918783} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &772918787 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 772918783} + m_CullTransparentMesh: 1 +--- !u!1 &789601276 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 789601277} + m_Layer: 5 + m_Name: Header + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &789601277 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 789601276} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1362301615} + - {fileID: 1572088723} + m_Father: {fileID: 2066044329} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.725} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -25} + m_SizeDelta: {x: -50, y: -50} + m_Pivot: {x: 0.5, y: 1} +--- !u!1 &859742330 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 859742331} + - component: {fileID: 859742333} + - component: {fileID: 859742332} + m_Layer: 5 + m_Name: Checkmark + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &859742331 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 859742330} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 482586193} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &859742332 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 859742330} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &859742333 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 859742330} + m_CullTransparentMesh: 1 +--- !u!1 &893732502 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 893732505} + - component: {fileID: 893732504} + - component: {fileID: 893732503} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &893732503 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 893732502} + m_Enabled: 1 +--- !u!20 &893732504 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 893732502} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.101960786, g: 0.101960786, b: 0.10980392, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &893732505 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 893732502} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &956735923 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 956735924} + - component: {fileID: 956735926} + - component: {fileID: 956735925} + m_Layer: 5 + m_Name: Container + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &956735924 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 956735923} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2048731596} + - {fileID: 1755680255} + m_Father: {fileID: 740974331} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 1} +--- !u!114 &956735925 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 956735923} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 0 + m_VerticalFit: 2 +--- !u!114 &956735926 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 956735923} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 0 + m_Spacing: 5 + m_ChildForceExpandWidth: 1 + m_ChildForceExpandHeight: 1 + m_ChildControlWidth: 1 + m_ChildControlHeight: 1 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!1 &1028782727 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1028782730} + - component: {fileID: 1028782729} + - component: {fileID: 1028782728} + m_Layer: 5 + m_Name: Error message + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1028782728 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1028782727} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.05, g: 0.05, b: 0.05, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 20 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 0 + m_MaxSize: 40 + m_Alignment: 1 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: +--- !u!222 &1028782729 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1028782727} + m_CullTransparentMesh: 1 +--- !u!224 &1028782730 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1028782727} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1812470006} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1042712190 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1042712191} + - component: {fileID: 1042712194} + - component: {fileID: 1042712193} + - component: {fileID: 1042712192} + m_Layer: 5 + m_Name: Fade + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1042712191 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1042712190} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 314965760} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1042712192 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1042712190} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 0 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1042712193} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 314965761} + m_TargetAssemblyTypeName: Scenes.ErrorPopup, Assembly-CSharp + m_MethodName: Close + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1042712193 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1042712190} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.29803923} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1042712194 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1042712190} + m_CullTransparentMesh: 1 +--- !u!1 &1135875168 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1135875169} + - component: {fileID: 1135875171} + - component: {fileID: 1135875170} + m_Layer: 5 + m_Name: Container + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1135875169 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1135875168} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 740974331} + m_Father: {fileID: 2066044329} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0.725} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 1} +--- !u!114 &1135875170 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1135875168} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalFit: 2 + m_VerticalFit: 2 +--- !u!114 &1135875171 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1135875168} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 25 + m_Right: 25 + m_Top: 25 + m_Bottom: 25 + m_ChildAlignment: 0 + m_Spacing: 50 + m_ChildForceExpandWidth: 1 + m_ChildForceExpandHeight: 1 + m_ChildControlWidth: 1 + m_ChildControlHeight: 1 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!1 &1290034538 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1290034541} + - component: {fileID: 1290034540} + - component: {fileID: 1290034539} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1290034539 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1290034538} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1290034540 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1290034538} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1290034541 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1290034538} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1362301614 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1362301615} + - component: {fileID: 1362301617} + - component: {fileID: 1362301616} + m_Layer: 5 + m_Name: ChainSafe Logo + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1362301615 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1362301614} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 789601277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0.25, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: -50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1362301616 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1362301614} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 804f4bf7fbf176544bd5efde4a0749ca, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1362301617 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1362301614} + m_CullTransparentMesh: 1 +--- !u!1 &1558416530 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1558416531} + - component: {fileID: 1558416533} + - component: {fileID: 1558416532} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1558416531 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1558416530} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 772918784} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1558416532 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1558416530} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.05, g: 0.05, b: 0.05, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 19 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 1 + m_MaxSize: 40 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: OK +--- !u!222 &1558416533 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1558416530} + m_CullTransparentMesh: 1 +--- !u!1 &1572088722 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1572088723} + - component: {fileID: 1572088725} + - component: {fileID: 1572088724} + m_Layer: 5 + m_Name: Title + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1572088723 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1572088722} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 789601277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.25, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -30, y: -30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1572088724 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1572088722} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: HyperPlay Login + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294111986 + m_fontColor: {r: 0.95, g: 0.95, b: 0.95, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 40 + m_fontSizeBase: 48 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 16 + m_fontSizeMax: 40 + m_fontStyle: 1 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1572088725 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1572088722} + m_CullTransparentMesh: 1 +--- !u!1 &1755680254 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1755680255} + - component: {fileID: 1755680257} + - component: {fileID: 1755680256} + m_Layer: 5 + m_Name: Toggle - Remember Me + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1755680255 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1755680254} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 482586193} + - {fileID: 669337708} + m_Father: {fileID: 956735924} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1755680256 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1755680254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &1755680257 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1755680254} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 482586194} + toggleTransition: 1 + graphic: {fileID: 859742332} + m_Group: {fileID: 0} + onValueChanged: + m_PersistentCalls: + m_Calls: [] + m_IsOn: 0 +--- !u!1 &1812470005 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1812470006} + m_Layer: 5 + m_Name: Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1812470006 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1812470005} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1028782730} + - {fileID: 772918784} + m_Father: {fileID: 210878634} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: -21} + m_SizeDelta: {x: -32, y: -58} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1001 &2048731595 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 956735924} + m_Modifications: + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_Name + value: Button - HyperPlay + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_text + value: Login with HyperPlay + objectReference: {fileID: 0} + - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + propertyPath: m_fontSize + value: 18.85 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 2048731598} + m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} +--- !u!224 &2048731596 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2048731595} + m_PrefabAsset: {fileID: 0} +--- !u!1 &2048731597 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2048731595} + m_PrefabAsset: {fileID: 0} +--- !u!114 &2048731598 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2048731597} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreLayout: 0 + m_MinWidth: -1 + m_MinHeight: -1 + m_PreferredWidth: -1 + m_PreferredHeight: 50 + m_FlexibleWidth: -1 + m_FlexibleHeight: -1 + m_LayoutPriority: 1 +--- !u!114 &2048731599 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + m_PrefabInstance: {fileID: 2048731595} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2048731597} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &2066044325 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2066044329} + - component: {fileID: 2066044328} + - component: {fileID: 2066044327} + - component: {fileID: 2066044326} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2066044326 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2066044325} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &2066044327 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2066044325} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 1 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 1280, y: 720} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 1 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &2066044328 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2066044325} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &2066044329 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2066044325} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 789601277} + - {fileID: 1135875169} + - {fileID: 314965760} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 893732505} + - {fileID: 1290034541} + - {fileID: 433476714} + - {fileID: 2066044329} diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta new file mode 100644 index 000000000..fe08f9ae5 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a31aa87c0b8cd954bb4b14166cc257dd +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts.meta new file mode 100644 index 000000000..634ad428e --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2d9c25322424d4f41a30626fdfd56e0e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs new file mode 100644 index 000000000..7ccf6694d --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs @@ -0,0 +1,57 @@ +using ChainSafe.Gaming.HyperPlay; +using ChainSafe.Gaming.UnityPackage.Common; +using ChainSafe.Gaming.Web3.Build; +using Microsoft.Extensions.DependencyInjection; +using Scenes; +using UnityEngine; +using UnityEngine.UI; + +/// +/// Login using HyperPlay desktop client. +/// +public class HyperPlayLoginProvider : LoginProvider, IWeb3BuilderServiceAdapter +{ + [SerializeField] private Button loginButton; + [SerializeField] private Toggle rememberMeToggle; + + private bool _storedSessionAvailable; + + protected override async void Initialize() + { + base.Initialize(); + + _storedSessionAvailable = false; + + await using (var lightWeb3 = await HyperPlayWeb3.BuildLightweightWeb3(new HyperPlayConfig())) + { + var data = lightWeb3.ServiceProvider.GetService(); + + _storedSessionAvailable = data.RememberSession; + } + + if (_storedSessionAvailable) // auto-login + { + Debug.Log("Proceeding with auto-login."); + + await TryLogin(); + } + + loginButton.onClick.AddListener(OnLoginClicked); + } + + public Web3Builder ConfigureServices(Web3Builder web3Builder) + { + return web3Builder.Configure(services => + { + services.UseHyperPlay(new HyperPlayConfig + { + RememberSession = rememberMeToggle.isOn || _storedSessionAvailable, + }).UseHyperPlaySigner().UseHyperPlayTransactionExecutor(); + }); + } + + private async void OnLoginClicked() + { + await TryLogin(); + } +} diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta new file mode 100644 index 000000000..4e7edde78 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 16b51cbda3e44ff44a13173ffbde98b3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From caf1bbc991cf6abb548e548ffbf1884718d618f3 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 30 May 2024 17:06:52 +0200 Subject: [PATCH 83/97] More fixes --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 0 -> 17408 bytes .../ChainSafe.Gaming.HyperPlay.dll.meta | 67 +++++++------ .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 14848 -> 0 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 44032 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 10240 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 282112 -> 284672 bytes ...meta => Web3.Unity HyperPlay Samples.meta} | 0 .../Scenes.meta | 0 .../Scenes/SampleLogin - HyperPlay.unity | 0 .../Scenes/SampleLogin - HyperPlay.unity.meta | 0 .../Scripts.meta | 0 .../Scripts/HyperPlayLoginProvider.cs | 0 .../Scripts/HyperPlayLoginProvider.cs.meta | 0 .../Scenes/SampleLogin - Web3Auth.unity | 92 +++++++++++++----- .../Packages/packages-lock.json | 2 +- .../ProjectSettings/EditorBuildSettings.asset | 2 +- 28 files changed, 101 insertions(+), 62 deletions(-) create mode 100644 Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll rename Packages/{io.chainsafe.web3-unity => io.chainsafe.web3-unity.hyperplay}/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll.meta (89%) delete mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample.meta => Web3.Unity HyperPlay Samples.meta} (100%) rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample => Web3.Unity HyperPlay Samples}/Scenes.meta (100%) rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample => Web3.Unity HyperPlay Samples}/Scenes/SampleLogin - HyperPlay.unity (100%) rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample => Web3.Unity HyperPlay Samples}/Scenes/SampleLogin - HyperPlay.unity.meta (100%) rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample => Web3.Unity HyperPlay Samples}/Scripts.meta (100%) rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample => Web3.Unity HyperPlay Samples}/Scripts/HyperPlayLoginProvider.cs (100%) rename src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/{HyperPlay Usage Sample => Web3.Unity HyperPlay Samples}/Scripts/HyperPlayLoginProvider.cs.meta (100%) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll new file mode 100644 index 0000000000000000000000000000000000000000..5ba6be16a288c56f6aa93bc940937a6b57b0f6c8 GIT binary patch literal 17408 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 delta 410 zcmZqBY0#O_!J^!@ylG;O4CAqhE5jKJCo?kEGoG2;2qc$oW@OsTE>L!0+da4W75+_T zk`4b42^`&ggj14H!!RYy!qCFVEZM-=%*Z&+(#XQVB+bIYEXgc2(bCkw0w`=?ZeVUU znUy=5cmD2G4;UDI1DF^X7-mh*<(6ml(qdrnnmmzP+417S3$vM;FZyg0&1;`%ze0!+ zsK(VQCZH%kD>b_$GsZb5Gc~WIIL0|6F*C0?F)cNwJT=K!uQV^Sq%x+sC^=@b1CNwU zOny>UOi^l1YGQF}OkQe9aYDCESrnUAlH+24>Mg&~c>g251ojTp=r zk{JvbjDfTfkW6E+1kx5j5fiW)3!r!s5T`OE0%c5r;vhMYY6AvyFgDx#SWuOT>4ep0 LL6P^26Ajn_6}os~ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 5cac3e799d0cecedc6e90a01e7a1f00ba47ed610..9ea3572a78197319ab1f4f19e936d7faccf45a62 100644 GIT binary patch delta 428 zcmZq3X~>z-!BVAAeQ;ur4CADUE5jM>CNnbDGtQXY2qcR(GcrwA5@7WXJJ@5I6 z{qoc#W4+S6%#up|;-X~z$!oQxWc2fsvh<5mb5awFQ}y#wONvWCh83k4=^26*O#Z9Q zV+6H7#2#ut(5MS=uHdJL|nqswC(BwViL<4pJMDczb delta 419 zcmZq3X~>z-!IBo@I%#5$3}fBImEnwlvl!!RYy!qCFVEZM-=%*Z&+(#XQVB+bIYEXgc2(bCkw0w`=?ZeVV< zd4gsKBQNXGO|KakeFK;n7#Lz%3q+Z*52c`tgO6jgs@ z1gdehiU}yn&q~cM$&7K%$xO{FDUNZ@NX*PDPE1RUDNju@)+^1+EUAnsE=rD>{6<IT9DGX^0 z77T_!Y{X#3kj!AfU<{; U$A+p*Obu3>1x?;FPBdT#0J+$GYXATM diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index f52b1cb38b30330aa83700a4e69005ec05f61a05..798ad9c3639275c55bf93ce02b19a303a08be69d 100644 GIT binary patch delta 439 zcmZp8z|`=7X+j4}L$u6;i9Iq*LdPer3S&GlnUS%cQDSlZlkx9ExU@wcKpp1Wz z)55tN$3H3i-P>$4!H-AJ!ra8f%reO$&BDmS(#+H>Db3ix!qULlG|AM=z`)qh!ZOhm zC}zpPV8h5@KKbAR#mzV89OvRanBKC2fzdaBiGhJ(<>a-?gn?y`KM=PvJk+69b2HTt2&sYS*5>4`;&Nr`zWiTW=2$)&lec_qdA0Y&-gMTxnY zMTvP?srt?tiJ5uDiD{|&<*7-=dZl@pC6)TcMalY;>&wMu^z)Ol^ovq+QWJ|)_486o zic3I-6{Q&I8G;l@Om0}gZ3MNS1!h0cts1xX{*TEET%H*8yQTaE(4{cIbR5W1n5Zbm z_+|2y6`GU(t@yKMSSkUhB&wV!l~$-FwD~2J8S*R*pgd delta 426 zcmZp8z|`=7X+j6fr}9Z}C-%rN{W~^sRT$&y$&8Hkj4YEIf#m(oj7-{n0{0h7n*LiE z?K#=@PRo3*eY-Z>Oz`8;GfYXdFtji-OExezGcr!IG_o)-NwcspOEODMv@|ua016wJ z8b_$GsZb5Gc~WIIL0|6F*C0?F)cNwJT=K! zuQV^Sq%x+sC^=?weYvUOi^l1YGQF}OkQe9aYKWEz7dkhTDdn1Iz-0L7DlIF%t0 iC}Ro~2g!j{8!(uIvDxI^Ykip*%r^_Jd(Sx0fE@tK#EtO) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll deleted file mode 100644 index 5da2e115f4bf4c6985b19293fdae23a0d9e07996..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14848 zcmeHOeUMyLl|T2rp4T7K-Awmn^1)0(ha}L+Oxl@D5|fa`Oy+|$q$mXh6~!tnD0fv#U8GbjR+AN1aj{^PT`X6ujr%+2 zy`JvL1d4M1v+U%Zd(OG%o_p@O=bn4t?VerNew1_~^5OZ*Ux>brl0Vx7zB!mib@YO7 zMCmKRA1wX4+WCW}1EaZeqGT6GY;!D;F$;yFlNhoR_IM$YDM>Y4k0>V=;N9>0ID4V8WCCcM2I~jEQU@Cbr_wg}pl9k(V zL22PF7_3?`U%zL?0*ytDdx{}6Sk>5WNI0NZ^rQQdn7@$M5a!M_^ct;LVB8GRX0LTh zTvUdSLaVNv84_lQX982?gMN+P0pEeg<7nk^z*jO3_z0!WK9ljlmpmS~I$7_IhpFUh z?f_209Jx*s1PnOVWe5TWhUPK^0Ry9S8G?WTy)Hu#Fc9)CLlD^744?c5yoLe9v`LN< zc!Yzd-e|krSa8W{$oOqUL@9|Ttwl(*7O@UPjYix^BI$%ycWLuige1VUm@yScTg{C# zLrWswT2I{s{n{i~G#c7*F3&V!P|aGC*AAMnOhXYZIR6gY!6Gu7{>1mRHEW6PCE$7LhGNje&R|xed1$~hl2xBF-q^_VZj2eNVq zHm6b48yg=%o49eN3Gt}KjksTYr^Wr+T#;d3+yWJg6lREUl;Rg2CD(SHPLaxjfT^sCK8D+d&gHu26A5i}+%`aRgO! zTcd~E#}v`VO_kQDI<9mbhuO480JY4yTqPYIC(WH zPtTjp4kWJu7e4Po6!Ry7abqRZ0+dTpUg&K#Ja4PO+kj^gaBtptsCx2RS4VTZPWPb> zZp6HC_QbqFkk|Dlza-1zJ0U77CKA`(1+!U}GD~YgPWxCdl5uq{IS(T|eT_EB+=#~M zy>_i|6DZ-e67~m@u-Z7isL{s*6m6mge!30czV!I(DAgD;S-{sDzHnE8D#*3 zJN6Hs{S!1<;O%5VcMEc}8|PgwyK&xSH*nrXaA3A%KSADY;&6Wv-qa?!g7YqyHQ9~Z zK@-ndqtE_d^oGdxAxn*evpR0C(5Qq7t46VFSIozY7ZcTtrFw*oKFS(6aSZ|2RtOnlxewxNY;ILhG>HakGHGLE`AFq~e&vT^72cqh# z1^3hkdEvgUIth+|d4v>8P)+ayEyshE!g-cpCT+okIOns3@VF_~GQnHYmT?~*9S_vu z^Cg3IVinMhzL$dr{aN669pmTuo)0!sn3pB($8s^~K;2jT2L0T}@Y4bx6WA>LWrDYa zpD{x8ZGS-v(T4)-(flLf`vAXH_dN2_iSM!YScUEq(}qlnP=dz6k=ak|B$o)6di8tFEV`gOPg)aN{Ejeovx9(~@U zHv5}FJ?v3;L1zlZtCU1lT~IRv*@u(%q^nkOJNn=%We948x*d>PG>;6P^Y2t7t{*lQQ)uFKc-%iQNOBu>IwC#S`+#fI9C}@t3RnP>OTa032XLw zH5z32oV0o@@-wA0_EMOZ2VOw$h460x*^>h@(gE?nfOud)Jn$jnwHVY?_yX-DWg^S9 z1F*15%Zh~qh@Sl#AiS5Cv1G+&hn~`JM5|c%292$~N#&)-y!4ot9#<;PMrp+!NGrA{ ztqNfUf3iKM`kC1LPmzDs7Aej@ruvo9Ksgz8Ok>2EIJc7WGo3p{X2Xq4>nQ{@MhWtxQz0EtuzkUNlyS?LZ<+`>9>HF z(;or*h5t^#ZK9!DV46Ndy~aVobHMi*C#j5HJ_LNwxQjB>TK53(yzw;PQR5fj9IAUk zWL^U2eTGsj?^A~W6M`=lxJ_V}z;1yDRfZm{GX>8GJSp&f0{>AUX&L&jx`g&|)~2!M zZ2}Jp=b+%z0`C&eU4lO;@E5}Qh2W%f+k`H91m7m`pl}WfJ}vM`{U%6~kKs0f(*pAt z-Lv#Rv`Dq8SJds=V;Y}34CFJvoH~5SI|g#*%k^zIcz#4NY}6S>BDf^L8Dt&c!y0oA zg*N##$m`G$0@RSL>VU@qHEM)Lg&g4rj#CNn`G6X-d_C}mfEw~z1o-)Y$gMc#C}fcH zplcIOCn4I5j8{)vf!EVE;9*?WUI5qwJVJfIBe+3cN{8uQ`T}WciQ2C$b*uWMTBxnl zF4IhHQhTo!(cAR3x^J4Zb?xT_4&_=6Z-@Q_c7U^`UdJBbp5M9T&lP$H@;{%;lbr%0*Z>L>aw7&VIFWc&p&!{#kABW{01}JH)RH;?;V1HjLVcyd@C)vt0U`@0HDT zoxYNiSSK53CH%A+C+n4THRyLyCw-85>AT?koUWkPa2CHvU59TMqO=!LJBji&ME;%X zej3#tq?_^Fsy$9$)LtT8e~C6@$HHgx*73o?4%)oevWJWI*w*ae;JSky)Nk22GoO36 zIh3~sCQ4Se$8=2acaP`u%wyDYju!1h`>b-QSST~+N;5xh4VdLaz`M#5g$(1nEN8Ts z-9DbnXDz!{sOzYibA+`sS9Va7E;yZQXtSBg6vqqB)^&q}px8VVV^+Crj#$j>q|NW804Q_X_P_QzNOLdQ$xkA4=Y^5$W$MDvdy2=`Y%vHI3zTYuzN9<$K z^)zBRgZl^iHqho>#q4j0*rF+pUhNiQkx`K;q_G5U%)}BIlajcZL94jm0>2j6c z?8$FEG&s23%pAfn`*K!3i-CyK&&7A$IH!SVnk&E8#5Y^zbMVK9^0`b`Hfv*E=2q{s z4v$-9XHJFma`vR8BsLH*Wy^LDcSmv=Yj@Gvjv#P{><&g8g66W_aDU1>>-gItB;DPT~N{!mc!5`W zJTYTK`H6v?Gns6H;)NcuGUv9*lQyzWSnY+EQ&7M zHYcjQba|g;X7?2GHN1)f?#L|ERO~}~%Z*vWcXC6ye9oz3!#zZTx6>*p#-X1qs3GWT=FnW)S z&8=qU04A&-)94z@UKYLL#aX*$PjQSZvu<(LPDPhmPR$}EEc41HM!RwuyI3v`JE@uF zP=;Ge*z2r9W+Gj<-rZYfCdwN2b{k6b0KC*$-GnGTmz9~>qKMn{9?MuIUOvQ82XS}P zXHK;W*{(|LwvIa3-`GrULf8ZP5hK{3KyZ)_6vZ(p&W^BDb*_4xBBl40GKljdIh+eH z0uy_uGeaMpP0qBO5fJ73tPva??1>p}h9_nYR}%P4NV$86cOXGtbOr~9+|vo|u#Rod zjo=(&jliaA=yAGbBfZkwAv|h-*_tuWW0hTbOtyE(!4le8JPH*vlD)QFv?-Nw0Mj)g z(R<9wj5D)V?YZi!*5Qnj!XA?98Q4=6-(%~m1W8ZM94QpbPA)UUsx0uzHsA$G*-QSI zOdNx(a?SAJmJ}Y|$I2YR+b0|#o42kV9CYvtm`Yy*qu6RV;iP!wmL(e81B6)Rp>tx= zV^o7)B6E&dO?^$^)NsAiNDZgz?8^R9wbeT2q!1`bQg-jL5+7p_^X0d^2vc1{2t4=r zS)Lo|$QY@bNqYl{O4ztNYBv2l-yNqS(5rsQ*V>yQ-2B#5hKzwfU zu=LK{u$7s}QH)z z%Wt1~boP28#GZ9*Zs5$=GHd;loHpEp;^o!^6-$HZ0?ycYLvtpu>GE6I9=ms}1PY(# z621elaoFVAv4z`$ z5UG(qU=FNcT`Xe)W<@JYCV&^ERRaANA(=p5JQ{A1@N7sx()9vcIWk8}il}oGvJU*Q ziQa~PdFaYOPaayZt)XTU?q=8HUA!H&Hsmt+THi!jf=o_i9hB_%x6$=z!5D4X;rZC6 zy^u3OC1@Y;Zj|hq!|)A{ne84%eGXDQ&P|}HuAT6;?8TMYD5D0)3%r%uki;njFoTwE zuXORdVB0ZzC%CJjs|&CXoYk=VI+}#-YiSC%v1$wZfM?Yf3s?jD=@_`KO~^Z9J@>~} zv83x$*hGn+F5A=nz4LZ{a&M&d+Rno*q$fz>E=>jM0AfvyMj4Io5|}d@6o`#=Ar+s# zE!d!;_zC{|LmKFKSopUX4LS>jLVA4q*7)=-@dn{PAW{#+=ZUJc&#z+1x~AB;isG(@ zOWa1aLw&;%{G0%Ffdn8vs1!{3g={3>8hZ#1~Dt`ncXrySgkz$G1^4P+r*pzCDPoGp6 z%k&K%8f(Fj*!4USD%#SJ&}(YZZ+#6ZgPekBsH&?Ttt)!H*^2W}Dm+&=yu=-A@DE}P zGXvkDN4UBr;;#$D8(ja!5BuG)sJf$l8BfJLOiXz0dtAk)pNJoZ=^92) z@sknwMxh9?o|7@4P4(bZ@EI?!4OCh;kfPyqRBUbF`;(1- z`N8T_R|MK0-1Fk2pMU6;zz0U}`^2&9zp*>;;Nue;R-St3AR@L4Pp{9w(qV9mZp4=3 zS!jrtq8!>BC`@AdeFlOU4H^PcjefY%BjC(qj@ZC~u`#|en9x9?W(uqzNF zb<2@8sSap}&YQV|z~QBYm&DyTNX58GqS7V-(F<@(J?D&3-H8d`z4-BaW6LaC_{A}Z z4*b{z|FB;uN(s^0ksaR9v0=^nOnc}0HJ!s7*KBBCJG^1T`l0ofxp7_l2C&=T-v0LW zMDI|v>5Y4|Dcbc` zl++x!D(^O}=f1!d*JgNRxDFMfas}tjfLto#-ds_gh!NG}+YRqBkf!efA!p?>=6?Ug zS#PR%m7aSG(v~<&sx488p^i>>lG_s9IJ)9iZcD)$$B{qZmT(W!IEW1t4_SpRo$Y3J z?Xb0eXpOnvw5;sBbM?dl?tOlG$1}eowQDa2@f~=6yc-XKsq$gbMm+qrcVQ2nj!KPN zR==5W>3#h@{rA5AgP(k;|IY4*S06t0`pdrWu#VnM2M|NoTZf$70ryZ{J|Hv3_sR#3 z@}0+c0SCwf_{qInQF}Ez6Hy0>L)Rbh!v8?cl`9s`o3u)mvP0CrqifB&_2e0+7d_+H z0SCJq|9jQSG`%nPlgFRHAS<7rGM=bVv&+hl_g(HF?wxw_`CWY5GKNi$ZPYL z6;N}wt7hv%mSKT~MANe?++UVqO6KrcZU>&L4-$RX{RV|u!1)KCSK=f)2-u6$T|cGq zmlnH0rvdxizq-ITnZG;ZehbAj#2>fB?~3K)19X#{$3W48M?tHJ6Ih>jHcaE3#%D7A zEXVfBf2~nD5Aq3f<~%48U-I!^B`DbBK*~M+&eh}-nRc8O-G6Io2pEs58Ew1K+ZfJ- zeCC|Mh)hsOhxl~kbj)Yg0`!}(%Ayp07svH(PbqlJeaEPtf4SYeL~q589<(dtM9TJ+ zX4(JO>Tkz(qGmjHCG_(X&of_U5usM@%J4`;&Nr`zWiTW=2$)&lec_qdA0Y&-gMTxnYMTvP?srt?tiJ5uDiD{|& z<*7-=dZl@pC6)TcMalY;8O0Q2^z)Ol^ovq+QWJ|)_486oic3I-6{Q&I8G;n(7(wm+ z6%Dl;*?!4NE-2o?pYv)n8% S^OBKihskC^x%Z3{4cGy=`F!F4 delta 414 zcmZp0XmFU&!J-%~^I~F;4CA7SE5jLmCo?kEGp?B22qYUfGcsih2t540HC~B3*=2i) ztoPPj`PrLmgtVA63{%o93@wbzk`0W_jEvJPjVugI(kv{@lFU*QElmw9fWijm2Igjy z&xs`Qx=45LV_@_RU}9ikST@;KRGwAMgn>bAa-yiRi0*dmpQnO1kW1Mp`Q}arSW1KS*GxLfQ(^6x~QkGxLfQ z(^B=zQkH7OFu`Gm??{4E&F8BBoCjKPv2iNS&)4Tz0^*b*pW3dBi35n~1eu!sSWWeOAli5mc+ fF@qskJP|AkQfImOvY06&lY;$bL5cT_6Ajn_i-duC delta 411 zcmZoLX)u}4!SY=+`r*VL8Ah&&E5jMLPiADSXB3#+$XL(xT5mHGQy8~EqP}o;`8iA9 zB|Cy@ckOFGx;cZlgHgjUCC$Rn!pJPyz}U>lIL*??!oVcW!on=cEH%;6)W8BLY+!C+ zZZ=thKZe(7-&UOmR_i%w#!U zW0{!zq^y{t)ST4B;?$VD)RN+o#JrTmq7)-NL$HF$3j}zKpjI{NL#+Zi>zyr!K*JK( zYqB|R_V}M{wAO?Syu4lWCuo(&3r;-EdGWJDGX^077T_!Y{X#3 zkj!AfU<{;%VMUCOg#3R M1ts1yPBdT#06o%pDF6Tf diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 5590de49fe89563341fcfe9b74d6467ba29d70d0..caac46d36ab9bb856b9e9036a705c5d08593f358 100644 GIT binary patch delta 427 zcmZpOXo#55!SZg~-+vQ(WEdw+Tp7;jFqx6Do^i(HMj%lru2` z)#!&7rxq3KrzaLACMD*jBy_qZmQ?B&7bWXY<`>tM(a%rH(l1KQNlh$H)z3>UDJ}sSR+M6-X9!j>`M)BM z5!C+sTu}Q#ZhgXYY**}t1#t@TUnDbtE`@<62OvvfqM{gM$>b0v&CPX6HH@42RIFJ1 zEf~xhOn}gg!IB|~!Ga+Th>d{Q5-4H{#7RIAV+I4Thyjpg3KRi}8vvm(gCSTv5iAN) XXSsR0Mj<296obuzTJISr8n6QZ&NY2; delta 414 zcmZpOXo#55!E#Nu>*>TE8OFMaE5jMJCo?kEGqy}_1d{Qa8JYa01a>^R`NeRtj@Qi7 zcYXz{xeScH0Za@G3 zRO4zD6Ht_&m6~0W8RMLjnVMHp9OImkn3-3cn3ft-o|QNY4j z5F0U=F(fk>Fc<@ABOsZ^UwdcAk_v8=3s2LdAdd+ QBU6LHWe)f=M;>O#I^18z~9gmva46^_YJLJaT zGJHDVT7ipUa;5KPhS@Ity#L8C^S|A{>z^MoOdtNU!Z6l=I_@36Pl>uc~dgof+fUZ1

^-JUw)S3)^(-=`N8KaGfsZj zfy@iS9&n%@^v85ww;mwyh;{fh>F(J#&c#{qaQ%}!*0L|-B(JyFGRa(M-HRgno#4w{ zJk}nG#5qCG;rH*g+EIPIZXi&-KOPNpvhtinM{=j9s7QwUK4D0|fk?<&yOo@2s~|Ok zjRZQZdCDKsvLVUH5^DlToO^x!Yg7^bPWcH}`wn&y+o5?4C3FPUL z4fywvQ^ChjHifQ!9CR4NAlV2##^O%Soi9nt>Z(4F(_n6a<0G6B6jE&eu-_o_sAK5` z`XSoBe9WNjR&s@NlqxQq6x*Ug7te-d^81u4+z8TzRxA1C7kA?tQ!_rxaa*yxonw=t zdYVv1n~^*-a4KKZgVyHCNZu=jRPFyb?tC!qelSH}26@zfu)V)4I27zV+@*vw=O(9A zo_5d#Fz6u&j8-Oa^h5<^(i=EWDEE6dMk|Q?yf=3WoFf|32o4g!z(4`{Y#@iUU!+T;&H@q}++jfPUk9@@>b-Bp_>cvq z3zH@zrweE_q@{t0QnET^mzJvMQYs57Q0iLn%yGrcR+2Tc2T$U-GjwQO9I1qasAwA= z2=21BjhmS44jI*$6xUO<6^2Wb?W6A8?}f`L4n%W*BbX-A`V?F9xT0iRbzliJX-oJ) zB2QFl5&+gb?>`0gu3>2fvPyCVgf`&JyGL5i+`jH2ZR#vrXZC*`%d3K)s} zne0DVT-h-lu(ASf4wCz1Iy`l63NAy!eC?7V2#q<}w) zR)dZp*$JoV8*^DW{|@SMM}^*Du|M__2gQenz2XSMs$7z2qZ3=M* zvYOGGAx!jKD$GqeW$WK{=p2+{46INMy$}Nul=6vCaldpzuVjoy1rZBNhIuYgb;z43 zm6AEAJme=;9@JVEoTwno%d^Q+vp$Wj2~rvqB9}9jTv59h;7~}{D`8Qr%Fu~l#RG>- zB7SOI{nyt^DRCVM7Ci>YH6s@zfk_P~Rj)d>!jq`nWqYldGKLQB(y@)vrIdstg$%y>ZJW%qmz_Eb z2ok->=e-ndr_Yrqv$hV~be|Ve#`^5MV!8g(hu)*XQ`EF9&P_q0xT(WQ5_Z~~n|g2J z*B9&t(Z!Xg-R)Q<4ucxiE&u8pWoh{H_ixZ@4mu7^)cx}Dn`M;!l4-tr;{C^OJ^Xkt z`9b=--x*fz%6F;^t{RT_o9`BB){cMhHVx6Os}U*VcTxA&qyV>o4?|8IzeW4st=!|B*)Fm&Y-;Z>Vsu*xrB(x%W2C1 zJO{_{pX7hSn0oy9P}~w+d*LCwz4(Zp@-o5a9=NLDx()x`ULY-3oX36?Su1+;7lYkz zeU7OUe|O|Min)%W+qp*AI2&U52t zU*SS^`zQIRIPDVRVHa5}x7l2=(2K4(H_EXB=i)h05K&n?QoFy#1<%x#`o<$6=E(Ey zwVnn>HKRZ=180-_{v(h5^xXTFzc+sH_&$8VPZyspDb~n81m>Q{_m0D5G axAeF7Easf+^5cp9%}aSdyl0wsXa5_?46C>R literal 44032 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index d6c8efaf2d69ca42012949afeb06a06c63110f28..1e8419a700d21e7da74cc4c5fa8c136c650ae891 100644 GIT binary patch delta 435 zcmZoDX(*Y{!IE3E>&(O+8AhXtE5jKdOlD-PXSA5y$XL%L;o&IfFZl zoB52^G5cFEm@}9Fp&5fELlT1pLmChp0kI`e#1x2=fFi~W24E2bAj=de0una>LSqI) duy`U^6r|2_Gq>4aMkW)x&4L#187CUB0{|Stf#?7L delta 426 zcmXv~!7Bt&82{cNMMSyLuA*=--ptsyZyjWt)TTBhxxCBF&YKJx+8N1dS2;LP*1I~o zNKr<~fymLnKvLo$5m(~P##g`Z_x1aJ_51qDVL9C1sGU@d=gMXWN>uh|(2YQ-gu2BV zDk(qtNKwXmS{{v;t?Mo&yLELkZMng1#QLUcRn2j!Ms-ra2GI>SqffiZ@zsCQWQzAQK=}y;0QSVWnylN)$J2w_mECzi<)e{0e(=%C)-QLD zko1fWv5Dg19G?$8W-fT#4+Cb-TAm+RE@vy;Hq>R`3s+fCEU-AGgDu)~tjHI*6>#SB zFbFN*v5JnaYE?rfWeTg%kDx(GL_0;)kCFjOK`B{CMETF7rQZ} Us~}M$`9@0TaMViQPzBfj0{5ze+yDRo diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 3f7f29ac7c0f6a9eba35427a8c0179089ce5bd2d..840ea040ffd9258b318bb11f1d247784218cc5f5 100644 GIT binary patch delta 493 zcmZqhX$Y9mq4a0xA4PXM=xOVbF8F|);)(i|2Cm)qj4&&$ubyPcG4`;&Nr`zWiTW=2$)&lec_qdA0Y&-gMTxnYMTvP?srt?tiJ5uDiD{|&<*7-=dZl@p zC6)TcMalY;CrC@m=;tS8=@+Huq$U=p>gT1F6qkSuD@rlaGt>vVP0FGmC5a)}!_mmp zi~;J5tAxm1cZ1`HZaQ2uR!j2#pyG c!QzQvQII;z&F2*@nV5KNHVZ0!09wKZ01Ie^Y5)KL delta 462 zcmZn&Xz-cPp|m`E{cHv(c)*~fz|CmDz#sz@;D88zv!1vrjB)W~M#g%sKhi)k1t6B0 z+{LKPC^vZ-tjMq0aGA$MpSbB!z{nEmIr)@7hKJEKr;J0~;gfz3BVM>~X zp@orIvVpOgk#U-(k%fUtnuUc~l38k^rKy1hP}soSz}$?1!HJQXUI9#p&we>ppmW@A7 z104kePeE*jiHc&3*C#)e)nsS*uL=w>fz5y9TbTU~8B!S17%UhJf!K(_j3Jr9fWa6@ z8v)5Q21_7q0TeL-tFZuzCjoIPLn2Vd6etdo1F1G(Fb89^&F7UZnV5c9Zx)pM#s~lg CJB954 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index eb3781f3a1d8f946c039fa6d4bea7380c31bdbb5..124b37b3989762d09892b4a030f2003d2414c778 100644 GIT binary patch delta 449 zcmZqpz}E1AZ9)gj)@*~d6MJMBpG{mD&Nyi@BV#?|o5_tp@>nw?({@HC#%eYJlYp$k z)3HoWeNqhW5#@%@w)b!_&X}uVVQyk#W|?G>W?^JuX=ZAclxA#TVQFA&nq+EbU|?)$ zVVP(O6tmp!vy4%OgV*l5#2W@i-vA~C28PYkOV=^Vvu2-VWXPUAa~-2{=o9IvU-Q;< zxHoKi+~MLsk)08!NJ+UY;DKRf4QQsv$ximL5ucTN%peR4RC^0v)C^0W9 zRo^)yF*C0?F)dZUJT=K!uQV^Sq*A}QD0zC|GDcZx{rsdX{i4*I)WqUc{k+tY;u4Ty zMJYylh9CuUwgo9k48b0bMy6&AP-h&6IRoVA#;mzAwf&nHnLS)Bv~u}*?LCp>6g|sYHa7*z&MN9--5xM!2}4+7%Ul*7%UjlfY=C#ErBAYK%4{=F=j9T tix>b|ra%#pxB(CvGZ=!!6TzY&b(Y(|Z)Ox^VtQe_U2q%Yd&Y?d>;MZMi)#P? delta 429 zcmZqpz}E1AZ9)f&s$I&ri9IrmmnNw4ITOv6@X_+OCUh zqTBrGaPX?}Z0ulQ^bKHQU|^Uxy>uO;JZsolMuxEIGuJUHJ3ebJVf{1n zg4eo~=zDAIl4dXhRk>Ql1Qg|GrDm68#yIC>rskCt$2eysX66+qrlrP|rzRQemF8uZ zRK^q+CC5x|Op%d^$xq6PDN4;rO)O50$xAIME=kNwNi0e+(lZ1pkhLgCNn!~0a5OSC zV}ROt>mAfakozu0Km2eZpz(SRKQq;!ag diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index c222ab96b3c1b0ef98c4845f7b42e9547566cc57..4c2b68233ec734ad0fe285eb1dbc7bbd4557ce25 100644 GIT binary patch delta 434 zcmZqJ!`QHgaY6@+x--j!i9IrmRTEc+Gipp`WUOawnA`{?V>UA~CA$eQ>uPXuF4uJI z`6DA3{3JSMbBTuthlYi@iHVtIl0}+@k%gt1saaB*v4Mr9fw5_lshNR+v7v=!qA5_! za`T1&7iQiA>TOpU7<~hn7#JA#PG$^|XJag8U|W;`_s5^j;4t-Y^eMTwv+b|ra%#pxB(Cv fGZ=!!6TzY&b(Wjuqh2yH)fjIUjCs#E(SRKQY(0KB delta 417 zcmZqJ!`QHgaY6@+SXTX>i9IrmX%kn5GYU^;WUOb*ncN5@-8VBbCA$d-PHL}=v=eb% z>EG2K@~vX~<`NGP4h_SUGz&uuBeP@!V>2V;G)p531Culh3$rA%)I>{D0}G(Afw_UX z+2#!aF3h|hla_2_VDt@OVqjocF_|$$p6yK$1H+q;$!Z}=j%(dao3aX0y|&(eWF4q> zx`z>{$ki$)peR2pHM=A;#yKZ5HLs*N#yKM~Gp{%?Ej6Y*HOW}7G%vHHGN!mFIcBnB zfTB!Heo|IUQEENp;m$1)#zWD_|fUp zQ|`ODN34s1c0)lZh^;VDQH;@ja$u+?JHvlf1_cIz$%#>mHuHrYV)i#=NMT50uwXC* zVj~7KhGYf<24f&?1SHcKEP=EIP{ahR#sVmw1jMNfi9i`spg2elq}qVN9E{C2%SXLr QWXdq!EEw~iaiRe`0Q5L~Jpcdz diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 51dcfbdacb3f27a3236cfc976397ca0789c5a070..79e8983f9b66f2fdecd9cb72fd40d452ff622ae4 100644 GIT binary patch delta 994 zcmY*YT}TvB6rNc%cUP^{GBu%bHEe%o?(EF$x>I6?hC*7KCE-KS%t)ySrxRa`?{q&JX9zy)!j2H8FFg zP`FcZBYmxo^`#%4Vpj;uHWfXKGR#S$DFM>YHnAd^W+z!UVI2*Q85hvLOwK7Tbb9MABFoO&59CM^++NjMbvO8tS4kKqKa}z4~0ch4n|Zh1e}^# zZ92?WUv)9e`qImm;iNHy%~m%D(o)a!q}AI@&U@R)g7-iXWyx<~f{v;`>!D7 z3zB=jBW3@E3G1&T8t*OepjJSiv(HGTF6JEaz+YjLp}@&19>47Q~WBFQmjGMHkP%I8YxqYr7RBzD*#j6g(vbh;Y6pqeK?7Y)MkpTqcYlr z6L(VV7im*>4>pH}@kZ)`SV_a*MHlVd+a1lvihHB&d7Io0ZYkX4ltZ%LE|`^^0J}+} zRGzz|7RgVyo0fJ_d@Av6?iQ50UB;HXE6aBnwkPTU`#z}iIH+t#vcdvXf;NH9Lu{VZ z%MFvt`!|;tSGRRN`q@48VRrGRorU@=Y+7hQGc{c^;u`80jg61Mx3Eyu933#Vk)){^ zgBa1fva|$77qBi1VwF{!&tL0GH}XDX)b7Q#w8($ z$b#&Va?|`8%uQqOw6^2<*>?vYqvgbx(mybFUaEV+;?nh1@CSJmf99z2iX~%8V`gjk zOu?}T)66Jv!i>u3OoT~*N}wt*Ay6F{nGq=?f)xVB=0!L%6QsOGSvyZ9OKOiJAZ5z; Jud`{f_%9BnCwBk< delta 1100 zcmZ`&PfXKL7=NAM#&ip40*FLA7KClIYrD~vKPqGrjDXC68k1@0wl^q@cC;lxVgd^n z6FE3v;=zN_i-||G8zhpb2aF*E&L$p>(S#5V1~2&9)qw|_eDD2!zwb}J@5}4b{L=iB zM-}7W3d@C+M&f4S&0XRE5kyPn&lmushz+-)dqfK{it@xFK_SBCwQW>k*&1*rtbIq8cGU9 zS!u_UB|nSPp8E%={|1r6vnnZS8k|mMC8&``9kdtlRWt=n;IFzZOZviJhMon^;F5a* zKiUagG*Q^%!)+z*N1JVqaylk8r2uC?%!;~VR;r*r;@}d{C-9j7mX$$?L>r2QTRb*WiQ@Ykf8gu1Yuj4wL zFB7y9G{(X*Mh^5T=sIHVcrF#iyOH&BxN86|jOdCA%L*D}oL0&hbJ9)6L|v6ql2{IK z4k>AvEmO41SnWFEvFMSUV^3BdXU6XGY``kL#X3xMzJ5+uWKGHF^bJjs%>?t!xR8T0 zf{k?za&;DZ$WfPE&hDV~yny*FwqD)_#8AwJ*;8yix3Hm2uC8(iqaE~}^Da&>pS!-S ztPkd;ZTR-x{R;$+>+4L!RAmxQ=~AM!7A+B-5G7d?GcYj+lOcN6crgi0O_dxY*g^M; z(~>++n~y1>BqtLp%tBFv2^s2|F3M?9O>;E+PX>A!s^zR6vb|OhM&H|1>%rAKz1iQd zmpq=hIgWXB8JH}1YVm)17z)_IVKX2>b&(CP5=A%v;KVQs(jWr_z+&S74^n^uA$)WA s%zzGj3s?!8F#^_;*dP$Gryc8t&xmF~#55kQbqv{JT(PEemnbmyKawpt$p8QV diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 32389be387a7408d70e66c8d4f4e59b84b10e74c..5b0747beb463228c4cb514c213b0e52e13a6d183 100644 GIT binary patch delta 435 zcmZqJ!rZWhc|r%v=>zu1C-%rNYE4`j&UkGyBV#?I!Q@89dM2)So0*vEHV9n&>i%iz z?N0x#`4jFwT=!@3<_Vih1T`$oO-#%zlPuCKj4Uk8OwE$gj14R-4UA2bOw9}oj14U; z6HS3)mYa2s)Nt`uto56~z~~#m#K6F?ee%|G@~rFMGBB*4eDj=gSPJh!zG~B5j;kZH z_PpEhwUH61MnAMTwWwG>J+UY;DKRf4QQsv$ximL5ucTN%peR4RC^0v)C^0W9Ro^)y zF*C0?F)dZUJT=K!uQV^Sq*A}QC|Q5<#R+mU`uRy&`bDWZsfop@`gy4(#U&uaic*a9 z3_%LyEecYS7=k?E@gjEAhcCo)aTScpo3vRV)D83(!cTF2~f!C=l{0)%D^mJCS@77S@XYy`xXKoL_QP6CP;GZ=tH41g?C mpa@9Z00@m448h`wU{R1d%gx-^{xUM@*liZP@t$#_0XqP3MUsI4 delta 418 zcmZqJ!rZWhc|r%v-Lk~n6MJMB#U`!{XFNEWk+GgpW^yBAJ=52>o0*vEHV9mrd3H~= z>{-_pO_opDq~Wlp1Tdw@gbJxrd zpR@%kyBL9LT&-dPit@8kvr95#oO3c$^Gb?ioHG(L^NJJGQe(l9-p0Sd?O8wD`8dvofUM} z_3j;k+tT`?Qsq`JfsTR!=667r!bC+eU_eZ|pvBJcUzI_DL144sjrWY3xi4*G_BUim zVMt@JU@!z?BL*{uWCjBUV<2q=B-0oyfwTos#00Fy0w|sY#HkF4Kp9h@I7kkp+JM0v UjLkN4U;E3*Bw+`(VWI&$0K2(}e*gdg diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 463a5e65ee25a0ec1a8ade989b4a7b1d5772f917..812503fe4a4f1895d61b4c604c0fb8e52dd1e420 100644 GIT binary patch literal 284672 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 literal 282112 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�AW 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 z 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 E2l(-+VE_OC diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes/SampleLogin - HyperPlay.unity similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes/SampleLogin - HyperPlay.unity diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes/SampleLogin - HyperPlay.unity.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scenes/SampleLogin - HyperPlay.unity.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes/SampleLogin - HyperPlay.unity.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scripts.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scripts.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scripts/HyperPlayLoginProvider.cs similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scripts/HyperPlayLoginProvider.cs diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scripts/HyperPlayLoginProvider.cs.meta similarity index 100% rename from src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/HyperPlay Usage Sample/Scripts/HyperPlayLoginProvider.cs.meta rename to src/UnitySampleProject/Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scripts/HyperPlayLoginProvider.cs.meta diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.unity index 8df790664..2871fe896 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scenes/SampleLogin - Web3Auth.unity @@ -104,7 +104,7 @@ NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -117,7 +117,7 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: @@ -155,7 +155,6 @@ RectTransform: m_Children: - {fileID: 1079369615} m_Father: {fileID: 118889340} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} @@ -233,7 +232,6 @@ RectTransform: - {fileID: 57877276} - {fileID: 1214381517} m_Father: {fileID: 221640018348301908} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -344,7 +342,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1897816690} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -425,7 +422,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 337558420} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -558,7 +554,6 @@ RectTransform: - {fileID: 279657856} - {fileID: 1897816690} m_Father: {fileID: 1799608973} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -618,9 +613,17 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -654,13 +657,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 359109759} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &771332079 GameObject: @@ -694,7 +697,6 @@ RectTransform: m_Children: - {fileID: 221640018553606200} m_Father: {fileID: 1799608973} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.725} @@ -814,7 +816,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1520162125} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -881,13 +882,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1025578980} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1079369614 GameObject: @@ -920,7 +921,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 57877276} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -996,7 +996,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 118889340} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1133,7 +1132,6 @@ RectTransform: m_Children: - {fileID: 1640414611} m_Father: {fileID: 1520162125} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} @@ -1265,7 +1263,6 @@ RectTransform: - {fileID: 804898219} - {fileID: 1387636276} m_Father: {fileID: 1897816690} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1303,7 +1300,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1387636276} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1378,13 +1374,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1679801098} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1679801100 MonoBehaviour: @@ -1518,7 +1514,9 @@ Canvas: m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 @@ -1538,7 +1536,6 @@ RectTransform: - {fileID: 771332080} - {fileID: 337558420} m_Father: {fileID: 0} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -1578,7 +1575,6 @@ RectTransform: - {fileID: 249944481} - {fileID: 1520162125} m_Father: {fileID: 337558420} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -1654,7 +1650,6 @@ RectTransform: - {fileID: 2063401255} - {fileID: 2017486156} m_Father: {fileID: 1799608973} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.725} m_AnchorMax: {x: 1, y: 1} @@ -1692,7 +1687,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1941751038} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.25, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1827,7 +1821,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1941751038} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0.25, y: 1} @@ -1897,6 +1890,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 221640018348301908} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -1996,12 +1990,19 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 221640017808192961} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!1001 &221640018061849258 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 221640018348301908} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2101,6 +2102,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 221640018061849263} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!114 &221640018061849263 MonoBehaviour: @@ -2143,7 +2150,6 @@ RectTransform: - {fileID: 118889340} - {fileID: 221640018720180776} m_Father: {fileID: 221640018553606200} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2222,7 +2228,6 @@ RectTransform: m_Children: - {fileID: 221640018348301908} m_Father: {fileID: 771332080} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -2279,7 +2284,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 221640018348301908} - m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -2406,6 +2410,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 221640018348301908} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2505,6 +2510,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 221640018859585639} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!114 &221640018859585639 MonoBehaviour: @@ -2531,6 +2542,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 221640018348301908} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2658,6 +2670,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 221640019303666004} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!114 &221640019303666004 MonoBehaviour: @@ -2684,6 +2702,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 221640018348301908} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2783,6 +2802,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 221640019533962428} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!114 &221640019533962428 MonoBehaviour: @@ -2809,6 +2834,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 221640018348301908} m_Modifications: - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} @@ -2908,6 +2934,12 @@ PrefabInstance: value: 17.9 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} + insertIndex: -1 + addedObject: {fileID: 221640019796147401} m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} --- !u!114 &221640019796147401 MonoBehaviour: @@ -3055,3 +3087,11 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} m_PrefabInstance: {fileID: 221640018061849258} m_PrefabAsset: {fileID: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 359109762} + - {fileID: 1025578983} + - {fileID: 1679801099} + - {fileID: 1799608973} diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index 09996190a..1d18f2287 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -155,7 +155,7 @@ "source": "local", "dependencies": { "com.unity.nuget.newtonsoft-json": "3.0.2", - "io.chainsafe.web3-unity": "2.5.0" + "io.chainsafe.web3-unity": "2.6.0" } }, "io.chainsafe.web3-unity.lootboxes": { diff --git a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset index daebc5fda..e9233db45 100644 --- a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset @@ -18,7 +18,7 @@ EditorBuildSettings: - MetaMask.unity guid: 7e829b2033fc8554eb0048ce07704f77 - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleLogin + path: Assets/Samples/web3.unity SDK HyperPlay/1.0.0/Web3.Unity HyperPlay Samples/Scenes/SampleLogin - HyperPlay.unity guid: a31aa87c0b8cd954bb4b14166cc257dd - enabled: 1 From e49dfed13e46c025e37ffc6e047ffe8c097092df Mon Sep 17 00:00:00 2001 From: kantagara Date: Thu, 30 May 2024 15:13:05 +0000 Subject: [PATCH 84/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 17408 -> 17408 bytes .../HyperPlay Usage Sample => }/Scenes.meta | 0 .../Scenes/SampleLogin - HyperPlay.unity | 0 .../Scenes/SampleLogin - HyperPlay.unity.meta | 0 .../HyperPlay Usage Sample => }/Scripts.meta | 0 .../Scripts/HyperPlayLoginProvider.cs | 0 .../Scripts/HyperPlayLoginProvider.cs.meta | 0 .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Scenes/SampleLogin - Web3Auth.unity | 92 +- .../Scripts/Web3AuthLoginProvider.cs | 4 - .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 10240 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 284672 -> 284672 bytes .../Scenes/SampleLogin - HyperPlay.unity | 1751 ----------------- .../Scenes/SampleLogin - HyperPlay.unity.meta | 7 - .../Web3.Unity/Scripts/Samples.asmdef | 2 +- .../Scripts/Scenes/HyperPlayLoginProvider.cs | 37 - .../Scripts/Scenes/SampleMain/IPFS.meta} | 2 +- .../Scenes/SampleMain/IPFS/IPFSCalls.cs | 84 + .../IPFS/IPFSCalls.cs.meta} | 2 +- .../Scenes/SampleMain/Marketplace.meta} | 2 +- .../Marketplace/MarketplaceCalls.cs | 275 +++ .../Marketplace/MarketplaceCalls.cs.meta | 11 + .../DisableGameObjectIfServiceNotActive.cs | 13 +- 35 files changed, 450 insertions(+), 1832 deletions(-) rename Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/{1.0.0/HyperPlay Usage Sample => }/Scenes.meta (100%) rename Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/{1.0.0/HyperPlay Usage Sample => }/Scenes/SampleLogin - HyperPlay.unity (100%) rename Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/{1.0.0/HyperPlay Usage Sample => }/Scenes/SampleLogin - HyperPlay.unity.meta (100%) rename Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/{1.0.0/HyperPlay Usage Sample => }/Scripts.meta (100%) rename Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/{1.0.0/HyperPlay Usage Sample => }/Scripts/HyperPlayLoginProvider.cs (100%) rename Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/{1.0.0/HyperPlay Usage Sample => }/Scripts/HyperPlayLoginProvider.cs.meta (100%) delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity.meta delete mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs rename Packages/{io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta => io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta} (77%) create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs rename Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/{HyperPlayLoginProvider.cs.meta => SampleMain/IPFS/IPFSCalls.cs.meta} (83%) rename Packages/{io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta => io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta} (77%) create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs create mode 100644 Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index 5ba6be16a288c56f6aa93bc940937a6b57b0f6c8..a9491c6d5c7914a334240aa53d61358652d4178b 100644 GIT binary patch delta 374 zcmZqZU~K4MoY28y^w;v`#2y*OSrb==GkQ#BWUOagFu4&()@){EVmAos}_Y@&FHcP})+^1+EUBD)$x0vS5GHFI zBdFGvET~qXHF_&8SC{?&=M!{tjqbVvpd~QS1!5~qR1{;ZncQxzIeC+H%wz{fiOqaA zZOs1342cYB42BFzK$y&63513~I*q{$C=L=cWiVl|U`U11X+W7IuzCxis0o8PP_+d^ c3Q#qOPGd0M{McTViD{1IWv?YZoyv`UWsDFfgp2>}n;?Y97hJU_Lq1O4-f0mh+@~ z(M;c&!mit1%Dr@C1gg;wElw>e)=y6?N=!=3OG(ss$xklLP0cGQ)(2QQVWn|afwjL(8 z8LEe>>o#|>Z@v=M&dnG!IVMeBBRMh6Fexe7($X+F%`7n~$<)Lm6^PT)lF|$_I5Kc^iDpQqinFm@FHcP})+^1+EUBEVm1_xfNJ_4o z5mf6}m{yQAK05Pr_3|#ao-H|4a0h4!415Ez6(%Z*F}|4mIahPDT;2!9$qtMXoB0Y} zG5aSoBr>Ei7&0UQVKRdy5E=sMGzK%EI7rNt!GytrAr(re0cDcF>MekxCJg34)fNmX cK-C~Rjlp=cd&xmYCJvj;f@SX+CmOH=0Oq%K*8l(j delta 390 zcmZqpz}WDCaY6^nnR&qt6MJMB2QQVmI&(}$ye%b z)8(}IH}IK@Y`zlJ&dpdfIVMeB!@}Ie#LP0uBF)0c!qUvtEGf;{z{1kN*fh!1%)r3d z(84m&6ewmn`Co?i=5uL>Sa~zn_}pb+^bKHQU|={rd2Wt8>*8((hQ*T)<|w-z$W~dW zwKmvi#-lka>|3sPF#^@-hZd(673-%b79}Pn=A|U+yW}UA=BDPA6zc~R<);@V=4KWp z=4GYoJ7*+j<`pNVrA`*fwFElPFW1coW?%%=K#=7wdt)>{>aOiJH2=Nr6VPfH;OPOf z6ecQ)G5(u;H&=5rOWr5O&3px~nEfpn%o$98(2T*7A&J3)Aq|L)fY=f!VhY4bKoMgG p1F(nzkYx%K0f`#`p)rFYSUeFd3Q}je*}dc-Ba?#7X2HB~i~wqQc=Z4P diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 6a8a1e4018eab5a2730b38881c90b0f62a855bbd..7db0b9ac186c9ce92f6c843d72c2a096586c2d5d 100644 GIT binary patch delta 370 zcmZqBY0#O_!7^`KDCEYtnUAlH**}>f zks*!2kRb^OlNl_5&=5$cF_;0xL1Ly1CJYt~sZcr%D3b(MZvhlFVK4`(wqQsBss_<% X491%u3#u|P9kJRhDDs|hq5(Sq{%>fd delta 381 zcmZqBY0#O_!SZC=*0zZ~GK{w-t_){vo6N{q&-h?+Baqy+nUQHTyTFy1ha)7+GhCPU z{kT5e@lMs`Bb+}Oize^mlGm^>H!(4@OtMI`FtV^TGc`*}Gd8fWG%z+zGBqP)X7h{^?@!E;jz($8W;^T5M=q2eXlL|uG?^oZOeMYbwI0O;Kbxw9%;s1lV|d1 zZa%z-!4i5$_}|1H8OExKE5jKzCNnbDGd4_a1d=hE8JVUl37q(##Ugvh# z9@TGQ=R7vAP+7pj7&O^aQ(hxEG0iY3DcRD}FgeXEF)7K^#3B`l)6$aC3@t27%ndD4 z%nU8kj5klv>|o^O65)Tqz~~#m#K6EXbF!+oJS(FY0|Vn^Pi+Ze&LGC{Qh ztx2eUyJuo{g^B97(yitJKucgC3&d8Ks3^u5GdW#HbMqvf8pg>Ej1rsq^xByHlNk~j z(ijXGl7KLo!4e1!fpi*!8BiP~X3Ai~V8M_IrPF{iNnrIBKv5G0bD(Mqh7_P`5S_+g Vy!o-ADic$U)n-AH_ly$_*a7nGXs-YO delta 396 zcmZq3X~>z-!BVAAeQ;ur4CADUE5jM>CNnbDGtQXY2qcR(GcrwA5@7WXJJ@VPs)xW@?s{W^7<#X<%%cWNKz$U~Fh% znP>_Wv)nvEvxAZMw|LuE21efiCI$wE^^;Y#4g4&}tZH0I?M&DvAO1 z2I^>XFfjaAWl&%c*xaa7#<-bJuZ`K?g29}@1PIL-EE$p*EEv*&*a(O%fg+|roCFjx uW-tJY7ywzOKoO9*0T3E97=pzU!J;5_mYW|NsxmQ6vDz$X@}6;`0XqQ9vTy$Y diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index 798ad9c3639275c55bf93ce02b19a303a08be69d..77c0adadee5f77606ca6634a1a085fcee03c0b4c 100644 GIT binary patch delta 377 zcmZp8z|`=7X+j6fyjh+1C-%rN{W~^sRT$%{$&8Hkj4YEIf#ki-j7-{n0=AzE%rdeI z9QK^w>*ajJa{p$V33@z?L6fuR$m=C1rWqzBC0kk=Ca0MtCMB7gSfm1RT3S+?p@oHs zxuHdhnW06RF$04QBZK+mg9{Wl-<)%ti?>+qdLIL$ZvYbm1H6t+_nbL{GSUCD|gM5vWE#BR@A)zo;}XFSSU&JijPgzdSX`Sg$lMv!rse z)e0S;bJAB>>Or+;Zlkx9ExU@wcKpp1Wz z)55tN$3H3i-P>$4L63*AXma)(c|8kr6B9GbB#Sf)BMVD2Q?sNrV*?9I17p)9Q!@ht zV?zteL{p%cB?E&EBZK+mg9{Wl-<)%ti}zr9%L)cY-vA~C28NZB*DjZ5oq3FbVdmtE z%az@ZeC0Uyl>fQQ@`;|iy!UArFap)+hZd(673-%b79}Pn=A|U+yW}UA=BDPA6zc~R z<);@V=4KWp=4GYoJ7*+j<`pNVrA}5^p#yYe;0jA4sDUgn1A&%n+}is;CNFS#V$koF z@)tm>VSwp4kfktDQH=4+UjL!2m2`0A!g0ML^;PKxoWh2o_HSi-OcyPTsxNmr2BYv*5b-j1vvm0Wi*g AF8}}l diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 5396b4ff3a793dfd85cf25f803c3183781a3c5b3..a37159577b399c36838d3fbd7223a62f5d10d749 100644 GIT binary patch delta 363 zcmZp0XmFU&!NRkq{?^1E8OC`NSB5kCOlD-PXIwJ55lA*{W@O415SSq1@jE}!*meK0 zEDipw)RUWQgt(X(gC@6&$ZI4grWqzBC0kk=Ca0MtCMB7gSfm1RT3S+?p@oHsxuHdh znW06R@#J$NNxUnyrcGyH^bKHQU|?7}*;Z7ZRn>%nL3MJXsIo!V@1N4K=I{I`-nk^F zu=$K9BT$WgMt*Lpeo<*&UTTqkd45s0etBw=v0iCjW=ZAbQ=+DfL6gLsbfG%W2SRm% zY{`|MD5x;&-$r4E&W|NPJ7A!1a=w@}W5eWbG0n}}#3C3cJ1|OY=94(Y?4Qh#$dJZh z$dCkt$qbf2Xb7a!7|ej;ATd)069x;0R4APWlt}`sw*ZQoFqi{XTQH;mRfFg>2II~0 TGA|jK7MN@nlzY!O(SRKQ1V(FF delta 386 zcmZp0XmFU&!7}*{$ES%sGK||Mt_){Pn#{;p&$wrDBaoc7nUN`5K;YKOuJwFb=N-4& zdOTBi3e(tJBgDnTSTwm^L|((f+{DDpGRY#%!pOqX%+xF?&Dg-g(!kg>$<)liz}V2j zGSL($W;ywsND{Bo8=f}|jJ^R(3=9mrC)u)WBcSPy<1hM{s`$tlj)N!u|St+b*EhFt7x~R+y+L#yD+q zshH;GIbuLSqI)uy`U^6r|2_v%JhpMy4Gmn+4_GGfp&M2LM0&aM=I= diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 5276ff02bcef3b6b9841ced4d3bd4360c5aec089..7b6df12bccc92923e5f9dfff22e6dcef78a4ebac 100644 GIT binary patch delta 369 zcmZoLX)u}4!D9CN|Hp|vGK^dkSB5igo6N{q&nPgtk+GiXmELA1rZ8@S*xq2-OH1ut zS1-6`aOt^|=jIIF3`WMF$rt(LHIft443moG9&PhQHeY_Mrv*^$bvmz)-y zj^L>(KX8c=s75~{KQ~pss5CDxwMf4_zbIS3JT=K!uQV^Sq;fK!fCtbG;R2yXP_3I1 zpjtuJENySIe(-I#kn!n<%kKd#fq@?&w!%b3F`(}ze-qG{EF<`7vIC>YW(#$W~%2Z@<7m@rr{q(bR5piB~2y#-LzguxuB+JYeks2W74 XF&J;YEN05c#ACl%P~tt~L<4pJw{vje delta 393 zcmZoLX)u}4!Q%FE@%D*5GK_K)SB5j5nas#o&!{rFk+GhML4Pw7Qy8~^QpWRbkFQMd z*~X!=;?CZ6hc;*MW-u}qO}@w{uVGe)=y6?N=!=3OG(ss$xklLP0cGQ)(ndfKMODQkbYH z&Zs~6fq(|ve^mwr27$?fg0D9736-(N{OiOX8OFMaE5jMJCNnbDGqy}_1d?%^8JYa01Pm6%3pWLR^qV@n zYH^BjwZ!HGnO0`TpvlkVy_qZmQ+seQ*;8l;i96yE>vp_Oe@G5 znT(yYvND z9LOnWVg#zu4=qkDD%MX=EJ{pD%u7kscgasK%}vcKDb^1t%1xRxJJ&4CV|bKxoEb$&kcg!H@>TMnG%{6fp(jB%p{fg8^8?0LU^0 lih#rofY6x15GQkdbMM!Dd0N_ly$_*Z~54Z?pga diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index aee6ed35dbcba30d924ba8de3a77466e2c408ffd..e3b236fcaa216c8438a2e62d7fcc98b15495a31d 100644 GIT binary patch delta 386 zcmZoT!_;twX+j4}hlo)3#2y(&tBEVa8DC6hWUOa&nA`{?Wi~T1UDp-(f3CJBWuk!p z5|&r`Y43zBHowppVr2}P{M$s{Bsnq7Fexe7($X+F%`7n~$<)Lm6^PT)lF|$3wG7#VCQPc${yTxS}V#{1>+*&YT)-vFQl!`#UaXUnr5+{M6f za5C#0WrGquYv%cEJ)TX^=X%d3+C7vLA6#oLA8RcagcqQ^<+no(z(@lodk9R&4L0g5L;oQq8OvhWc9h4 zlY{2&ne4zQv6*k)EN1^?hD3%m21AAM)P%ttsM>-d1*jTCr!g3B{=QIyu{h6Z+6=}eSA#b&0@dh;7N-^!>!&9cB_<{2r6lURjxC&rxzvWW)>ypWu@vnXC!9k6(^>pPL7yk2y|-K96KYJfnrbtL6!@wW#ir6x0dUV z`Bovd-9Q_lzyZWon5ZbmXf#=Ht|kWq!+%u<1qOl1j&rwd=9@Q*+24Y}oWTSL%@`~h zk{B!)(ty|qh%JF4ra+to6ftHn0E-v^S*Ab{khlR58Z#Jz#S_7zAa$0Tzb_PIVhXX| MEV$%7<3s~?0Hj8EAOHXW diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 1e8419a700d21e7da74cc4c5fa8c136c650ae891..125768eba9a68505589250efdd4666cf7359fd11 100644 GIT binary patch delta 376 zcmZoDX(*Y{!4iCn{q4ja8AiE@E5jL2O=e`QXH=Qo$XL(x&v!Eulb5={lyX+-j;&98 zH@PMSKRDm;aC3~NF$-hRK60D2Zh3w1Z8t7Ppc?&*{M=OiqSCy))FS=z{Gx3A^3)__z0$nQlFG?m`X)fv z)ayIyLbaAfLA8Rc+2TJlgp2b^PR@oump%b4fdQV$Z}p{tew@r@pt0G&;2z^-2S$<2 zd`9b-{gW9I8PXUG8Ipi7nZXhW4S{qTgBeg9BxcHB!eGIW3Z>J4GD%?d7C=!G26Lcl e3x*V+Y7m{qV7!^z>@Opeg5738i}#EZ4cGxy33Vy} delta 398 zcmZoDX(*Y{!IE3E>&(O+8AhXtE5jKdOlD-PXSA5y$XL%L;neLwk&zQ$%bgFB3y`Ha>v`&%%WGnfFO8G|K55`zUp8W0-+u_aK%6o`|6 wBE}2`U=af#%M>UA5;p)sV+KR8cp_L7q|S0Px7lAtCKJ2Of)?)?CmOH=0B44D2><{9 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 840ea040ffd9258b318bb11f1d247784218cc5f5..b6388847e8662748d865c048ef88ac7949b6f366 100644 GIT binary patch delta 421 zcmZn&Xz-cPp%kC`a~1;>JYY~#;AS*nV2}X{a6kmVSx;OQ#<*xQBV#?+A8DYN0uakg z?qbwtl$*SbQJqm`@;yc+#%r4ynHGx)oMkn6ZTZo_v(+W*PPw~o-R3P4znK_=CU20I z*Go=JGfYZKwzM=%PBTkPN-{OENCo1ww4^jc3kwr-LyHtMLyI(H1_mca2HVLFGD?%> zWlDJ!f-df4VDt@O0@^!$@jWt0tM?O$jFyZ2lwP!t9^SkjRk6V91aJgvkt+ zKxhc0(-_Qv;vg|o1``GghEyn>29!wxtG57(nlP9HRa-Em09AwNGzR0%=ans)n0{Dq J7L@zO2mot~bD01D delta 445 zcmZqhX$Y9mq4a0xTV3;`hsEo23M@Oim+5scijjn2I?rKgAX9TLz z4=qkDD%MX=EJ{pD%u7kscgasK%}vcKDb^1t%1d{Q5-4H{#7RIAV+I4Thyjpg3KRi} h8vvm(gCSTv5iAN)XSw;jq9qd(kIiO5r4K+$*Z@LZb>08~ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 124b37b3989762d09892b4a030f2003d2414c778..499e3426251f655bad5c58ae02f004a9a45656d4 100644 GIT binary patch delta 383 zcmZqpz}E1AZ9)f&dX3lXi9Irm=O(TUXRMjb$XL&KWpX2s+|bO(w4ITOv6@X_EV=M0R#0Za@G40ETKu49yE4L!@q5ITM4I!0v! zCb^mKUrc)LGwbnkYv0pF(-?uO^fU5vQ}v5V^YT)Q^vm;$vh~YTlZ^FB^D;{+r!%c* zGz7ZDWIdyuE>!cMD5z$jRq5X^pDTSlWvAi?=iMPofcC(^zUlMVGfFdVn7(^GqvrHy z>lrmBJ1|OY=i9(Ii`hS!A(0`C!H^*d2$LBsfzS|0r!klT#X(}G3?>W~45?5$4JeZY qR&N0mHDNFZsnw?({@HC#%eYJlYp$k z)3HoWeNqhW5#@%@w)b!_R?KBAn$Eh6QC`Es+{DDpGRY#%!pOqX%+xF?&Dg-g(!kg> z$<)liz}V2jGSL($X1U#G8KVpbuibTtHw=uv0Za@G44bEyu49yE%|6S>kUf3oI!0x; zC(=>B=B?>)Z`ky>!^M9hJ0nn)erR!OQL%n{Vo_pJVqQw3zDs^`X>Mv>NwI!FQGR++ zVs2(pVqR9NzH>%mW?pe(TI%#S>lh7z?vq>3XlDd9@;J;$kOLaC=E~IeZ(d~faJA4b zpzSbl1;kdEs3^vGZ2HpmjGEKWtY_5P&bNVa7PG$vgE@l<5SlSqG9)orFr)#o5fEDf zMNEM>2`FOBU;q{|0J2PhA|P=CAT(w$1dAtvMM3H;w}0QvD9FV0!gjmhHpcgi6Ajn_ D0qJ}N diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.ThirdParty.dll index 4c2b68233ec734ad0fe285eb1dbc7bbd4557ce25..20643397994bc717091314b1fc515171d915ebb9 100644 GIT binary patch delta 376 zcmZqJ!`QHgaY6@6tIpCp6MJMB(t?%p$PT3)*M zs+%lVTh=gUns` z?P~j8Y?k<<#0XTRpOK%Ns$W!^mzP?kU!Gr-tzVv+WUN=3mswIdxi7>F=!&Bu&PGtJ z>@clBd-NVX6EHX|x<4jfr0AtpG0-e12m!GbCMt?Cx=juY)#PAc_^-;Kz#uR=F>29f zzOX~g{>co93~3C83`szk%wP$GhCn)v!3-!45;J8mVX$CGh0&O e1w#r@HHc1QFy1U5^^%b(!+5h`%zMU(2J8Tg+H#x# delta 385 zcmZqJ!`QHgaY6@+x--j!i9IrmRTEc+Gipp`WUOawnA`{?V>UA~CA$eQ>uPXuF4uJI z`6DA3{3JSMbBV_ncE+N~nE~<|7Um`SU)|nC^0E9FC|gmB|o_|H#M)MSU;dBKfNe1H?t@)FDq5w zIU_MMuQ)L+b#g_B8PIL(L!5P?21XV`4FuXA`mQYcj8g2m`zqHLas~kHhJmcf@}bg< zF_W!BH7BQqPT9;Cc8J;Eg29}@1PIL-EE$p*EEv*&*a(O%fg+|roCFjxW-tJY7ywzO mKoO9*0T3E97=pzU!J;5_mYe0HUNSP(7;hGgdCxe}fE@sE&ToeR diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 79e8983f9b66f2fdecd9cb72fd40d452ff622ae4..ab3024661e7ea9f0ff4d423c4861f66a152da878 100644 GIT binary patch delta 375 zcmZpuXsDRb!Lnplcl*R18AhRrE5jKNOlD-PXOx)S$XL(xC2%tn(*F!(KmpJfq`M-X{2n>=bUyFK_b#yDV+5+v&&bbB)h{Z|%S$cNFV8Q^)-O*@GS(~2%Pgs!9AvBwbVQx8g%MQi zdze;`HT7$KZ*2d2VP~?kG3yJUB{0Ag1Y{{pR1^bxZ<2`y+kaIC1qOl5f>!StCmOJC z<}-_9_D^O=WJqH$WJm(SWClwhGz8LV3}!%akeDfh34;YgDwIwG$|Ql+TL48(7|emH XEf`XOszG!bgYo3umcC3PMld@78D?}6 delta 384 zcmZpuXsDRb!J@ZFXzIis8Ah#%E5jMDO=e`QXEd1H$XL(B6||X&X_JCLZ2g1O*A;b+ zo1dguGMy@#xA}~Fzf&R_zBW(<}LNemVYX+UfQ#Fju2Qy@+PiWoB(fJF>| nEK{HeNZbGjjTsEV;)!5UkUGoByDfd0bc{9&TD@nSXuu8tfk1i~ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 5b0747beb463228c4cb514c213b0e52e13a6d183..c93cbb862cfcdf5110669b7e357674211ee5978b 100644 GIT binary patch delta 378 zcmZqJ!rZWhc|r$^-VK}Xi9IrmLK9bpGai`C$XL%PF}abkp6Scm%}h*n8w3KGD&96I zKk(>Y9{hNlyXL>m6E=kiG6qe4dRSf~IWf&JDJj{~(l9yAEHNp`)Wjkch||)N(hMyu zOw0`}Qp^l3(u_Cj9I4^rP3=$ZWnlCTU}9ikSU7p>IeFHZZy6Y7PQH0g*lJuFqy#;2n~UB8iN^793*DSV8UR*kP4;KfHFy7^%g); d69#jjY72%GplT4E#$dde``TYdCJ{TBB>-Nvc_IJ+ delta 387 zcmZqJ!rZWhc|r%v=>zu1C-%rNYE4`j&UkGyBV#?I!Q@89dM2)So0*vEHV9n&>i%iz z?N0x#`4jFwT=!@3<_ViZ1R0AaKRqn3VPS4!VrH3Sk!E3JVQFS+mXu~}U}0%sY?@?h zW?*1!XknRX3KX;4taGG>i??E}-vkCm-vA~C28QjEx1N({UH_JWVg2Nr=ak)2cn|Vb zo9=R49htS~-G;A?j6gN|p~b01#ro-qMTtp?c`1qdF8Rr&xv6<2#rgq7`RPT8xtT?Y zd0DCY&KZfBdBurosgrfi8v~t|aNa=|YT(6esDVJs1r|MB%Ko50Xsf!YYvt6@N5 z^4as!Ko3uTbzWn$z=dawoB1xSWA?XTFlR6ULNf+Sh9m|HhBP2H0%A*`h$#>!0Y!`% t48S4=K$a;`1SD<%gvJbpVDUt-C`g^wR{*oH*Dh0S6~jCu)XCgQ@{zvpy^llGRtcuC#D%DB_&&08YZWiB_<`AnpmU) zaavkZnxTb-iMgRgikYEBn(_4BBh2E{>-RBpZ@1gW>@<=0L$k#q21efiCI$wE*6F?e zEb^?Oc`OW}(>MCFC>!J#|FCLGEOwmwCAe*O&|+Oipep^0{M=OiqSCy))FS=z{Gx3A z^3)__z0$nQlFI2)0W7LOH#r2b80kVa8;U|T1Fce;dNsjT@6~j*UX=u)B|v*%VBhrl z0W8vt8>a6LVA0(EEPzFWak2xW#CE14WKw_Pxd19ku< Cx_5X0 delta 418 zcmZqJAlR@$a6$)5*h{AM6MJMBpG{mD&Nyi@BV#?|o5_tp@>nw?Q#&IQ<90?SrsB^6 z=aesBW&HWXWB0SzjAq4;m$tWjWePaKSTz0WUS@d>3v&|_Gs`54Gz%jOOEXimq%>m# z3rhoI(A z`m@NhX6LamWKZAd&!X)1X-aQ??MDZXnNO!(-#O*N5=NjZ{m|mnqGJ8@#G=Hc#JrS5 zeV6>?(%jU%l4AXUqWtut#N5oH#JsFjedmnC%)H{nwAAS=0W7LOmudyD7#Ts0jF5yH z33NbF!rs$cpFG;N%ileC!Y-igFmMILR+y+L#&~S{(f}6C?Pmg5v>3PZ1+geG`&%%W zGnfFO8G|K55`zUp8W0-+u_aK%6o`|6BE}2`U=af#%M>UA5;p)sV+KR8cp_L7q|S1B VeJD#O(+j)pf?+K087CUB0{{vLhQ$B? diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity deleted file mode 100644 index 7ad506231..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity +++ /dev/null @@ -1,1751 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!29 &1 -OcclusionCullingSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_OcclusionBakeSettings: - smallestOccluder: 5 - smallestHole: 0.25 - backfaceThreshold: 100 - m_SceneGUID: 00000000000000000000000000000000 - m_OcclusionCullingData: {fileID: 0} ---- !u!104 &2 -RenderSettings: - m_ObjectHideFlags: 0 - serializedVersion: 9 - m_Fog: 0 - m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} - m_FogMode: 3 - m_FogDensity: 0.01 - m_LinearFogStart: 0 - m_LinearFogEnd: 300 - m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} - m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} - m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} - m_AmbientIntensity: 1 - m_AmbientMode: 3 - m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} - m_SkyboxMaterial: {fileID: 0} - m_HaloStrength: 0.5 - m_FlareStrength: 1 - m_FlareFadeSpeed: 3 - m_HaloTexture: {fileID: 0} - m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} - m_DefaultReflectionMode: 0 - m_DefaultReflectionResolution: 128 - m_ReflectionBounces: 1 - m_ReflectionIntensity: 1 - m_CustomReflection: {fileID: 0} - m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} - m_UseRadianceAmbientProbe: 0 ---- !u!157 &3 -LightmapSettings: - m_ObjectHideFlags: 0 - serializedVersion: 12 - m_GIWorkflowMode: 1 - m_GISettings: - serializedVersion: 2 - m_BounceScale: 1 - m_IndirectOutputScale: 1 - m_AlbedoBoost: 1 - m_EnvironmentLightingMode: 0 - m_EnableBakedLightmaps: 0 - m_EnableRealtimeLightmaps: 0 - m_LightmapEditorSettings: - serializedVersion: 12 - m_Resolution: 2 - m_BakeResolution: 40 - m_AtlasSize: 1024 - m_AO: 0 - m_AOMaxDistance: 1 - m_CompAOExponent: 1 - m_CompAOExponentDirect: 0 - m_ExtractAmbientOcclusion: 0 - m_Padding: 2 - m_LightmapParameters: {fileID: 0} - m_LightmapsBakeMode: 1 - m_TextureCompression: 1 - m_FinalGather: 0 - m_FinalGatherFiltering: 1 - m_FinalGatherRayCount: 256 - m_ReflectionCompression: 2 - m_MixedBakeMode: 2 - m_BakeBackend: 1 - m_PVRSampling: 1 - m_PVRDirectSampleCount: 32 - m_PVRSampleCount: 512 - m_PVRBounces: 2 - m_PVREnvironmentSampleCount: 256 - m_PVREnvironmentReferencePointCount: 2048 - m_PVRFilteringMode: 1 - m_PVRDenoiserTypeDirect: 1 - m_PVRDenoiserTypeIndirect: 1 - m_PVRDenoiserTypeAO: 1 - m_PVRFilterTypeDirect: 0 - m_PVRFilterTypeIndirect: 0 - m_PVRFilterTypeAO: 0 - m_PVREnvironmentMIS: 1 - m_PVRCulling: 1 - m_PVRFilteringGaussRadiusDirect: 1 - m_PVRFilteringGaussRadiusIndirect: 5 - m_PVRFilteringGaussRadiusAO: 2 - m_PVRFilteringAtrousPositionSigmaDirect: 0.5 - m_PVRFilteringAtrousPositionSigmaIndirect: 2 - m_PVRFilteringAtrousPositionSigmaAO: 1 - m_ExportTrainingData: 0 - m_TrainingDataDestination: TrainingData - m_LightProbeSampleCountMultiplier: 4 - m_LightingDataAsset: {fileID: 0} - m_LightingSettings: {fileID: 0} ---- !u!196 &4 -NavMeshSettings: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_BuildSettings: - serializedVersion: 3 - agentTypeID: 0 - agentRadius: 0.5 - agentHeight: 2 - agentSlope: 45 - agentClimb: 0.4 - ledgeDropHeight: 0 - maxJumpAcrossDistance: 0 - minRegionArea: 2 - manualCellSize: 0 - cellSize: 0.16666667 - manualTileSize: 0 - tileSize: 256 - buildHeightMesh: 0 - maxJobWorkers: 0 - preserveTilesOutsideBounds: 0 - debug: - m_Flags: 0 - m_NavMeshData: {fileID: 0} ---- !u!1 &210878633 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 210878634} - - component: {fileID: 210878636} - - component: {fileID: 210878635} - m_Layer: 5 - m_Name: Error Panel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &210878634 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 210878633} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 751800059} - - {fileID: 1812470006} - m_Father: {fileID: 314965760} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: -8.4831} - m_SizeDelta: {x: 400, y: 167.1662} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &210878635 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 210878633} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 0.912, b: 0.912, a: 0.9490196} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &210878636 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 210878633} - m_CullTransparentMesh: 1 ---- !u!1 &314965759 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 314965760} - - component: {fileID: 314965761} - m_Layer: 5 - m_Name: Error - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &314965760 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 314965759} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1042712191} - - {fileID: 210878634} - m_Father: {fileID: 2066044329} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &314965761 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 314965759} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9df78976caa7771429cfe2b9b96e1491, type: 3} - m_Name: - m_EditorClassIdentifier: - MessageLabel: {fileID: 1028782728} ---- !u!1 &433476712 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 433476714} - - component: {fileID: 433476718} - - component: {fileID: 433476717} - - component: {fileID: 433476716} - m_Layer: 0 - m_Name: Login Logic - HyperPlay - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &433476714 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 433476712} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &433476716 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 433476712} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3d2237df0314604419146b916b88d158, type: 3} - m_Name: - m_EditorClassIdentifier: - sceneToLoad: SampleMain ---- !u!114 &433476717 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 433476712} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d4bbed5530529ea46a1f41b407499dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - rampConfig: {fileID: 11400000, guid: d1f58846e4fc71d4e90f287a86f328f9, type: 2} ---- !u!114 &433476718 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 433476712} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 16b51cbda3e44ff44a13173ffbde98b3, type: 3} - m_Name: - m_EditorClassIdentifier: - gelatoApiKey: 7MFQqyGS1Iui_e_MgmFW1BfbFeJ06g8nnL2oUTlIJug_ - errorPopup: {fileID: 314965761} - loginButton: {fileID: 2048731599} ---- !u!1 &740974330 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 740974331} - - component: {fileID: 740974332} - m_Layer: 5 - m_Name: Column - HyperPlay - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &740974331 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 740974330} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 956735924} - m_Father: {fileID: 1135875169} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &740974332 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 740974330} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreLayout: 0 - m_MinWidth: -1 - m_MinHeight: -1 - m_PreferredWidth: 300 - m_PreferredHeight: -1 - m_FlexibleWidth: -1 - m_FlexibleHeight: -1 - m_LayoutPriority: 1 ---- !u!1 &751800058 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 751800059} - - component: {fileID: 751800061} - - component: {fileID: 751800060} - m_Layer: 5 - m_Name: Title - Error - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &751800059 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 751800058} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 210878634} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 50} - m_Pivot: {x: 0.5, y: 1} ---- !u!114 &751800060 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 751800058} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.412, g: 0.043672003, b: 0.043672003, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 24 - m_FontStyle: 1 - m_BestFit: 0 - m_MinSize: 2 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: Error ---- !u!222 &751800061 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 751800058} - m_CullTransparentMesh: 1 ---- !u!1 &772918783 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 772918784} - - component: {fileID: 772918787} - - component: {fileID: 772918786} - - component: {fileID: 772918785} - m_Layer: 5 - m_Name: Button - Ok - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &772918784 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 772918783} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1558416531} - m_Father: {fileID: 1812470006} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 50} - m_Pivot: {x: 0.5, y: 0} ---- !u!114 &772918785 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 772918783} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 1 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 772918786} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 314965761} - m_TargetAssemblyTypeName: Scenes.ErrorPopup, Assembly-CSharp - m_MethodName: Close - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!114 &772918786 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 772918783} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &772918787 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 772918783} - m_CullTransparentMesh: 1 ---- !u!1 &789601276 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 789601277} - m_Layer: 5 - m_Name: Header - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &789601277 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 789601276} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1362301615} - - {fileID: 1572088723} - m_Father: {fileID: 2066044329} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0.725} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -25} - m_SizeDelta: {x: -50, y: -50} - m_Pivot: {x: 0.5, y: 1} ---- !u!1 &893732502 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 893732505} - - component: {fileID: 893732504} - - component: {fileID: 893732503} - m_Layer: 0 - m_Name: Main Camera - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!81 &893732503 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 893732502} - m_Enabled: 1 ---- !u!20 &893732504 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 893732502} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 2 - m_BackGroundColor: {r: 0.101960786, g: 0.101960786, b: 0.10980392, a: 0} - m_projectionMatrixMode: 1 - m_GateFitMode: 2 - m_FOVAxisMode: 0 - m_Iso: 200 - m_ShutterSpeed: 0.005 - m_Aperture: 16 - m_FocusDistance: 10 - m_FocalLength: 50 - m_BladeCount: 5 - m_Curvature: {x: 2, y: 11} - m_BarrelClipping: 0.25 - m_Anamorphism: 0 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.3 - far clip plane: 1000 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: -1 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!4 &893732505 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 893732502} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -10} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &956735923 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 956735924} - - component: {fileID: 956735926} - - component: {fileID: 956735925} - m_Layer: 5 - m_Name: Container - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &956735924 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 956735923} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 2048731596} - m_Father: {fileID: 740974331} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 1} ---- !u!114 &956735925 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 956735923} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} - m_Name: - m_EditorClassIdentifier: - m_HorizontalFit: 0 - m_VerticalFit: 2 ---- !u!114 &956735926 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 956735923} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_ChildAlignment: 0 - m_Spacing: 5 - m_ChildForceExpandWidth: 1 - m_ChildForceExpandHeight: 1 - m_ChildControlWidth: 1 - m_ChildControlHeight: 1 - m_ChildScaleWidth: 0 - m_ChildScaleHeight: 0 - m_ReverseArrangement: 0 ---- !u!1 &1028782727 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1028782730} - - component: {fileID: 1028782729} - - component: {fileID: 1028782728} - m_Layer: 5 - m_Name: Error message - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1028782728 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1028782727} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.05, g: 0.05, b: 0.05, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 20 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 0 - m_MaxSize: 40 - m_Alignment: 1 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: ---- !u!222 &1028782729 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1028782727} - m_CullTransparentMesh: 1 ---- !u!224 &1028782730 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1028782727} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1812470006} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1042712190 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1042712191} - - component: {fileID: 1042712194} - - component: {fileID: 1042712193} - - component: {fileID: 1042712192} - m_Layer: 5 - m_Name: Fade - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1042712191 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1042712190} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 314965760} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1042712192 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1042712190} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Navigation: - m_Mode: 3 - m_WrapAround: 0 - m_SelectOnUp: {fileID: 0} - m_SelectOnDown: {fileID: 0} - m_SelectOnLeft: {fileID: 0} - m_SelectOnRight: {fileID: 0} - m_Transition: 0 - m_Colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} - m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - m_SpriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - m_AnimationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_Interactable: 1 - m_TargetGraphic: {fileID: 1042712193} - m_OnClick: - m_PersistentCalls: - m_Calls: - - m_Target: {fileID: 314965761} - m_TargetAssemblyTypeName: Scenes.ErrorPopup, Assembly-CSharp - m_MethodName: Close - m_Mode: 1 - m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!114 &1042712193 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1042712190} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 0.29803923} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1042712194 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1042712190} - m_CullTransparentMesh: 1 ---- !u!1 &1135875168 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1135875169} - - component: {fileID: 1135875171} - - component: {fileID: 1135875170} - m_Layer: 5 - m_Name: Container - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1135875169 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1135875168} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 740974331} - m_Father: {fileID: 2066044329} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 0.725} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 1} ---- !u!114 &1135875170 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1135875168} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3} - m_Name: - m_EditorClassIdentifier: - m_HorizontalFit: 2 - m_VerticalFit: 2 ---- !u!114 &1135875171 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1135875168} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 25 - m_Right: 25 - m_Top: 25 - m_Bottom: 25 - m_ChildAlignment: 0 - m_Spacing: 50 - m_ChildForceExpandWidth: 1 - m_ChildForceExpandHeight: 1 - m_ChildControlWidth: 1 - m_ChildControlHeight: 1 - m_ChildScaleWidth: 0 - m_ChildScaleHeight: 0 - m_ReverseArrangement: 0 ---- !u!1 &1290034538 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1290034541} - - component: {fileID: 1290034540} - - component: {fileID: 1290034539} - m_Layer: 0 - m_Name: EventSystem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1290034539 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1290034538} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} - m_Name: - m_EditorClassIdentifier: - m_SendPointerHoverToParent: 1 - m_HorizontalAxis: Horizontal - m_VerticalAxis: Vertical - m_SubmitButton: Submit - m_CancelButton: Cancel - m_InputActionsPerSecond: 10 - m_RepeatDelay: 0.5 - m_ForceModuleActive: 0 ---- !u!114 &1290034540 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1290034538} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} - m_Name: - m_EditorClassIdentifier: - m_FirstSelected: {fileID: 0} - m_sendNavigationEvents: 1 - m_DragThreshold: 10 ---- !u!4 &1290034541 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1290034538} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1362301614 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1362301615} - - component: {fileID: 1362301617} - - component: {fileID: 1362301616} - m_Layer: 5 - m_Name: ChainSafe Logo - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1362301615 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1362301614} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 789601277} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0.25, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: -50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1362301616 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1362301614} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 804f4bf7fbf176544bd5efde4a0749ca, type: 3} - m_Type: 0 - m_PreserveAspect: 1 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1362301617 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1362301614} - m_CullTransparentMesh: 1 ---- !u!1 &1558416530 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1558416531} - - component: {fileID: 1558416533} - - component: {fileID: 1558416532} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1558416531 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1558416530} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 772918784} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1558416532 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1558416530} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.05, g: 0.05, b: 0.05, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_FontData: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_FontSize: 19 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 1 - m_MaxSize: 40 - m_Alignment: 4 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 0 - m_VerticalOverflow: 0 - m_LineSpacing: 1 - m_Text: OK ---- !u!222 &1558416533 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1558416530} - m_CullTransparentMesh: 1 ---- !u!1 &1572088722 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1572088723} - - component: {fileID: 1572088725} - - component: {fileID: 1572088724} - m_Layer: 5 - m_Name: Title - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1572088723 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1572088722} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 789601277} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.25, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: -30, y: -30} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1572088724 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1572088722} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: HyperPlay Login - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} - m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294111986 - m_fontColor: {r: 0.95, g: 0.95, b: 0.95, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 40 - m_fontSizeBase: 48 - m_fontWeight: 400 - m_enableAutoSizing: 1 - m_fontSizeMin: 16 - m_fontSizeMax: 40 - m_fontStyle: 1 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 512 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 1 - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: 0, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1572088725 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1572088722} - m_CullTransparentMesh: 1 ---- !u!1 &1812470005 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1812470006} - m_Layer: 5 - m_Name: Content - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1812470006 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1812470005} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 1028782730} - - {fileID: 772918784} - m_Father: {fileID: 210878634} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -21} - m_SizeDelta: {x: -32, y: -58} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!1001 &2048731595 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 956735924} - m_Modifications: - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_Pivot.x - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_Pivot.y - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_RootOrder - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_AnchorMax.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_AnchorMax.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_AnchorMin.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_AnchorMin.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_SizeDelta.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_SizeDelta.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_AnchoredPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_AnchoredPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_Name - value: Button - HyperPlay - objectReference: {fileID: 0} - - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_text - value: Login with HyperPlay - objectReference: {fileID: 0} - - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - propertyPath: m_fontSize - value: 18.85 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: - - targetCorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - insertIndex: -1 - addedObject: {fileID: 2048731598} - m_SourcePrefab: {fileID: 100100000, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} ---- !u!224 &2048731596 stripped -RectTransform: - m_CorrespondingSourceObject: {fileID: 4764608378852082086, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2048731595} - m_PrefabAsset: {fileID: 0} ---- !u!1 &2048731597 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2048731595} - m_PrefabAsset: {fileID: 0} ---- !u!114 &2048731598 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2048731597} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreLayout: 0 - m_MinWidth: -1 - m_MinHeight: -1 - m_PreferredWidth: -1 - m_PreferredHeight: 50 - m_FlexibleWidth: -1 - m_FlexibleHeight: -1 - m_LayoutPriority: 1 ---- !u!114 &2048731599 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} - m_PrefabInstance: {fileID: 2048731595} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2048731597} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &2066044325 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2066044329} - - component: {fileID: 2066044328} - - component: {fileID: 2066044327} - - component: {fileID: 2066044326} - m_Layer: 5 - m_Name: Canvas - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &2066044326 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2066044325} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 4294967295 ---- !u!114 &2066044327 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2066044325} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 1 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 1280, y: 720} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 1 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!223 &2066044328 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2066044325} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_VertexColorAlwaysGammaSpace: 0 - m_AdditionalShaderChannelsFlag: 25 - m_UpdateRectTransformForStandalone: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!224 &2066044329 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2066044325} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 789601277} - - {fileID: 1135875169} - - {fileID: 314965760} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0, y: 0} ---- !u!1660057539 &9223372036854775807 -SceneRoots: - m_ObjectHideFlags: 0 - m_Roots: - - {fileID: 893732505} - - {fileID: 1290034541} - - {fileID: 433476714} - - {fileID: 2066044329} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity.meta deleted file mode 100644 index fe08f9ae5..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleLogin - HyperPlay.unity.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a31aa87c0b8cd954bb4b14166cc257dd -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef index 88b6196b4..55f3dbb12 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Samples.asmdef @@ -6,7 +6,7 @@ "GUID:a37273c0f1cc99640b9cce89c64b02d0", "GUID:6055be8ebefd69e48b49212b09b47b2f", "GUID:a6d2ec6af5b0961468c9e2fca41a75be", - "GUID:d06132f8dbed59945b549d37664d46eb" + "GUID:beb3cfa44e4e012468271dba212943b0" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs deleted file mode 100644 index c6230a0c0..000000000 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using ChainSafe.Gaming.HyperPlay; -using ChainSafe.Gaming.UnityPackage.Common; -using ChainSafe.Gaming.WalletConnect; -using ChainSafe.Gaming.Web3.Build; -using Scenes; -using UnityEngine; -using UnityEngine.UI; - -///

-/// Login using HyperPlay desktop client. -/// -public class HyperPlayLoginProvider : LoginProvider, IWeb3BuilderServiceAdapter -{ - [SerializeField] private Button loginButton; - - protected override void Initialize() - { - base.Initialize(); - - loginButton.onClick.AddListener(OnLoginClicked); - } - - public Web3Builder ConfigureServices(Web3Builder web3Builder) - { - return web3Builder.Configure(services => - { - services.UseHyperPlay().UseHyperPlaySigner().UseHyperPlayTransactionExecutor(); - }); - } - - private async void OnLoginClicked() - { - await TryLogin(); - } -} diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta rename to Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta index 2a6c792ca..379f2d5e5 100644 --- a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0.meta +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 9e3d4519bbfe0064b9144f4635cafd27 +guid: b70d421e7223b8049aaf18e07497da9b folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs new file mode 100644 index 000000000..8e880b8a8 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs @@ -0,0 +1,84 @@ +using System.Collections.Generic; +using ChainSafe.Gaming.UnityPackage.Model; +using UnityEngine; +using ChainSafe.Gaming.Marketplace; + +public class IPFSCalls : MonoBehaviour +{ + #region Fields + + [Header("IPFS VALUES")] + [SerializeField] private string apiSecretKey = "Fill In Your API Secret Key From Storage"; + [SerializeField] private string bucketId = "Fill In Your Bucket ID From Storage"; + [SerializeField] private string fileNameImage = "Logo.png"; + [SerializeField] private string fileNameMetaData = "MetaData.json"; + [SerializeField] private string nftName = "Name of the NFT"; + [SerializeField] private string description = "An NFT description"; + [SerializeField] private string externalUrl = "The URL that appears below your assets image"; + [SerializeField] private List display_types = new List { "Stamina", "Boost Number" }; + [SerializeField] private List trait_types = new List { "Health", "Thunder Power" }; + [SerializeField] private List values = new List { "5", "20" }; + [Header("Required for image only upload")] + [SerializeField] private string imageCID = "Enter your image CID from storage or upload call"; + + #endregion + + #region Methods + + /// + /// Uploads an image selected by the user to IPFS + /// + public async void IPFSUploadImage() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiSecretKey, + BucketId = bucketId, + FileNameImage = fileNameImage + }; + var cid = await IPFS.UploadImage(uploadRequest); + Debug.Log($"Image uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + /// + /// Uploads metadata to IPFS + /// + public async void IPFSUploadMetadata() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiSecretKey, + BucketId = bucketId, + Image = imageCID, + FileNameMetaData = fileNameMetaData, + Name = nftName, + Description = description, + External_url = externalUrl, + attributes = IPFS.CreateAttributesList(display_types, trait_types, values) + }; + var cid = await IPFS.UploadMetaData(uploadRequest); + Debug.Log($"Metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + /// + /// Uploads an image selected by the user including metadata to IPFS + /// + public async void IPFSUploadImageAndMetadata() + { + var uploadRequest = new IPFSUploadRequestModel + { + ApiKey = apiSecretKey, + BucketId = bucketId, + FileNameImage = fileNameImage, + FileNameMetaData = fileNameMetaData, + Name = name, + Description = description, + External_url = externalUrl, + attributes = IPFS.CreateAttributesList(display_types, trait_types, values) + }; + var cid = await IPFS.UploadImageAndMetadata(uploadRequest); + Debug.Log($"Image & metadata uploaded to https://ipfs.chainsafe.io/ipfs/{cid}"); + } + + #endregion +} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs.meta rename to Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta index 4e7edde78..dfa434674 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/HyperPlayLoginProvider.cs.meta +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/IPFS/IPFSCalls.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 16b51cbda3e44ff44a13173ffbde98b3 +guid: 9a86b695c20675b43ba7a0f0a496749c MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta similarity index 77% rename from Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta rename to Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta index 2d377d24b..4dd7b0018 100644 --- a/Packages/io.chainsafe.web3-unity.hyperplay/Samples~/Web3.Unity HyperPlay Samples/1.0.0/HyperPlay Usage Sample.meta +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: c08bb86b42cf5254096d24c0240b9027 +guid: 46c47784b8c4b6040936da2a1ee85782 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs new file mode 100644 index 000000000..6f9b88f70 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs @@ -0,0 +1,275 @@ +#if MARKETPLACE_AVAILABLE +using Scripts.EVM.Marketplace; +using UnityEngine; + +/// +/// Marketplace sample calls for use with the api documentation. +/// Marketplace Api: https://docs.gaming.chainsafe.io/marketplace-api/docs/marketplaceapi +/// Token Api: https://docs.gaming.chainsafe.io/token-api/docs/tokenapi +/// +public class MarketplaceCalls : MonoBehaviour +{ + #region fields + [Header("Change the fields below for testing purposes")] + + [Header("Bearer token")] + [SerializeField] private string bearerToken = "Please set your bearer token from the ChainSafe dashboard"; + + [Header("721 Collection Call")] + [SerializeField] private string collectionId721 = "Set 721 collection ID"; + + [Header("1155 Collection Call")] + [SerializeField] private string collectionId1155 = "Set 1155 collection ID"; + + [Header("Marketplace Calls")] + [SerializeField] private string marketplaceId = "Set marketplace ID"; + + [Header("Token Calls")] + [SerializeField] private string tokenId = "Set token ID i.e 1"; + + [Header("Create 721 Collection Call")] + [SerializeField] private string collectionName721 = "Set 721 collection name"; + [SerializeField] private string collectionDescription721 = "Set 721 collection description"; + [SerializeField] private bool collectionMintingPublic721 = false; + + [Header("Create 1155 Collection Call")] + [SerializeField] private string collectionName1155 = "Set 1155 collection name"; + [SerializeField] private string collectionDescription1155 = "Set 1155 collection description"; + [SerializeField] private bool collectionMintingPublic1155 = false; + + [Header("Delete calls (Can only be used before the item is on chain)")] + [SerializeField] private string collectionToDelete = "Set collection to delete"; + [SerializeField] private string marketplaceToDelete = "Set marketplace to delete"; + + [Header("Mint 721 to collection calls")] + [SerializeField] private string collectionContract721 = "Set 721 collection to mint to"; + [SerializeField] private string uri721 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; + + [Header("Mint 1155 to collection calls")] + [SerializeField] private string collectionContract1155 = "Set 1155 collection to mint to"; + [SerializeField] private string uri1155 = "Set metadata uri with full path i.e. https://ipfs.chainsafe.io/ipfs/bafyjvzacdj4apx52hvbyjkwyf7i6a7t3pcqd4kw4xxfc67hgvn3a"; + [SerializeField] private string amount1155 = "Set amount of Nfts to mint i.e 1"; + + [Header("Create marketplace call")] + [SerializeField] private string marketplaceName = "Set marketplace name"; + [SerializeField] private string marketplaceDescription = "Set marketplace description"; + [SerializeField] private bool marketplaceWhitelisting = false; + + [Header("List to marketplace calls")] + [SerializeField] private string tokenIdToList = "Set token ID to list"; + [SerializeField] private string weiPriceToList = "Set price in wei to list for i.e 100000000000000"; + [SerializeField] private string marketplaceContractToListTo = "Set marketplace contract to list to"; + [SerializeField] private string collectionContractToList = "Set collection contract to list from"; + + [Header("List to marketplace calls")] + [SerializeField] private string marketplaceContractToBuyFrom = "Set marketplace contract to buy from"; + [SerializeField] private string tokenIdToBuy = "Set token ID to buy"; + [SerializeField] private string weiPriceToBuy = "Set price in wei to buy with i.e 100000000000000"; + + #endregion + + #region Methods + + /// + /// Gets all items in a project. + /// + public async void GetProjectItems() + { + var response = await Marketplace.GetProjectItems(); + Debug.Log($"Total: {response.total}"); + foreach (var item in response.items) + { + Marketplace.PrintObject(item); + } + } + + /// + /// Gets all items in a marketplace. + /// + public async void GetMarketplaceItems() + { + var response = await Marketplace.GetMarketplaceItems(marketplaceId); + Debug.Log($"Total: {response.total}"); + foreach (var item in response.items) + { + Marketplace.PrintObject(item); + } + } + + /// + /// Gets items listed by token id. + /// + public async void GetItem() + { + var response = await Marketplace.GetItem(marketplaceId, tokenId); + Marketplace.PrintObject(response.token); + } + + /// + /// Gets all tokens in a project. + /// + public async void GetProjectTokens() + { + var response = await Marketplace.GetProjectTokens(); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets all tokens in a 721 collection. + /// + public async void GetCollectionTokens721() + { + var response = await Marketplace.GetCollectionTokens721(collectionId721); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets all tokens in a 1155 collection. + /// + public async void GetCollectionTokens1155() + { + var response = await Marketplace.GetCollectionTokens1155(collectionId1155); + foreach (var token in response.tokens) + { + Marketplace.PrintObject(token); + } + } + + /// + /// Gets the information of a token in a collection via id. Token id is optional. + /// + public async void GetCollectionToken() + { + var response = await Marketplace.GetCollectionToken(collectionId721, tokenId); + Marketplace.PrintObject(response); + } + + /// + /// Gets the owners of a token id in a collection. + /// + public async void GetTokenOwners() + { + var response = await Marketplace.GetTokenOwners(collectionId1155, tokenId); + foreach (var owner in response.owners) + { + Marketplace.PrintObject(owner); + } + } + + /// + /// Creates a 721 collection + /// + public async void Create721Collection() + { + var data = await Marketplace.Create721Collection(bearerToken, collectionName721, collectionDescription721, collectionMintingPublic721); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Creates a 1155 collection + /// + public async void Create1155Collection() + { + var data = await Marketplace.Create1155Collection(bearerToken, collectionName1155, collectionDescription1155, collectionMintingPublic1155); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Mints an NFT to a 721 collection + /// + public async void Mint721CollectionNft() + { + var data = await Marketplace.Mint721CollectionNft(collectionContract721, uri721); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Mints an NFT to a 1155 collection + /// + public async void Mint1155CollectionNft() + { + var data = await Marketplace.Mint1155CollectionNft(collectionContract1155, uri1155, amount1155); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Deletes a collection that isn't on chain yet + /// + public async void DeleteCollection() + { + var response = await Marketplace.DeleteCollection(bearerToken, collectionToDelete); + Debug.Log(response); + } + + /// + /// Creates a marketplace + /// + public async void CreateMarketplace() + { + var data = await Marketplace.CreateMarketplace(bearerToken, marketplaceName, marketplaceDescription, marketplaceWhitelisting); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Deletes a marketplace that isn't on chain yet + /// + public async void DeleteMarketplace() + { + var response = await Marketplace.DeleteMarketplace(bearerToken,marketplaceToDelete); + Debug.Log(response); + } + + /// + /// Approves marketplace to list tokens + /// + public async void ApproveListNftsToMarketplace() + { + var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",true); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Revokes approval from marketplace to list tokens + /// + public async void RevokeApprovalListNftsToMarketplace() + { + var data = await Marketplace.SetApprovalMarketplace(collectionContractToList, marketplaceContractToListTo, "1155",false); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Lists NFTs to the marketplace + /// + public async void ListNftsToMarketplace() + { + var data = await Marketplace.ListNftsToMarketplace(marketplaceContractToListTo,collectionContractToList, tokenIdToList, weiPriceToList); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + /// + /// Purchases an Nft from the marketplace + /// + public async void PurchaseNftFromMarketplace() + { + var data = await Marketplace.PurchaseNft(marketplaceContractToBuyFrom, tokenIdToBuy, weiPriceToBuy); + var response = SampleOutputUtil.BuildOutputValue(data); + Debug.Log($"TX: {response}"); + } + + #endregion +} +#endif \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta new file mode 100644 index 000000000..17b02f290 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Marketplace/MarketplaceCalls.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d447d1e7a64b28a4295aca07791c5557 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs index d75da834e..5db9a7e1f 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Utilities/DisableGameObjectIfServiceNotActive.cs @@ -4,12 +4,16 @@ using ChainSafe.Gaming.UnityPackage; using ChainSafe.GamingSdk.Gelato.Types; using UnityEngine; +#if MARKETPLACE_AVAILABLE +using ChainSafe.Gaming.Marketplace; +#endif public enum ServiceType { Ramp = 0, Gelato = 1, - Multicall = 2 + Multicall = 2, + Marketplace = 3 } public class DisableGameObjectIfServiceNotActive : MonoBehaviour @@ -17,9 +21,12 @@ public class DisableGameObjectIfServiceNotActive : MonoBehaviour [SerializeField] private ServiceType serviceType; private readonly Dictionary _typesDictionary = new() { -#if RAMP_AVAILABLE + #if RAMP_AVAILABLE {ServiceType.Ramp, typeof(ChainSafe.Gaming.Exchangers.Ramp.IRampExchanger)}, -#endif + #endif + #if MARKETPLACE_AVAILABLE + {ServiceType.Marketplace, typeof(MarketplaceClient)}, + #endif {ServiceType.Gelato, typeof(IGelato)}, {ServiceType.Multicall, typeof(IMultiCall)} }; From 3586f3abc6a27f435798444eb12a333e0bf6ea98 Mon Sep 17 00:00:00 2001 From: sneakzttv <57473220+sneakzttv@users.noreply.github.com> Date: Fri, 31 May 2024 01:48:24 +0800 Subject: [PATCH 85/97] Read me update (#992) Update README.md --- README.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/README.md b/README.md index c4c6cfd5a..f8fd826a2 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,6 @@ [Discord](https://discord.gg/Q6A3YA2) [Twitter](https://twitter.com/chainsafeth) -## Notices - -After **June 15, 2023** all users of the SDK will be required to have their projects registered. Please ensure that you have a valid project ID to avoid any service interruptions by this time. If you need help getting a project ID, we've put together a tutorial to guide you through the process: https://docs.gaming.chainsafe.io/current/getting-started - -As always, we're here to help, so feel free to message us in ⁠🕹web3unity-gaming-general or ⁠🕹gaming-help if you're stuck and need help! - ## Documentation You can access the docs here: https://docs.gaming.chainsafe.io/ From cc5db016cae6cccd069a86fa3a8b4637b74e20dd Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 30 May 2024 20:53:54 +0200 Subject: [PATCH 86/97] Nikola/server settings automatic save (#991) --- .../Editor/ServerSettings.cs | 125 +++++++++++------- 1 file changed, 75 insertions(+), 50 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs index f263f37e5..44b610b2b 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs @@ -1,21 +1,20 @@ -using UnityEditor; -using UnityEngine; using System; using System.Collections.Generic; -using System.Threading.Tasks; -using UnityEngine.Networking; -using Newtonsoft.Json; using System.IO; using System.Linq; using System.Text; +using System.Threading.Tasks; using ChainSafe.Gaming.UnityPackage; -using Microsoft.IdentityModel.Tokens; +using Newtonsoft.Json; +using UnityEditor; using UnityEditor.Experimental.GraphView; +using UnityEngine; using UnityEngine.Events; +using UnityEngine.Networking; using ChainInfo = ChainSafe.Gaming.UnityPackage.Model; /// -/// Allows the developer to alter chain configuration via GUI +/// Allows the developer to alter chain configuration via GUI /// public class ChainSafeServerSettings : EditorWindow { @@ -37,8 +36,9 @@ public class ChainSafeServerSettings : EditorWindow private string symbol; private string rpc; private string newRpc; + public string previousProjectId; - Texture2D logo = null; + private Texture2D logo; // Search window private StringListSearchProvider searchProvider; @@ -48,15 +48,23 @@ public class ChainSafeServerSettings : EditorWindow private List chainList; private int selectedChainIndex; private int selectedRpcIndex; + private FetchingStatus fetchingStatus = FetchingStatus.NotFetching; + + private enum FetchingStatus + { + NotFetching, + Fetching, + Fetched + } #endregion #region Methods /// - /// Checks if data is already entered, sets default values if not + /// Checks if data is already entered, sets default values if not /// - void Awake() + private void Awake() { // Get saved settings or revert to default var projectConfig = ProjectConfigUtilities.Load(); @@ -70,11 +78,10 @@ void Awake() onDropDownChange = new UnityEvent(); onDropDownChange.AddListener(UpdateServerMenuInfo); // Fetch supported chains - FetchSupportedChains(); } /// - /// Updates the values in the server settings area when an item is selected + /// Updates the values in the server settings area when an item is selected /// public void UpdateServerMenuInfo() { @@ -101,20 +108,22 @@ public void UpdateServerMenuInfo() } /// - /// Fetches the supported EVM chains list from Chainlist's github json + /// Fetches the supported EVM chains list from Chainlist's github json /// private async void FetchSupportedChains() { - using UnityWebRequest webRequest = UnityWebRequest.Get("https://chainid.network/chains.json"); + using var webRequest = UnityWebRequest.Get("https://chainid.network/chains.json"); await EditorUtilities.SendAndWait(webRequest); if (webRequest.result != UnityWebRequest.Result.Success) { Debug.LogError("Error Getting Supported Chains: " + webRequest.error); return; } + var json = webRequest.downloadHandler.text; chainList = JsonConvert.DeserializeObject>(json); chainList = chainList.OrderBy(x => x.name).ToList(); + fetchingStatus = FetchingStatus.Fetched; } // Initializes window @@ -126,18 +135,17 @@ public static void ShowWindow() } /// - /// Called when menu is opened, loads Chainsafe Logo + /// Called when menu is opened, loads Chainsafe Logo /// private void OnEnable() { if (!logo) - { - logo = AssetDatabase.LoadAssetAtPath("Packages/io.chainsafe.web3-unity/Editor/Textures/ChainSafeLogo.png"); - } + logo = AssetDatabase.LoadAssetAtPath( + "Packages/io.chainsafe.web3-unity/Editor/Textures/ChainSafeLogo.png"); } /// - /// Displayed content + /// Displayed content /// private void OnGUI() { @@ -145,16 +153,28 @@ private void OnGUI() EditorGUILayout.BeginVertical("box"); GUILayout.Label(logo, GUILayout.MaxWidth(250f), GUILayout.MaxHeight(250f)); EditorGUILayout.EndVertical(); + EditorGUI.BeginChangeCheck(); // Text GUILayout.Label("Welcome To The ChainSafe SDK!", EditorStyles.boldLabel); - GUILayout.Label("Here you can enter all the information needed to get your game started on the blockchain!", EditorStyles.label); + GUILayout.Label("Here you can enter all the information needed to get your game started on the blockchain!", + EditorStyles.label); // Inputs projectID = EditorGUILayout.TextField("Project ID", projectID); // Search menu // Null check to stop the recursive loop before the web request has completed - if (chainList == null) return; + if (chainList == null) + { + if (fetchingStatus == FetchingStatus.NotFetching || fetchingStatus == FetchingStatus.Fetched) + { + fetchingStatus = FetchingStatus.Fetching; + FetchSupportedChains(); + } + + return; + } + // Set string array from chainList to pass into the menu - string[] chainOptions = chainList.Select(x => x.name).ToArray(); + var chainOptions = chainList.Select(x => x.name).ToArray(); // Display the dynamically updating Popup EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Select Chain"); @@ -163,8 +183,10 @@ private void OnGUI() { searchProvider = CreateInstance(); searchProvider.Initialize(chainOptions, x => { chain = x; }); - SearchWindow.Open(new SearchWindowContext(GUIUtility.GUIToScreenPoint(Event.current.mousePosition)), searchProvider); + SearchWindow.Open(new SearchWindowContext(GUIUtility.GUIToScreenPoint(Event.current.mousePosition)), + searchProvider); } + EditorGUILayout.EndHorizontal(); network = EditorGUILayout.TextField("Network: ", network); chainID = EditorGUILayout.TextField("Chain ID: ", chainID); @@ -172,8 +194,9 @@ private void OnGUI() EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Select RPC"); // Remove "https://" so the user doesn't have to click through 2 levels for the rpc options - string[] rpcOptions = chainList[selectedChainIndex].rpc.Where(rpc => rpc.StartsWith("https")).Select(rpc => rpc.Substring(8)).ToArray(); - string selectedRpc = rpcOptions[selectedRpcIndex]; + var rpcOptions = chainList[selectedChainIndex].rpc.Where(rpc => rpc.StartsWith("https")) + .Select(rpc => rpc.Substring(8)).ToArray(); + var selectedRpc = rpcOptions[selectedRpcIndex]; // Show the rpc drop down menu if (GUILayout.Button(selectedRpc, EditorStyles.popup)) { @@ -184,8 +207,10 @@ private void OnGUI() // Add "https://" back rpc = "https://" + x; }); - SearchWindow.Open(new SearchWindowContext(GUIUtility.GUIToScreenPoint(Event.current.mousePosition)), searchProvider); + SearchWindow.Open(new SearchWindowContext(GUIUtility.GUIToScreenPoint(Event.current.mousePosition)), + searchProvider); } + EditorGUILayout.EndHorizontal(); // Allows for a custom rpc rpc = EditorGUILayout.TextField("RPC: ", rpc); @@ -193,19 +218,12 @@ private void OnGUI() // Buttons // Register - if (GUILayout.Button("Need To Register?")) - { - Application.OpenURL("https://dashboard.gaming.chainsafe.io/"); - } + if (GUILayout.Button("Need To Register?")) Application.OpenURL("https://dashboard.gaming.chainsafe.io/"); // Docs - if (GUILayout.Button("Check Out Our Docs!")) - { - Application.OpenURL("https://docs.gaming.chainsafe.io/"); - } + if (GUILayout.Button("Check Out Our Docs!")) Application.OpenURL("https://docs.gaming.chainsafe.io/"); // Save button - if (GUILayout.Button("Save Settings")) + if (EditorGUI.EndChangeCheck()) { - Debug.Log("Saving Settings!"); var projectConfig = ProjectConfigUtilities.CreateOrLoad(); projectConfig.ProjectId = projectID; projectConfig.ChainId = chainID; @@ -214,16 +232,22 @@ private void OnGUI() projectConfig.Symbol = symbol; projectConfig.Rpc = rpc; ProjectConfigUtilities.Save(projectConfig); - ValidateProjectID(projectID); + if(projectID != previousProjectId) + ValidateProjectID(projectID); + previousProjectId = projectConfig.ProjectId; } - GUILayout.Label("Reminder: Your ProjectID Must Be Valid To Save & Build With Our SDK. You Can Register For One On Our Website At Dashboard.Gaming.Chainsafe.io", EditorStyles.label); + + GUILayout.Label( + "Reminder: Your ProjectID Must Be Valid To Save & Build With Our SDK. You Can Register For One On Our Website At Dashboard.Gaming.Chainsafe.io", + EditorStyles.label); } /// - /// Validates the project ID via ChainSafe's backend & writes values to the network js file, static so it can be called externally + /// Validates the project ID via ChainSafe's backend & writes values to the network js file, static so it can be called + /// externally /// /// - static async void ValidateProjectID(string projectID) + private static async void ValidateProjectID(string projectID) { try { @@ -242,14 +266,14 @@ static async void ValidateProjectID(string projectID) } /// - /// Validates the project ID via ChainSafe's backend + /// Validates the project ID via ChainSafe's backend /// private static async Task ValidateProjectIDAsync(string projectID) { var form = new WWWForm(); form.AddField("projectId", projectID); Debug.Log("Checking Project ID!"); - using UnityWebRequest www = UnityWebRequest.Post("https://api.gaming.chainsafe.io/project/checkId", form); + using var www = UnityWebRequest.Post("https://api.gaming.chainsafe.io/project/checkId", form); await EditorUtilities.SendAndWait(www); const string dbgProjectIDMessage = "Project ID is not valid! Please go to https://dashboard.daming.chainsafe.io to get a new Project ID"; @@ -274,7 +298,7 @@ private static async Task ValidateProjectIDAsync(string projectID) } /// - /// Writes values to the network js file + /// Writes values to the network js file /// public static void WriteNetworkFile() { @@ -283,8 +307,8 @@ public static void WriteNetworkFile() var projectConfig = ProjectConfigUtilities.CreateOrLoad(); // declares paths to write our javascript files to - string path1 = "Assets/WebGLTemplates/Web3GL-2020x/network.js"; - string path2 = "Assets/WebGLTemplates/Web3GL-MetaMask/network.js"; + var path1 = "Assets/WebGLTemplates/Web3GL-2020x/network.js"; + var path2 = "Assets/WebGLTemplates/Web3GL-MetaMask/network.js"; if (AssetDatabase.IsValidFolder(Path.GetDirectoryName(path1))) { @@ -303,7 +327,8 @@ public static void WriteNetworkFile() } else { - Debug.LogWarning($"{Path.GetDirectoryName(path1)} is missing, network.js file will not be updated for this template"); + Debug.LogWarning( + $"{Path.GetDirectoryName(path1)} is missing, network.js file will not be updated for this template"); } if (AssetDatabase.IsValidFolder(Path.GetDirectoryName(path2))) @@ -316,7 +341,8 @@ public static void WriteNetworkFile() } else { - Debug.LogWarning($"{Path.GetDirectoryName(path2)} is missing, network.js file will not be updated for this template"); + Debug.LogWarning( + $"{Path.GetDirectoryName(path2)} is missing, network.js file will not be updated for this template"); } AssetDatabase.Refresh(); @@ -326,9 +352,8 @@ public static void WriteNetworkFile() private class ValidateProjectIDResponse { - [JsonProperty("response")] - public bool Response { get; set; } + [JsonProperty("response")] public bool Response { get; set; } } #endregion -} +} \ No newline at end of file From 14106d7c612456649517612d0f290d769d6d5594 Mon Sep 17 00:00:00 2001 From: kantagara Date: Thu, 30 May 2024 18:59:40 +0000 Subject: [PATCH 87/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 17408 -> 17408 bytes .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 284672 -> 284672 bytes 16 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index a9491c6d5c7914a334240aa53d61358652d4178b..27290c1b9bf39553a9a94396b0342a1b6db81088 100644 GIT binary patch delta 239 zcmZqZU~K4MoY28?-{a7%jXgDn0_$2n@A}rm<2QGa(0t$BlNC2h80}zHPc}_SGB7kt zPE0jRPEJlSFtbdwFiT4`PP9leF*7z#GB-&zGDu08yw5^wv!aDK6N|*2vi*~7tO5k? zE&Y2$YLSmmtIK(asmWC zCcn87I>FFoVV39zgB5SHCV$CUpa2zok_Z(9sh;xJ=|Rwc&)Yk`8?kQQlIzCio6KO! zkiw9}V8CF=V8)QlkjRhN5wjQyGka ODpMFzHoKSXWCj2OzEVp7 delta 239 zcmZqpz}WDCaY6@6#7mpC8+$CG1S%uD=C<`Pxy?{LR9&~Zi+%Hzs1@AmiD`yONy(O$ zhRJDWiAhPOCKjncoR*f9W@uqyVs2=WVrFQOW<2>{hW6%jX@^)@WelOCU4^(rFB442fVdQw9?T3x-q%2%QF$Ndl|40E(J0m;+T?Fr)xggXlB{ogCZ{o(31^@4oO<|CX^jOvMLhDk}umX?Oe zX=aH@Nv0+isX&~TmXu~_VPRr!Xpv%OXpv?-nUy=5#maQ%?a3+J0Rl(jRf{4w2Kg>& zOAvB3E>@a+gu6!pD%h(66$Gh1UvYykK%HM@$CQF+n+tfz-!II&dJ!fMNkBY!+0spRF7ZRMOovfIA^S8sz%_~$6vZyDUrX(2{nk6Tu znk6SErx=)7CR&)KB^oDMB$=2Qns`*}=$ir@(a2WEt%MfgkrbyuA0B z(QD)M`P<+2ZLFPKqurwb75oJg1gf_2<0y&EY5!^dtH#TCvxZI{t8X%cDMJcF5`zJQ zA%hu1GD9LmDws|NvQvPfW(<}?8&gAm5n59H`G6$WCQ20;)`5NZI_@ HP?iM%GulyZ delta 233 zcmZq3X~>z-!4i5$_}|7J9u=(u<1_3p#kMy#7{CiwH{CYz=t85o)+ zC#ISuCnu*Em{}%Tn588eCt4(#m>HWVnVX~<8Kk5zFxW6Mm`^^qKymZUImfwJZqMHM zck+_u0RoFJq#lehyy3nuMys5`A~kF>%ZfGysGzzcR1l>4e07qqK%B-);g345n^&zk z!s46EV9Jofki=lXV8~#`kj#+CkP4=gf$S8Zs2PJLP|N~IrvYhWFguCC1jsjLFbC>0 U2eMNcjDRXr7*aOxUhB#P08*t;ZU6uP delta 245 zcmZp8z|`=7X+j6fyjh+1H})*(7qIpg%U6;u@+Y&bXj6a+X5>HxL8?{s6-pWtE*&Xv>z}@P)ruo5 zzKINJ42BFzK$y&63513~I*q}MArUNQ%3#7^!H~)Tq0@jeNnrIBKv5G0bD(Mqh7_P` O5S_+gym|LpS0(_yr%>ns diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index a37159577b399c36838d3fbd7223a62f5d10d749..36c9652f52b15ea09ede3ffb554a11f5e042baa5 100644 GIT binary patch delta 232 zcmZp0XmFU&!E)36D`cr5{(lrl1$8u&6CVcQjH8!QYN1hNn$aOiCsI{L^MF)%DO$PmiBFQ zXg%7$a9*vO-Q+2vGZdhL2{1vRYTa3a=8I37*&Hx@em`(<=Q-Gpo43aJsBnA^8-*(@*f GkQo4x=S(pG delta 232 zcmZp0XmFU&!NRkq{?^8x2Z90^vNco0RmmWe@e%izw@7X z=aQVl<};p?r-;r_fC`=ugbIRG=gLnMRG9T|qcB6~$IU)sZLGeD3~3C83`szk%wP$G zhCn)v!HgjhEN04J!eGIW$^fC$fHFy7^%g);69#jjY72%GplT4E#$dczUgjY)0BU|o AUH||9 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index 7b6df12bccc92923e5f9dfff22e6dcef78a4ebac..eaf5559be6936fff046ea4c2639f10c1d9f32061 100644 GIT binary patch delta 232 zcmZoLX)u}4!E(nvaNowBGdu!J^QTl=|DEEoZI|cw2Y*;NH)rs6GO8z=rX(2{nk6Tu znk6SErx=)7CR&)KB^oDMB$=2Qn*48S-8` zPPfQaW6N<_Hu(nsJ_V@Y#_Lc)pla1X`@inDf38W24!yi}^EQDCtiH(%rVJ?zNel)I zh74v5$qb1MsbD%8$W8%@nlV@c#Vmky8jv;yvy&K1fP7;HbD%zRAUl=82&giJA!YMr HF!Ewy)Dz2KU`rRPqbn=^Pj8PyZh43mM)P%ttsM>-d1*jTCr!g3BzAUE83;-a7 BPDcO$ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 53b0def4ea613f2a7491bacf86c01e38c14f8e6a..bf544969bc99d38edd5130bc41e35b1da6052807 100644 GIT binary patch delta 232 zcmZpOXo#55!D6%T|C^0HN2CP~ZaS6p_t8)9=?qmS?|n9~ZcdO{#;l%fnv!H-XqKFq zYL=XwoMK>RnP_2_mS~)4kz`_KY@TFpl4@j-k}_FW;W*1Sj_cPZ|4;}J_^#a2`JL&p ze^Z3gw_5H8Ws@TmHz_~`>z$y2K-FRMJ0|B_wLi~cnfWYrvzC$qn{P6MDMJcF5`zJQ zA%hu1GD9LmDws|NvQvPfW(<}?8&gAm5n59H`G6$WCQ20;)`5NZCAH HBa;~bcrQ&) delta 232 zcmZpOXo#55!NO>N{OiV^Bhmr}i{gcw0zdjqon5s!#kg8xbArq=X7$80!=$8SOH0G# zG_%B{BvTWMR3J`EOG-1eurM(pn@?lL6Bh1cb>9mOy9- zq|+G87!tu^rVJ(w77VEj5IPMglLS_80TeZ1FbAr(U`PR~2GMB@#+#>WWHJK)+DS+6 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index e3b236fcaa216c8438a2e62d7fcc98b15495a31d..966712b877ceee42f6bacca02ac8d442143f04c8 100644 GIT binary patch delta 251 zcmZoT!_;twX+j4}rpK4R8+&~81HWVnVX~<8Kk5zFt9Q*FflMVF*4Xro@i>Yxz02! zjpdi7#pKC1W(Nq=rfo^wUYp^&@cW!w&WAI%PPUjcK>;fGR}m@*Qq6kxq(XWWbBw@A zfkT^L%sIs3o6KO!kiw9}V8CF=V8)QlkjRhN5wjQyGkaDpMFzHh*8p$pQeWb5cA2 delta 251 zcmZoT!_;twX+j4}hlo)3#vUJif&b@fYf>f(_%C63rJwdr*kbbwePdSR#5BXCq-0A= z!{jux#H1us6N^+JPD@KlGqkWUF*meGF*CGCGiG35Wn^GtU~pn&u$?^7)L?U+X;>P| zm&<2+Cf}GHAW))b%{-s2$Fu4Ae6N;EKY1ow%$cA76|8iE3W8KS$Ue<_vLi_8-0Hhd zn_tX1#NwOCkj7xhkOYLu432&B^(%oq~EVx|lx3>FNj3=ldED3b(MZvhlFVK4`( UwqQsBss_<%491(kFXUta0DhcLwEzGB diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 125768eba9a68505589250efdd4666cf7359fd11..993816922bb516c99597dcfcf8c7c208345726d2 100644 GIT binary patch delta 242 zcmZoDX(*Y{!IGb+ae8CV0S$pST8`JFi$uJ)&+eY_-2ck-%`uuGEV{|2DM-7~T|JB{hvgPUO~*Yxj}`Vl~Z^Mf9gBKm|nwpn@RPB3o>ERVM`r`7~b9+I&j?3#)H3 zgDFD_LlT1lgCT<%Lo!1mLn@d~2C`FtqGk-1Krss-od%?h!R#ak6CmH1!5pa19LP>( QFaoMfVMy7`ZT6KJ0Ct*9u>b%7 delta 242 zcmZoDX(*Y{!4iCn{q4q{0~!KT%2}m5wm$LQqN!Llf*AV~EV|Cu3NoL6#kHvGA?`IP<_R^LR1 zGzLS4Bp^&?umnOwAf3iw#*hdWGi5MguwY1KfY50`nIy1!3!tb8gE>&O1w#r@HHc1Q LFy72<_LUg`1$j{r diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index b6388847e8662748d865c048ef88ac7949b6f366..32bb0e1a77320ff5f659b330b37cfce07cab605e 100644 GIT binary patch delta 242 zcmZqhY4DlQ!7{~DvuR_GgoMDUBT`oymM!<$l*s#r-+SV*&08d7n01p)Q<4k}&5{#S z&61OoQw+>36D`cr5{(lrl1$8u&6CVcQjH8!QWzMV7#VCQJIE+amX|4IIe5VM-{cuG z0RsPGL{9Mey?0zy{@CeEc+s87KV-TTpn`_4pn^cvb=7?De_d-VO$~0^60muZ>;q=s zWCl})6ow=Q0|r9|Glpb_M21u_oeX5B07cChEP-McKspUb8-v+N3?@LnF@rf!pE;17 R%3uUknZl5=`Mjbb3jphEPKy8l delta 242 zcmZqhY4DlQ!4jYPbJoTl2?>F-tR}B5KN@(px@6rcch{}kyhTEWSvN7wFexe7($X+F z%`7n~$<)Lm6^PT)lF|$Uzy0~-l44D7{ zS^F0nL9bUic1yf=K5JmSa`F$EE(NF{BR5nKr262W4Yzp%n(q0}`;fGGk?aFz-$aHq z21AASRMoza;kCVogK_3u^<>kO zBm+aU9C_qKCOrWAb^}gy$4{u2Lk#lKT=lp-$Yt}RB zvG^u4m@=d=BrzB;7&4eKBr_y3q=M;WAUg#pYQ|s*6te)*X+YW-%uZr30rHI*%z^sM Vf$UTUBcRF@hLr8!H#2gw006=W~45HWVnVX~<8Kk6a-Vorz%#ydpVejN0!2trF0y4U+ zuYdL5CNe+ji^p-<$q^y56rh6Z%b?zR3)x3@Hpr z3U^*GdP63LVF<1h{EP!+xkTwRhlNd~Zd}9W4pgwaTJC(r*s4|5i KWwU(LLuLRL|4$?U delta 235 zcmZqJ!`QHgaY6@6tIpCp8+&fJ3tV^anKmsi-Fwwdma8r63YKjy@et)uPfRmRN=ml0 zG)zu2OH4{KHL*wq;-10$i9`{(8J!H~B|!fPn8gt^W)% zcip$E?R&9V;)~Mch>%$dP(gN>AW*g5qh|sJheh|t#ETTY+$qZ|M?GW) E0M15D?*IS* diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index ab3024661e7ea9f0ff4d423c4861f66a152da878..0b2222b629a37fcde984ba63e561497b854985da 100644 GIT binary patch delta 233 zcmZpuXsDRb!J?J<`s2nP4J83H#{6GK3m&@eIpi&;#E|rK^AV*lEb7UoDMMtZ{*J=jH>(>sWo08B7^c7?Kza z7z`QA7?K$h8B)P?GLW4D6g6Y81d3Sz=`~f z{=tcUodvI)y2=+ZP3Ad2MFA=pcM>WHQq5Cf9dLt5o%gU-UFYTl=l`+#CNr2aq%b5g z7%&(zm@yFe>0}@~1t@C9U-WM{2lOQu|YTC$BjdAh11A&p@w+ z*QM2G+otrTAFLQag|Bux-ks*!2kRb^O zlNl_5&=5$cF_&0RmH;njZd1)^OgiYW3O6B413WKk;X&P=Jaue}Ia9Fz&A|JGbCd zGw+znZcAHg&~Q-fWeT#j3JpJks%dKCj;3jKv6RWOQ4tqkWK^A i#$a|5g9(st%wP`GXAWeiG8h3>rZA*zuMcHuWC8$Qv0CE* delta 256 zcmZqJAlR@$a6$)*Ky2!T#-7$5#;rX}FTM!;=)7}K%ZJf(!zS*01?I2`+grXe6`oK} zOfyVMO188#OinXPOiD5}u}B5tw6vr&LkkNNb3=<1Gee6sW~45 Date: Fri, 31 May 2024 14:27:30 +0800 Subject: [PATCH 88/97] Marketplace cleanup (#994) Fixes & cleanup Removed some directives as they weren't being used. Fixed marketplace/ipfs button calls as they had become unassigned during the build process. --- .../Web3.Unity/Scenes/SampleMain.unity | 68 +++++++------------ .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 1 - .../Scenes/SampleMain/Erc1155/Erc1155Calls.cs | 8 +-- .../Scenes/SampleMain/Erc721/Erc721Calls.cs | 3 - .../Scenes/SampleMain.unity | 68 +++++++------------ .../Scripts/Scenes/SampleMain/EVM/EvmCalls.cs | 1 - .../Scenes/SampleMain/Erc1155/Erc1155Calls.cs | 8 +-- .../Scenes/SampleMain/Erc721/Erc721Calls.cs | 3 - 8 files changed, 56 insertions(+), 104 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity index 06ba2d80f..49781fcb6 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scenes/SampleMain.unity @@ -242,7 +242,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -755,7 +755,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 2077011804} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -794,7 +794,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Upload (2) + value: Button - UploadImageAndMetadata objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text @@ -1715,7 +1715,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 2077011804} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -1864,7 +1864,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_Name - value: Button - Upload + value: Button - UploadImage objectReference: {fileID: 0} - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_IsActive @@ -2108,9 +2108,6 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 199502206} - - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - insertIndex: -1 - addedObject: {fileID: 199502207} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &199502201 stripped RectTransform: @@ -2158,19 +2155,6 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!114 &199502207 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 199502205} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} - m_Name: - m_EditorClassIdentifier: - serviceType: 3 --- !u!1 &213321590 GameObject: m_ObjectHideFlags: 0 @@ -2755,7 +2739,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -2997,7 +2981,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3167,7 +3151,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.18288729 + m_Size: 0.17716347 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -4396,7 +4380,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5059,7 +5043,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5593,7 +5577,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6199,7 +6183,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6405,7 +6389,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -7019,7 +7003,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -8733,7 +8717,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9035,7 +9019,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9665,7 +9649,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9871,7 +9855,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 2077011804} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9910,7 +9894,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Upload (1) + value: Button - UploadMetadata objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text @@ -10687,7 +10671,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11380,7 +11364,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -12922,7 +12906,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13128,7 +13112,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13334,7 +13318,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13746,7 +13730,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -16013,7 +15997,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 3c53c5cd9..62b17b03a 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -5,7 +5,6 @@ using ChainSafe.Gaming.Evm.Contracts.Extensions; using ChainSafe.Gaming.MultiCall; using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.ABI.FunctionEncoding.Attributes; using Nethereum.Contracts.QueryHandlers.MultiCall; using Nethereum.Hex.HexConvertors.Extensions; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs index 128a43edb..16dd9af8a 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs @@ -1,9 +1,6 @@ -using System.Collections.Generic; -using System.Linq; using System.Numerics; using ChainSafe.Gaming.Evm.Contracts.BuiltIn; using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; using Scripts.EVM.Token; using UnityEngine; using UnityEngine.UI; @@ -15,7 +12,7 @@ public class Erc1155Calls : MonoBehaviour { #region Fields [Header("Change the fields below for testing purposes")] - + #region Balance Of [Header("Balance Of Call")] @@ -65,8 +62,7 @@ public class Erc1155Calls : MonoBehaviour #endregion #endregion - - + /// /// Balance Of ERC1155 Address /// diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs index 89d37e7ab..4a1dc3524 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs @@ -1,10 +1,7 @@ -using System.Collections.Generic; using System.Linq; -using System.Numerics; using System.Text; using ChainSafe.Gaming.Evm.Contracts.BuiltIn; using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; using Scripts.EVM.Token; using UnityEngine; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity index 06ba2d80f..49781fcb6 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scenes/SampleMain.unity @@ -242,7 +242,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -755,7 +755,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 2077011804} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -794,7 +794,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Upload (2) + value: Button - UploadImageAndMetadata objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text @@ -1715,7 +1715,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 2077011804} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -1864,7 +1864,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_Name - value: Button - Upload + value: Button - UploadImage objectReference: {fileID: 0} - target: {fileID: 2295802096196926480, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_IsActive @@ -2108,9 +2108,6 @@ PrefabInstance: - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} insertIndex: -1 addedObject: {fileID: 199502206} - - targetCorrespondingSourceObject: {fileID: 5855924980481563309, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} - insertIndex: -1 - addedObject: {fileID: 199502207} m_SourcePrefab: {fileID: 100100000, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} --- !u!224 &199502201 stripped RectTransform: @@ -2158,19 +2155,6 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!114 &199502207 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 199502205} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7b044657e16866a4dbee5eccdd4a15b4, type: 3} - m_Name: - m_EditorClassIdentifier: - serviceType: 3 --- !u!1 &213321590 GameObject: m_ObjectHideFlags: 0 @@ -2755,7 +2739,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -2997,7 +2981,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -3167,7 +3151,7 @@ MonoBehaviour: m_HandleRect: {fileID: 37375165} m_Direction: 0 m_Value: 0 - m_Size: 0.18288729 + m_Size: 0.17716347 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -4396,7 +4380,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5059,7 +5043,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -5593,7 +5577,7 @@ PrefabInstance: - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 266788301277215411, guid: fed17eec8cc2ebf4abd403772e93693d, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6199,7 +6183,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -6405,7 +6389,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -7019,7 +7003,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -8733,7 +8717,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9035,7 +9019,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9665,7 +9649,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9871,7 +9855,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 2077011804} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -9910,7 +9894,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8775736491206355084, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_Name - value: Button - Upload (1) + value: Button - UploadMetadata objectReference: {fileID: 0} - target: {fileID: 8781309615174179339, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_text @@ -10687,7 +10671,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -11380,7 +11364,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -12922,7 +12906,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13128,7 +13112,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13334,7 +13318,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -13746,7 +13730,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: @@ -16013,7 +15997,7 @@ PrefabInstance: - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target value: - objectReference: {fileID: 0} + objectReference: {fileID: 496534498} - target: {fileID: 7324590823460843055, guid: 50ad8ea555027414b8ddfc03fc7d41ab, type: 3} propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target value: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs index 3c53c5cd9..62b17b03a 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/EVM/EvmCalls.cs @@ -5,7 +5,6 @@ using ChainSafe.Gaming.Evm.Contracts.Extensions; using ChainSafe.Gaming.MultiCall; using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.ABI.FunctionEncoding.Attributes; using Nethereum.Contracts.QueryHandlers.MultiCall; using Nethereum.Hex.HexConvertors.Extensions; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs index 128a43edb..16dd9af8a 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155Calls.cs @@ -1,9 +1,6 @@ -using System.Collections.Generic; -using System.Linq; using System.Numerics; using ChainSafe.Gaming.Evm.Contracts.BuiltIn; using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; using Scripts.EVM.Token; using UnityEngine; using UnityEngine.UI; @@ -15,7 +12,7 @@ public class Erc1155Calls : MonoBehaviour { #region Fields [Header("Change the fields below for testing purposes")] - + #region Balance Of [Header("Balance Of Call")] @@ -65,8 +62,7 @@ public class Erc1155Calls : MonoBehaviour #endregion #endregion - - + /// /// Balance Of ERC1155 Address /// diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs index 89d37e7ab..4a1dc3524 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721Calls.cs @@ -1,10 +1,7 @@ -using System.Collections.Generic; using System.Linq; -using System.Numerics; using System.Text; using ChainSafe.Gaming.Evm.Contracts.BuiltIn; using ChainSafe.Gaming.UnityPackage; -using ChainSafe.Gaming.UnityPackage.Model; using Scripts.EVM.Token; using UnityEngine; From 8b983a7438cd2e46dabd126d6b0186fb7f740e62 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Fri, 31 May 2024 08:28:37 +0200 Subject: [PATCH 89/97] Increased all package versions (#987) * Increased all package versions * lock json updated --- Packages/io.chainsafe.web3-unity.lootboxes/package.json | 4 ++-- Packages/io.chainsafe.web3-unity.ramp/package.json | 4 ++-- Packages/io.chainsafe.web3-unity.web3auth/package.json | 4 ++-- Packages/io.chainsafe.web3-unity/package.json | 2 +- src/UnitySampleProject/Packages/packages-lock.json | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/package.json b/Packages/io.chainsafe.web3-unity.lootboxes/package.json index 4c03b61d5..fb0b3150b 100644 --- a/Packages/io.chainsafe.web3-unity.lootboxes/package.json +++ b/Packages/io.chainsafe.web3-unity.lootboxes/package.json @@ -1,13 +1,13 @@ { "name": "io.chainsafe.web3-unity.lootboxes", - "version": "2.5.5", + "version": "2.6.0", "displayName": "web3.unity SDK Lootboxes", "description": "This additional package provides you with sample scene and sample scripts for opening lootboxes of various types", "license": "LGPL-3.0-only", "licensesUrl": "https://github.com/ChainSafe/web3.unity/blob/main/LICENSE", "documentationUrl": "https://docs.gaming.chainsafe.io/", "dependencies": { - "io.chainsafe.web3-unity": "2.5.5" + "io.chainsafe.web3-unity": "2.6.0" }, "keywords": [ "web3", diff --git a/Packages/io.chainsafe.web3-unity.ramp/package.json b/Packages/io.chainsafe.web3-unity.ramp/package.json index 794695f94..1ce2aff8c 100644 --- a/Packages/io.chainsafe.web3-unity.ramp/package.json +++ b/Packages/io.chainsafe.web3-unity.ramp/package.json @@ -1,6 +1,6 @@ { "name": "io.chainsafe.web3-unity.ramp", - "version": "1.0.0", + "version": "2.6.0", "displayName": "web3.unity SDK Ramp", "description": "This package includes the integration of Ramp's ramp service, which you can use with our Gaming SDK.", "license": "LGPL-3.0-only", @@ -8,7 +8,7 @@ "documentationUrl": "https://docs.gaming.chainsafe.io/", "dependencies": { "com.unity.nuget.newtonsoft-json": "3.0.2", - "io.chainsafe.web3-unity": "2.5.0" + "io.chainsafe.web3-unity": "2.6.0" }, "keywords": [ "web3", diff --git a/Packages/io.chainsafe.web3-unity.web3auth/package.json b/Packages/io.chainsafe.web3-unity.web3auth/package.json index 17079a779..0eea08e77 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/package.json +++ b/Packages/io.chainsafe.web3-unity.web3auth/package.json @@ -1,6 +1,6 @@ { "name": "io.chainsafe.web3-unity.web3auth", - "version": "2.5.5", + "version": "2.6.0", "displayName": "web3.unity SDK Web3Auth", "description": "web3.unity is an open-source gaming SDK written in C# and developed by ChainSafe Gaming. It connects games built in the Unity game engine to the blockchain. The library currently supports games built for web browsers (WebGL), iOS/Android mobile, and desktop. web3.unity is compatible with most EVM-based chains such as Ethereum, Polygon, Moonbeam, Cronos, Nervos, and Binance Smart Chain, letting developers easily choose and switch between them to create the best in-game experience.", "license": "LGPL-3.0-only", @@ -8,7 +8,7 @@ "documentationUrl": "https://docs.gaming.chainsafe.io/", "dependencies": { "com.unity.nuget.newtonsoft-json": "3.0.2", - "io.chainsafe.web3-unity": "2.5.5" + "io.chainsafe.web3-unity": "2.6.0" }, "keywords": [ "web3", diff --git a/Packages/io.chainsafe.web3-unity/package.json b/Packages/io.chainsafe.web3-unity/package.json index edf0a5980..abb20c2da 100644 --- a/Packages/io.chainsafe.web3-unity/package.json +++ b/Packages/io.chainsafe.web3-unity/package.json @@ -1,6 +1,6 @@ { "name": "io.chainsafe.web3-unity", - "version": "2.5.5", + "version": "2.6.0", "displayName": "web3.unity SDK", "description": "web3.unity is an open-source gaming SDK written in C# and developed by ChainSafe Gaming. It connects games built in the Unity game engine to the blockchain. The library currently supports games built for web browsers (WebGL), iOS/Android mobile, and desktop. web3.unity is compatible with most EVM-based chains such as Ethereum, Polygon, Moonbeam, Cronos, Nervos, and Binance Smart Chain, letting developers easily choose and switch between them to create the best in-game experience.", "license": "LGPL-3.0-only", diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index 1d18f2287..34b044de1 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -163,7 +163,7 @@ "depth": 0, "source": "local", "dependencies": { - "io.chainsafe.web3-unity": "2.5.5" + "io.chainsafe.web3-unity": "2.6.0" } }, "io.chainsafe.web3-unity.marketplace": { @@ -181,7 +181,7 @@ "source": "local", "dependencies": { "com.unity.nuget.newtonsoft-json": "3.0.2", - "io.chainsafe.web3-unity": "2.5.0" + "io.chainsafe.web3-unity": "2.6.0" } }, "io.chainsafe.web3-unity.web3auth": { @@ -190,7 +190,7 @@ "source": "local", "dependencies": { "com.unity.nuget.newtonsoft-json": "3.0.2", - "io.chainsafe.web3-unity": "2.5.5" + "io.chainsafe.web3-unity": "2.6.0" } }, "nuget.mono-cecil": { From 8652570d9e0e63532edf1cb56a7e0b67a1eb87a1 Mon Sep 17 00:00:00 2001 From: kantagara Date: Sat, 1 Jun 2024 16:59:27 +0000 Subject: [PATCH 90/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 17408 -> 17408 bytes .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 284672 -> 284672 bytes 16 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index 27290c1b9bf39553a9a94396b0342a1b6db81088..4a7b0e2606418d33918432f229e3f04dfc75d81b 100644 GIT binary patch delta 242 zcmZqZU~K4MoY27%wD?v3#-18O0Z|D#p^FE9`L%DVyYf=@3Fl@BqwTC37D<*C#);-8 z#umvbMyV!dDTzrbhDK&7W=RHy7G`Nl=4s|82B~I7llNI@ZC11pXJUD*DtC6Wja7g^ zaGHjoUsAC5#HVK~q8dJEO`c=bqW~4G7K91{Rr^kRw{SsEbH&DpSb8O#|>fV2feGD8Z35ko4FX9i>?0#&3i7y?B=JToBA0LZfdveJNTb07)Q QX8=@h#$dGhvArw{0O^NGE&u=k delta 242 zcmZqZU~K4MoY28?-{a7%jXgDn0_$2n@A}rm<2QGa(0t$BlNC2h7;R_ONKQ6QNir}r zOHNEROHNKsF)*`Cv@lCcG)}ZgGBGnYPck=2H8My^nY_XX<%z(T^hEy;Ol1TxInlV@c#Vmky8jv;yvy&K1fP7;HbD%zRAUl=8 P2&giJA!YMpds!9$)o)H$ diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index ceddd4ef0f518f734d2121df9d694f562794be65..01e2e159c501a4c6ac3bcce826a7b6342c51edbf 100644 GIT binary patch delta 242 zcmZqpz}WDCaY6^n#{Z0OHuhLV34ELR@eSD^bh2H7t@WEsPV* zO^hv)Q;bqg%u*7QQVfmEQp}PJ3@yyklFZZ0O$<`aj3)of(B6D5?GP)A({tlJlc(ea z2&4)=x-4+Q&Szm`{w*0>?W)ONauz5+1d!<)C{y0H0M zFeEWpGFUJeGbA#YGnfEr3x;Hd6b2)PR3Og`$VvpNNMSGpihy`#K%N1RX8~lT0omq2 S5~R-nsNRghXtR6CPG$f)^HJ#l delta 242 zcmZqpz}WDCaY6@6wO`@&jXf4o0v0oz*e8Au_TBAfv;C|~V(jKCQOmhCl9NqSk_-&Z zk`q(Sl9Q8D49qMOEzHsqjT0@BOw5eUlgv$0jSNy!CjZOO-h3|Y5GxCBgzW3dQ*r_X zJ|@4p5<0=qWnq@+2ZI%FvnGGZS)c$Fe3A$i1gW0#*Xcpff6v=Hz8kS_-jeIW=AX=v z%wWop!jQyZz+lK=2IM6&q=IRXObSrcjKLBpW&xzrfV44~oy1@QZqlQJ2rG;^#xrwnw za*9!^iCIcwQi`FGS&CVbfuV(2T9SF1xrsrlnbBlc?r4@qvC}svr*H=dI5N3k*T2N* z(XC@J-F434uE|HZdlaC86{n$sK-H1^PjPFXQcUwY937FrxqwH7)!%|4iNTV=g29*} zk-?n71V~#jBr~Ki7%`**d1gRXB2YyNgCS4^#4`i(41hcfAS(^XHV2X*eFi}FW(-D~ J9}CK|001y2Lb?C| delta 235 zcmZqBY0#O_!BTWuogCZ{o(31^@4oOz-!4h1=c70z zLn4DYg9(tfU`S?2VK8Dy1@g>*tVE!S6b3_}2#99}dhF8 KHa|9$WdQ(rS50C7 delta 236 zcmZq3X~>z-!II&dJ!fMNkBY!+0spRF7ZRMOovfIA^S8sz%_~$6uxKPFo2Dcg7@8#~ zrkW)uC#M*gSteSTr6n3CS|pj68Jj1Wo1_{Uq@-+~pxMF5a;Ly_&tw_x0D&L(H@v*} znbB+G^!eN0_HC@4T%+Bi02TZN69lTZ@#83o&1wH>{;S5zc(aC14y%7MLo$OYLkdF@ zg8_pfgBg&Q$dC%AK{6>oQ8NZhpqK@aP6N`$V0IFN36O8hU=Gx04rHe?7y(tLFr;jL IY$(eD06RufGynhq diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index fccf7c5087a766dfdbb5e055f63563566012cc52..07744ae6ad609de07f9723f3f89010764a67e0ad 100644 GIT binary patch delta 248 zcmZp8z|`=7X+j6f4wnRmFXeV!QBTm5~{WR?|e3NS%ks31tS`^jIwYC3Bly%U^Szj@V) zLoEIl3`q=@3>FN=42cZp3?@L@f+3k9g~5m+705FKvJ!zRQWy+@A|Rd_kY@noSpZpS WK(;xM1nDyXsyAaW+Pr(MD-!_TrBtK< delta 248 zcmZp8z|`=7X+j4}$*fcT8+#V?3vjoacHex>=(u<1_3p#kMy#7{CiwB_B`2GvBpDc* zB`2nuB_}7R7?@cmT9~CJ8YfyLnV1=yCz+e18X2UdFfiCKGMG<3xIl69%{j-pSZ>eW z_;>P>0`P}GdU5-4T?q|<=3F_@jiU;^YDGnfPQ VnFHCW3`RheDGVu_cdvD20sva-Q8WMm diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 36c9652f52b15ea09ede3ffb554a11f5e042baa5..1483d6616f66c9fb8520e74f9478bcb3b485f675 100644 GIT binary patch delta 235 zcmZp0XmFU&!4kMV@ZiRt2Z91|`>%7vJ-+DHFQQ$$u6VW0<{BX_CJl=uOAF&fa}#5W z&|cM_4|T2w$44W*+;B})!%|4iNTV=g29*} zk-?n71V~#jBr~Ki7%`**d1gRXB2YyNgCS4^#4`i(41hcfAS(^XHV2X*eFi}FW(-D~ Jt*kcnM8*+euz;L5r^tCsd{ zbZ9-=zi?iyo89CoqB9hrf(bA|plaP&g64})n%NvMeB<(VvyWH{tA8>>GJ`2Y3PTcu z0fQlf8IYIAkP4U# HdB_X^j*LwA diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index eaf5559be6936fff046ea4c2639f10c1d9f32061..5be71f0c6263203ac9135e396e7cbad60174060f 100644 GIT binary patch delta 235 zcmZoLX)u}4!D5%Z^5DjvGdu!2H~f0A!PmxRBA?o_A9o&a*_^@K!Kh)8WNBfXXl`O` zk(^?bYGRg>n3Q5@WR_x6mW^Q7TYGyQ9fpQFfjl!HD-oz7g~1Rg0^*qgc?Lk91(1~nWSav?kUj&TdNT&2 J&6mY=nE~bpOb-A6 delta 235 zcmZoLX)u}4!E(nvaNowBGdu!J^QTl=|DEEoZI|cw2Y*;NH)rs6FlrSvL6w|2_q%;Ku7vL7-~YK>NS$w|}lliVnTJb@MiXbFBW!49N_p3@Hpr z3v2fnpXwIt@r0gV{+8CP2P1gE>&2Igp*oU<6c|!jQ80 IvY0M209ctz;{X5v diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index bf544969bc99d38edd5130bc41e35b1da6052807..50e474f4c355324f1e27baf41735efcddcfea239 100644 GIT binary patch delta 235 zcmZpOXo#55!Q#4e)6|VUN2CQ_nj}4wuU_rCn3Q5@WR_x6mW^Q7TYGyQ9SK&B|JD23@$v+eV1PXnt$}jM| zaBDmv{Nq8yy}Zd0iklRmg4-COfUnFi5@kBa^k9(w*EVzZW#9GkxdLlT1}g9U>z zLn4DYg9(tfU`S?2VK8Dy1@g>*tVE!S6b3_}2#99}dhF8 KHc!{cWCj3F7D}7| delta 235 zcmZpOXo#55!D6%T|C^0HN2CP~ZaS6p_t8)9=?qmS?|n9~ZcdO{%B+!`Y?_i}U}%<{ zm}-`soSb4{W|?SVmX>IoXpv-MW^A5hZjx$bkdiW4SK&CzHjeApCjU?f5csa#()pd~ zv42y9(zjaf2W68Z6gMeA1?!!lfoQ8NZhpqK@aP6N`$V0IFN36O8hU=Gx04rHe?7y(tLFr;jr Iu93+M0C%xY6#xJL diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 966712b877ceee42f6bacca02ac8d442143f04c8..79ea7d3dfa2a8d3cabce061668c3c3196caa3e0b 100644 GIT binary patch delta 254 zcmZoT!_;twX+j4J$AejWH}?4G3%s;ln7Lmo%5~n){k+%h1bQ~V&^KZ=u}HGCFitc# zF}6rfF-kQtOG!*hF*GtuF-tNqv@lCcGEXx%F-SEtVqjopWME=oaAIVzojlRhU~`>m zSQ<;xqHAX+-EFu1^@6LjRh0lJSxiQ&d&IARh;9N_nAW*fBN#NPrM_b;x zs2$sFN=42cZp3?@L@f+3k9g~5m+705FKvJ!zRQWy+@A|Rd_ ekY@noSpZpSK(;xM1nDyXsyAaW+WdVXCkp^r9#cvH delta 254 zcmZoT!_;twX+j4}rpK4R8+&~81?v!t@vU7fr| zFF=4(;$~EYdb{W1A8%cLZYhtLETTV60V*h&3>5^b4&77FkdXG}L{UlCTHVd3^gprs zTQDRsSTa~J7&9a?m@}9FX$yvAh7<-PhEyQW49H3Zsz_ll1d4!oWrCjZsl%(CU_>f@8Q z=miM$acI3i(lyt0!fW@E1!6VLlSTBWDL@591)zc;)goJLc~vI`3HdZ$(b{}U{}Zc! zGD9+hDMJcF5`zJQA%hu^m&lL`ra>|(Kv6RWOQ4tqkWK^A#$a|5g9(st%wP`GXAWei RG8h3>rZA*z<~IAv3;=lrPImwR diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index 32bb0e1a77320ff5f659b330b37cfce07cab605e..a80a0e4537d5866b12f1d054b87a7d53430e1fc7 100644 GIT binary patch delta 245 zcmZqhY4DlQ!D7;P@xaC&2?+t~>*Yt}U%Girn7n7phV7r%Y~CUv&8%mUWNBfXXl`O` zk(^?bYGRg>n3Q5@WR_x6mW^Q7TYG%a1;KayaJJ~@-X|lXbDa)asE*~e) zkO>gbEuLoe#!|&;!}$qXqBMhvMyo*9sp2vm{6Uh($ delta 245 zcmZqhY4DlQ!7{~DvuR_GgoMDUBT`oymM!<$l*s#r-+SV*&08d-ne~#BO;eH#49$`g zQ_Yf-lT!@LEE6rv(h`jmEs{*kjLnnGO;U{vQc@TgoERBwCp*X}O_rA_WjT1j_}}Ci zG64erVnj~x`Mq~sRsPuNOnA|q$vaJsBnA^8-*?eBnkOctlQ%_L< diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 713a77147e6ce283531cb986db16ffeaaa8c3b85..d18f37a31f4d28d72e08b0df12963439f28b2bf6 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f2WhYxhW6#ze#t-ZQOP+eno}A_9yE}wgey;L`=bkp@&({t7_ z1_+d0+w}44n>7ChDbCDE27x!e*tbtXpqwuUXHi z!{Tqjki=lgV8LL_kjP-pU;?Bq7?K%M7>pQFfjl!HD-oz7g~1Rg0^*qgc?Lk91(1~n XWSav?kUj&TdNT&2?cX;uaSRMoza;kCVogK@@OjpSt0 zlq3T~v*g57v*hID6azEML<_UDMB_w@Boi}Z^CWYVR3n3wlpsIS?BzJ+iTV{ z>ah4HGbA&ZGNdphF&HoyGME8*i43V=8YGhf6g6Y81d3Sz=`qW{M?GW)08F4pUjP6A delta 238 zcmZqJ!`QHgaY6@+-Xhz58+&fJ3;gol(f(gE!fW2s2Wjy5*~t+hvlO6$>&u{mK-IPtJULD`#8KF<= diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 0b2222b629a37fcde984ba63e561497b854985da..9f6fc57142d26be4135e42db530e50a96f99f9b8 100644 GIT binary patch delta 236 zcmZpuXsDRb!Ln`I*|i&cG?WD1|CO7@{b_^GJZqVc0rwJCY(Ap&nMK1Q$tlrYT7VhGxl$ zsbG7O-W2|w3bLZv*#%oyplNpj3Oc_!b zk{Apa3>nOTyhMgnFb$GP0g9S2SOUc?fOHy=HU_hk7)*eCV+M1eK64;DmB9$8GKC>! J^KMI5CIIe*PF?^2 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 3737d55a9908800e24d6f187773d34f730577ccd..a5b555407485c994ac39618e5de173043dd0be42 100644 GIT binary patch delta 238 zcmZqJ!rZWhc|r%vt>3ddHuikkC~(N)SEe~zvGBg7g^x O)tfOGZRWoAl^FmvC{fk` delta 238 zcmZqJ!rZWhc|r$E`u@TN8+*QN6yS}Hnr3q;+-r4Bz*BpfuS+*i*i<5@k(_Lrl4M|L zmYkSsmYkfNVqj*OXknI?Xq;$~WMXD)o@8#4YGja-vRUUy4HwJA^#6}0uQ?YWaDpk7 z=l;Qoew_ucoVv;vF-_($ISNuBqwR$b@j1Lyy+`X@6aGng`@ zFeEV;Fc>nJ0eOiGsbCr;lL8bqW3U8@SpexYAZ-k0Coz}+`Nj<9Kz-&wb}EArP-O~3 K%4Y6sUzq_mVo*r{ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 038e1437a93f176c17f4cb778dedfe599332c614..9a09afe190cc2bd05618937b9614bdf98c617137 100644 GIT binary patch delta 260 zcmZqJAlR@$a6$*ms$>4I8+%%N7`OH?z4#)~A8$2hO`o3AnwH%^(@OX=x3_#{DmbBG zkz{FMoM>)hY>}K|lxkv@l9-fYXk?aRmSkXPVV0I;o@Q=hkZNW$z4r*S`1JaH%-q}U z_Axt6WU&e^UpT$RpCv$Gje_mn?|UlTH#$pcm5V7JnEu3{r9uHJ`n(V-3R15sFx5EW z<`)gdc<-6pYXVrdu=rarBr#YrSTGnfBr=#Ym;h-DhGd2m1|x=4AkPfQN(8D%VK4-W ifOuv=o&k_&0c52C+2%kJq|X4T-i*O$dwnQNBNG5#wo*U< delta 260 zcmZqJAlR@$a6$)*(oCiP#-7$5#;rX}FTM!)%vzsxb&7!Vo`Agpo#i!TrW9Hs& zw~yIrBFhKk{@>GE{8<77rZ_b{{FAKVykXVqvzJA_m`;D<&r+cP6=nVa6$PrVE<3m2 zQ#0?~$Cn&luH9Y}z_NwKKbaw!!IU9|A&J3&!H~fW$V+5M1=Apz6riXXgC$VR0!XI; jX=5-uiNOTOH)b#g>N5wjQyGkaDpMFzw%3QUG%^7IKTKSi From bf27dbf5f423e62a864966174741aca35a200906 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Mon, 3 Jun 2024 08:37:14 +0200 Subject: [PATCH 91/97] NativeBalanceOf fixed --- .../Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs | 2 +- .../Scripts/Scenes/SampleMain/SampleOutputUtil.cs | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs index cd76b859c..0d8d31c16 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs @@ -52,7 +52,7 @@ public async void BalanceOf() public async void NativeBalanceOf() { var balance = await Web3Accessor.Web3.RpcProvider.GetBalance(accountBalanceOf); - SampleOutputUtil.PrintResult(balance.ToString(), "Native Balance Of"); + SampleOutputUtil.PrintResult(balance.ToString(), "ERC-20", nameof(NativeBalanceOf)); } /// diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleOutputUtil.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleOutputUtil.cs index ec0ead121..1566f91c0 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleOutputUtil.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleOutputUtil.cs @@ -4,11 +4,6 @@ public static class SampleOutputUtil { - public static string PrintResult(string value, string sampleName) - { - return $"{sampleName} executed successfully.\nOutput: {value}"; - } - public static void PrintResult(string value, string sampleClassName, string sampleMethodName) { var msg = BuildResultMessage(value, sampleClassName, sampleMethodName); From 8365aedec2f9c0165a072389e5dfb8f4e7893f41 Mon Sep 17 00:00:00 2001 From: kantagara Date: Mon, 3 Jun 2024 08:47:20 +0000 Subject: [PATCH 92/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 17408 -> 17408 bytes .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 284672 -> 284672 bytes .../Scenes/SampleMain/Erc20/Erc20Calls.cs | 2 +- .../Scenes/SampleMain/SampleOutputUtil.cs | 5 ----- 18 files changed, 1 insertion(+), 6 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index 4a7b0e2606418d33918432f229e3f04dfc75d81b..ac01afe52f1cfa6d42c2ead2254d9d257111edae 100644 GIT binary patch delta 241 zcmZqZU~K4MoY2AIw|D8cjXgDn0{40&zZ|$>@3f`v+C7nSlP#MijJC6?C#4ygrzEAB zrkNNSrfLNwLYy#vPGo&(@0qH~r3m|R6UD3c7t#y}m3Ky?N{XbHq- Kn;+ZDvH$=zHA}Pr delta 242 zcmZqZU~K4MoY27%wD?v3#-18O0Z|D#p^FE9`L%DVyYf=@3Fl@BqwTC37D<*C#);-8 z#umvbMyV!dDTzrbhDK&7W=RHy7G`Nl=4s|82B~I7llNI@ZC11pXJUD*DtC6Wja7g^ zaGHjoUsAC5#HVK~q8dJEO`c=bqW~4G7K91{Rr^kRw{SsEbH&DpSb8O#|>fV2feGD8Z35ko4FX9i>?0#&3i7y?B=JToBA0LZfdveJNTb07)Q QX8=@h#$dGhvArw{0O^NGE&u=k diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index 01e2e159c501a4c6ac3bcce826a7b6342c51edbf..59d98cdbb765fb0f1e2aa8b6b9478def28400463 100644 GIT binary patch delta 242 zcmZqpz}WDCaY6^nhJ*drHuhLV2?%}QvwGso{#fLNwLYy#vPGo&(@0qH~r3m|R6UD3c7t#y}m3Ky?N{ OXbHq-o83!xG6Mi2aZ!x` delta 242 zcmZqpz}WDCaY6^n#{Z0OHuhLV34ELR@eSD^bh2H7t@WEsPV* zO^hv)Q;bqg%u*7QQVfmEQp}PJ3@yyklFZZ0O$<`aj3)of(B6D5?GP)A({tlJlc(ea z2&4)=x-4+Q&Szm`{w*0>?W)ONauz5+1d!<)C{y0H0M zFeEWpGFUJeGbA#YGnfEr3x;Hd6b2)PR3Og`$VvpNNMSGpihy`#K%N1RX8~lT0omq2 S5~R-nsNRghXtR6CPG$f)^HJ#l diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index afcf8887887c25cca82a6a7ec5782310216737dc..b667d0a2174bda39b62b6e06e8715dbc6edf7f78 100644 GIT binary patch delta 235 zcmZqBY0#O_!NR>N<=(~~4NifqX6;#B)*KFtCQkSHq+!Ru`3R>ZqefDik$Fl|nrWJe zk#VY-QKE&JiKUsDp}C28r*H=d{C_ITZJM;l zVfLDfMnA6V`cFQ>-J<{%Oo)aG0#(P_Ivto}(1X$(dT<_swe zAeJc*n*jO745ZqlQJ2rG;^#xrwnw za*9!^iCIcwQi`FGS&CVbfuV(2T9SF1xrsrlnbBlc?r4@qvC}svr*H=dI5N3k*T2N* z(XC@J-F434uE|HZdlaC86{n$sK-H1^PjPFXQcUwY937FrxqwH7)!%|4iNTV=g29*} zk-?n71V~#jBr~Ki7%`**d1gRXB2YyNgCS4^#4`i(41hcfAS(^XHV2X*eFi}FW(-D~ J9}CK|001y2Lb?C| diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 89fe991b7b88021b429e70cd78ff8be113de7c44..b9a886c6552494b044cac3b0477ee7fa0d5e71d1 100644 GIT binary patch delta 236 zcmZq3X~>z-!J_jm;poO59u z%%0oDzt20qPD^@njdqU$RPg3^s31u7IX~9#4{PVB7-zih*sP(G!|I>Jkj7xdV9t=j z0AiT}u?diG%#g}p2BZ@iEP%8LgC&qOV=x4&GXY~mpiD9l8v}JD0@WD+p(PNTZGLPh G%K`v+B1WA6 delta 236 zcmZq3X~>z-!4h1=c70z zLn4DYg9(tfU`S?2VK8Dy1@g>*tVE!S6b3_}2#99}dhF8 KHa|9$WdQ(rS50C7 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index 07744ae6ad609de07f9723f3f89010764a67e0ad..c09e9df3287f40d6d7721bcb4460cd5c82b1c03c 100644 GIT binary patch delta 248 zcmZp8z|`=7X+j4})sMRE8+#V?3xv$knDU7y#cSp~L#-N5iN~95CiwB_C8ZgerzEAB zrkNNSreM zIK<+g#E`~d#9+>l!T@5K0nRmFXeV!QBTm5~{WR?|e3NS%ks31tS`^jIwYC3Bly%U^Szj@V) zLoEIl3`q=@3>FN=42cZp3?@L@f+3k9g~5m+705FKvJ!zRQWy+@A|Rd_kY@noSpZpS WK(;xM1nDyXsyAaW+Pr(MD-!_TrBtK< diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index 1483d6616f66c9fb8520e74f9478bcb3b485f675..f3638955d74445e1bfa00f5c00236372cb0de07b 100644 GIT binary patch delta 235 zcmZp0XmFU&!6I_Q^V`Or2Z918Beq8c&en5XoqSp+!2bK?%{4+=Od3gPM&>C=X{Ko= zM#iaTMu`??CYEMqhUO;bCWeX0iN>ahMg|6!24<7bi6pVS+UI?AvWaMbK-g-H^~D8y z-M5_C#kuFlwVugSL}w^K1=~%af}W(6=M4&nYAhZNxv(54{ G519eHQ%r9F delta 235 zcmZp0XmFU&!4kMV@ZiRt2Z91|`>%7vJ-+DHFQQ$$u6VW0<{BX_CJl=uOAF&fa}#5W z&|cM_4|T2w$44W*+;B})!%|4iNTV=g29*} zk-?n71V~#jBr~Ki7%`**d1gRXB2YyNgCS4^#4`i(41hcfAS(^XHV2X*eFi}FW(-D~ JRpK z=PgTE+ZP#b{5kms|2_q%;ARu3AV~F}^S)iXpYWDB8eV$0d7HpFR{tc1GzKFEbA}WK z5X%&ZO@Mr3hExVKAf3oy0i;bBEPn3Q5@WR_x6mW^Q7TYGyQ9fpQFfjl!HD-oz7g~1Rg0^*qgc?Lk91(1~nWSav?kUj&TdNT&2 J&6mY=nE~bpOb-A6 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 50e474f4c355324f1e27baf41735efcddcfea239..4090ed4d4d1be9a1cd81c44c1a11b868629af392 100644 GIT binary patch delta 235 zcmZpOXo#55!7??zbKb_DBhmtH3c?J}PTTu#ydAQVwPV+Z%?UC~nKhEqjLcJ#(oEA# zjEqywj1n!(Of1dJ49!in3Q5@WR_x6mW^Q7TYGyQ9SK&B|JD23@$v+eV1PXnt$}jM| zaBDmv{Nq8yy}Zd0iklRmg4-COfUnFi5@kBa^k9(w*EVzZW#9GkxdLlT1}g9U>z zLn4DYg9(tfU`S?2VK8Dy1@g>*tVE!S6b3_}2#99}dhF8 KHc!{cWCj3F7D}7| diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 79ea7d3dfa2a8d3cabce061668c3c3196caa3e0b..d5fc0f30fb6ca678c079d8ae21d886abee6b9223 100644 GIT binary patch delta 254 zcmZoT!_;twX+j5!ofzYyjXgg40&A=`i4|0=bnId=KEChVlZBgK=o_(`B&8XdrzEAB zrkNNSrqGeH3=xWyML2vS|FU>@@}?%#7u z>D4PYznF7?#XpH5jlqb)oFRn)#4-h96CmH1A(g=lNGCE_0BI8jOCV{+U*|w ZnPea~2I@!zsxtsWOCUDe{Cy!O3jnrIPO<<1 delta 254 zcmZoT!_;twX+j4J$AejWH}?4G3%s;ln7Lmo%5~n){k+%h1bQ~V&^KZ=u}HGCFitc# zF}6rfF-kQtOG!*hF*GtuF-tNqv@lCcGEXx%F-SEtVqjopWME=oaAIVzojlRhU~`>m zSQ<;xqHAX+-EFu1^@6LjRh0lJSxiQ&d&IARh;9N_nAW*fBN#NPrM_b;x zs2$sFN=42cZp3?@L@f+3k9g~5m+705FKvJ!zRQWy+@A|Rd_ ekY@noSpZpSK(;xM1nDyXsyAaW+WdVXCkp^r9#cvH diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.Unity.dll index 16763d7ac9cd4227c7efcb0c3be2e43420471e2b..576c6030c09cf56adaa73b720b1461b96fb2af1c 100644 GIT binary patch delta 245 zcmZoDX(*Y{!O|CX{NKi&0~!LYvZlg6gSUAt?v+Q}d@5JOS zdI16(5C7pQG>r0DZ{u~Ny6wy5$s+pG6rh4N`A|WiYL6>l4nK8n_%0+lcYns_Q~IA+ z{gW8d7>pRq8B!QPEK?vh0rHI*QW?yEbRvTVkTzkk1d?V9hCp>DU~CAKNd{tLppHbK QIs+iI1Y)zz+-6^y0e!SjkN^Mx delta 245 zcmZoDX(*Y{!4g)Qes^Qf0S$ru%XvBuhKV|_mdmZqDthsDbBty%i=IW2rG;^#xrwnw za*9!^iCIcwQi`FGS&CVbfuV(2T9SF1xrsrlnGpkn2P1>?v!t@vU7fr| zFF=4(;$~EYdb{W1A8%cLZYhtLETTV60V*h&3>5^b4&77FkdXG}L{UlCTHVd3^gprs zTQDRsSTa~J7&9a?m@}9FX$yvAh7<-PhEyQW49H3Zsz_ll1d4!oWzxKn0~tp@Klw@#a4ba!%TpE$gw=7u&o@_8zl; z5*Yt}U%Girn7n7phV7r%Y~CUv&8%mUWNBfXXl`O` zk(^?bYGRg>n3Q5@WR_x6mW^Q7TYG%a1;KayaJJ~@-X|lXbDa)asE*~e) zkO>gbEuLoe#!|&;!}$qXqBMhvMyo*9sp2vm{6Uh($ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index d18f37a31f4d28d72e08b0df12963439f28b2bf6..0a758c9e8bfa6ad1054a04880f97126ea4679169 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)f&Od)T3W6#ze#t-ZQ8+>^8ygIqfq5H`B8P>|1{I~aTFwU5(k(6d+ zo|2Sinr32ToN8v2XklhzX=Y|bkp@&({t7_ z1_+d0+w}44n>7ChDbCDE27x!e*tbtXpqwuUXHi z!{Tqjki=lgV8LL_kjP-pU;?Bq7?K%M7>pQFfjl!HD-oz7g~1Rg0^*qgc?Lk91(1~n XWSav?kUj&TdNT&2?cX;ua3c7wC8u5U9@|;Mx`S@o&)5RhpYiJVZD&lG2RKQ={s>`aDXF&HtJ zGo&zpSf)U10^}Prq%xQR=|lz#AZ@~62_(%J41wxQz}OHdlMKYhKplxdbp}9a3B+cb J<)a=l0|3KtO+x?x delta 238 zcmZqJ!`QHgaY6@+(T$FljXgKq1tJ)~mCLPLqW{M?GW)08F4pUjP6A diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 9f6fc57142d26be4135e42db530e50a96f99f9b8..8468bac2e696934b4dd546a694d87e9e2afcb160 100644 GIT binary patch delta 236 zcmZpuXsDRb!Lsid`@M}l8cG7&oK|04dFZvr`iG{mTlF)=HXl*?%%YK$W@Mg{lxCV{ zVq~0ZW|U}QW@2e(W@v6=Zep02oM>#CXk=huX<)YbzWPlrmNP3uPfp%r6d>^4_2^9pX_ShcDY`gtb8_SF@cQ+p}Uc>62#E`~d#9+>l z!T@5K0BrJ0$bxrw=nVPbNkv1y`_fq|ug*=C(1HC!yS*jC=3yyjehfW;2! z#Jm7!kGc20f3Q0>`PF2e^HUU{f*rC@L7?h*Z5a{HX9ZiX+`n>t*X9G~|FHTeF{CjV zF_<%?Fo0O5Kx_i!8#AObm;vcT1`8lP*1c5Ga!j#Ku4!i9mG*KxhfX LW}CUMePsp!z~@la delta 238 zcmZqJ!rZWhc|r%vt>3ddHuikkC~(N)SEe~zvGBg7g^x O)tfOGZRWoAl^FmvC{fk` diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 9a09afe190cc2bd05618937b9614bdf98c617137..7a5790b907a52a6da90518adaf3b1c996dfebc4f 100644 GIT binary patch delta 260 zcmZqJAlR@$a6$)5RG0dk#-7$5#;rX}FTMz@`op|?&8^!mt#`tdHtkcryuIZsQ^5(1 zq%Agpo#i!TrW9Hs& zw~yIrA`653q3_dM{8<77tg5G8dmb$9)A@YH^sa2?tm#kuSt=BuqH8>%qCoZK{qtIb zq^DeXv$11d!uFZ~mMtv)NepQWMhxZ*DGVT%DG-|g`Nj;X3}!$&k--8;n=n`cNizmR gpgI#UHU!Ef1FPx# delta 260 zcmZqJAlR@$a6$*ms$>4I8+%%N7`OH?z4#)~A8$2hO`o3AnwH%^(@OX=x3_#{DmbBG zkz{FMoM>)hY>}K|lxkv@l9-fYXk?aRmSkXPVV0I;o@Q=hkZNW$z4r*S`1JaH%-q}U z_Axt6WU&e^UpT$RpCv$Gje_mn?|UlTH#$pcm5V7JnEu3{r9uHJ`n(V-3R15sFx5EW z<`)gdc<-6pYXVrdu=rarBr#YrSTGnfBr=#Ym;h-DhGd2m1|x=4AkPfQN(8D%VK4-W ifOuv=o&k_&0c52C+2%kJq|X4T-i*O$dwnQNBNG5#wo*U< diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs index cd76b859c..0d8d31c16 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc20/Erc20Calls.cs @@ -52,7 +52,7 @@ public async void BalanceOf() public async void NativeBalanceOf() { var balance = await Web3Accessor.Web3.RpcProvider.GetBalance(accountBalanceOf); - SampleOutputUtil.PrintResult(balance.ToString(), "Native Balance Of"); + SampleOutputUtil.PrintResult(balance.ToString(), "ERC-20", nameof(NativeBalanceOf)); } /// diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleOutputUtil.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleOutputUtil.cs index ec0ead121..1566f91c0 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleOutputUtil.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleOutputUtil.cs @@ -4,11 +4,6 @@ public static class SampleOutputUtil { - public static string PrintResult(string value, string sampleName) - { - return $"{sampleName} executed successfully.\nOutput: {value}"; - } - public static void PrintResult(string value, string sampleClassName, string sampleMethodName) { var msg = BuildResultMessage(value, sampleClassName, sampleMethodName); From b23407ea5e8dcf4b14f60a9c2d035f7b0b4ef8bd Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Mon, 3 Jun 2024 19:19:29 +0200 Subject: [PATCH 93/97] removing unused namespaces. --- .../Scripts/Web3AuthLoginProvider.cs | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs index e163b82b9..01cddf3ec 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Web3Auth/2.5.1/Web3.Unity Web3Auth Samples/Scripts/Web3AuthLoginProvider.cs @@ -1,11 +1,7 @@ using System; -using System.Collections; using System.Collections.Generic; -using System.Threading.Tasks; -using ChainSafe.Gaming.Exchangers.Ramp; using ChainSafe.Gaming.UnityPackage; using ChainSafe.Gaming.UnityPackage.Common; -using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Analytics; using ChainSafe.Gaming.Web3.Build; using ChainSafe.GamingSdk.Web3Auth; From a952262f5450f063781fcefcbe3eb140c66caef6 Mon Sep 17 00:00:00 2001 From: kantagara Date: Mon, 3 Jun 2024 17:25:35 +0000 Subject: [PATCH 94/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 17408 -> 17408 bytes .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Scripts/Web3AuthLoginProvider.cs | 4 ---- .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 284672 -> 284672 bytes 17 files changed, 4 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index ac01afe52f1cfa6d42c2ead2254d9d257111edae..b8b2823a8d5d6a9c09e6a374226015a57dbc2ff8 100644 GIT binary patch delta 239 zcmZqZU~K4MoY2AIT)Oek#-18OffIpe78tqjbm-ZT^*omG>xRt|Mmt#5jf_nU%u^Fh zQ!P@G(@c^KP14K^5-pRBQVfhu)6A0$l1x(5ERs?t@3YX_tY{(5#G+s#Hh;2>Re*qv zx>>u%221aG6Za*yO8t90d5%?&0#xv}98?gby6e-@qqkNWbM_p)aB#DSwI7SG5rZ*< z34;NHIYTN#B7-TAv|vbKNM=X_iY74_0?9N6GoXATgC$VZ2q;B QPa05H5<|-7$M&);03Omx;{X5v delta 238 zcmZqZU~K4MoY2AIw|D8cjXgDn0{40&zZ|$>@3f`v+C7nSlP#MijCQc9r5Ty0B&C_A znHU+Tni(Zpn3-6bnHid!n41_TCMO!3CK?$SSQ<>;YoWba(L$VwCC;+!%w!v@0D=22 zXIXDf$n#zKuQYRqe)`?XbF6w4pn`8ozg{T+H;9PjWV2iCV#}Ze(m?V4j+2 znre}foMw__Xp&}TkZ74~lwx3Pnr5D4kYtjYW|5RK`Co?i=5uL>SXu6GU$|oOl$-zo z>&?3lT0i#o-X@woY4M%I(y!GV%khwB826H!W$#rA%HDWMk zFkvuYFlR_*NMtYtk`@dp49N^>K+z-yLm-*PUPZ9YN@7Ua>|U~y831x)RILC2 delta 239 zcmZqpz}WDCaY6^nhJ*drHuhLV2?%}QvwGsonIM$;&?+HvM@}?eEePI{8b^0tKjGf)P{@sJg5{CTdZZc5F?{i-~QUx8%C9`KB=# zF_<%?FeEXgF_;3e36O8hkjh{Nq!Sq|fV2sNC6F{@Fa)YI0b@g;OfnD~19c<<)foVx NB@ml!b}!k<3;-DoP{{xQ diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index b667d0a2174bda39b62b6e06e8715dbc6edf7f78..2c076c15ba189025e37d8d1cbe6889bce79b4107 100644 GIT binary patch delta 231 zcmZqBY0#O_!Lnkp(~*rm8k_=Vx2#mw_T_l5IeNtYvios`%||$;7}br8O$^La6HQYs zQj*h5k_=7K%nTAOlZ{dgj7`(blMIqfQqwGwQYN! zG9)sX0!a&o6ozDmG@xh_gCUSiV=x2CCo)(9MU8-R20$IAKv8p`ya5oK0QIB+btN&R KYN<=(~~4NifqX6;#B)*KFtCQkSHq+!Ru`3R>Jqk5W=c}h~6X_|?V zajKb7qJ^1>rJ0$bxrw=nVPbNkv1y`_fq|ug*<@DkXqNoSpLZswa0l@Je=5sunzYAZ z_L_@EKd$OdKFr;#02ND!hKTtC701*>_04aYIpz-!6N0Pw{~L>kBWfP&(_UJ?|=DCuJWt-|HGJL^9q%NEb2zaCI;rIiKeL* zDamOjNronAW(J9t$wny##-?fJNd`$Ksc9BTDVrx~b}+I$3ab4vSw=fRVCABDiTMp@ zefosBOw^~yte#w>-J<{%jDZP)R415(r)Matc1Uj&Fx{-7lgH|7#9+)|!eGE)&XCHG z$Y2U2Ef`W5k{Qx~qDc&fKr)TN3@D$-Uz-!J_jm;poO59u85md^m~Eb**}=&2#4`8DWEt%M0ps_){9266 zp4-L0&pWy7@aA`@AV~E&Ki2OLYv-sKXT0v%tf7;~>YK)3#9+>l!jQy} z#$XD>CP2P1Ln?zAkWOT<0MaH5mO#>s!4Rm<1dI)VGRZ(}4AhYbRA&H$mOyN_`LUra F3jl_4McDuV diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index c09e9df3287f40d6d7721bcb4460cd5c82b1c03c..9cb664afd943204e9c391db230927322aaa626c8 100644 GIT binary patch delta 245 zcmZp8z|`=7X+j4}{xYuj8+#V?3#`x6juCs_;D6q4l_5~Oz`K?H8M6aFi%Z1 zO|?i#PBTd|G)XfvNVH5gN-;1tO*2n2NHR%Hvq(x|V6b6iFrR#If#T+ybB=SdY$$cT zHF?SM0D-L^D`TFlzvj71ZsxON-BJycSyr?uKm|2_K?Omo=bF4L2rJeU&VQsUyLr`$ zBP_l~48{y5345mQRf+2+=nIR1*n#5oTB-0qofbxk9mOxP>pqv3vhbd6h Y94K!9#3n#JX+T{`3@Mv;uXSYt07k)7p8x;= delta 245 zcmZp8z|`=7X+j4})sMRE8+#V?3xv$knDU7y#cSp~L#-N5iN~95CiwH{rWu*1B&C_A znHU+Tni(Zpn3-6bnHid!n41_TCMO!3CK?$SSQ?lyFxW6Mm`^^qKymZUImfwJdQU`k zPF}J+K)~xWd;Je>9{<@fr}!pJjTwt4qjS0(^5>}c{?P_Wk?+tnP%{4;WOzK9)CI;rIiKeL* zDamOjNronAW(J9t$wny##-?fJNd`$Ksc9BTDU;8MB(cO#D_u0%L^MEvqlV{<{3=e* zNkeVZ$JHLGgneDd(vhfu{Ks;BL-sz69xkYbB0ug zLOrfDWd z#;ImTi56ximS$##<|gJQhKb3E#-@oz1_qV}W|Pl}B(c2O=Y4dtiD-a8*lLaS#RYra zx18Ce;seyEhUd7HomR$n6qV+Ioj0|s-3 zRE9(bQy^)DU~CAKNd{tLppHbKIs+iI1Y)zzm&J6M E0cWyFp#T5? diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index 4090ed4d4d1be9a1cd81c44c1a11b868629af392..24151285b5c4d1e4ba4245b0a7bbd7a9e3d1f0a0 100644 GIT binary patch delta 232 zcmZpOXo#55!7^)6$dQdbN2CR&{Q218w=&sh>kMusl?_iXZBCF`#;k5+Y+_)ZnrND8 zk&>Kdl4NL-W@eCRnQW9|U~HOZo@9_@lA30blrmXY;W$f~ndyefKNJE4?u$PCy70GDtxMfvWxfl_}H+xA@CQ+An3?tfi#D=9|V~#9+>l!jQy} z#$XD>CP2P1Ln?zAkWOT<0MaH5mO#>s!4Rm<1dI)VGRZ(}4AhYbRA&H$mOyN_dAdd> FGXVA@M(F?m diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index d5fc0f30fb6ca678c079d8ae21d886abee6b9223..5b42d7e07b51087af9046530bf6ca97d8e0b5627 100644 GIT binary patch delta 251 zcmZoT!_;twX+j6fb*H!2H}?4G3p`zS{$u^pKOWnpG}Vi?7kg}ep>ND;Y-DU=V4j+2 znre}foMw__Xp&}TkZ74~lwx3Pnr5D4kYtjYW|5S_z`)ALz{J4d#K>Sfd7`Po<~q}` zG!{3{dn+g3m>nRX$kBeHxo4X1hQ+0B9UYNjlP%^hHGo&&kGMEBM3x*ViWQH`LXcB`VkW6DR1Ii~dSOP_jfN};v c9i~80bD+Ed5Ssw?qycp$F{Et%zL1jz0Qq=ObN~PV delta 251 zcmZoT!_;twX+j5!ofzYyjXgg40&A=`i4|0=bnId=KEChVlZBgK=o_;drx}^2B&C_A znHU+Tni(Zpn3-6bnHid!n41_TCMO!3CK?$SSQ?lyFt9Q*FflMVF*4Xro@i>Yxz02! zjfH;)|F+3DW(NouW|=w6J}TwXd-}_Z*H1#0PPUjcK>;eb#TP0FQeCWI9`iQt-*Zdp z)hjo@m~)85H;uuF!JHw5A&DW4!4!y1fP7-7~T|JB{ha`w8={K;GN z0tA-rluKJRS;u=vCZlu8w2LW|Mf9gBKm|`*Km|dn6IG@@m?g)js z48{y5345mQRf+2+=nIR1*n#5oTB-0qofbxk9mOxP>pqv3vhbd6h94K!9 U#3n#JX+T{`3@Mwr&Au`N0F$sx0ssI2 delta 242 zcmZoDX(*Y{!O|CX{NKi&0~!LYvZlg6gSUAtrJ0$bxrw=nVPbNkv1y`_fq|ug83Tg{BZKqgdVPh-e|0yr?0L8E#N;h{ z0RkHj|KTY#jPhA;<8`CD?aSrKBKp%5pn^5|P(h$-k1JmeKXq>SE+jd3f5zrh`d?Um z(-@2x%o$P`k{Hq$Oo7-0$Twz4WiSKMi3}D%+JwOpNSZMi0@ay-u^~_<8HkO6Iue2E Q41mxQh|M;0n|);l0C-?d%m4rY diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.MetaMask.dll index ac44c090d627cccf62bff95063195cb3838af445..2664f2e6eaa32e0ce5144d996c1b6d68beadf4d2 100644 GIT binary patch delta 242 zcmZqhY4DlQ!Lp+3@S2T15)uM;d1}fpztnKtbM<#%)5#^eo3}{FFzXr_n;4j45mQRf+2+=nIR1*n#5oTB-0qofbxk9mOxP>pqv3vhbd6h94K!9 U#3n#JX+T{`3@Mw>D;lx@0AdVIF8}}l delta 242 zcmZqhY4DlQ!6K#oclyR22?+toy-`{3c8I$6Chcok$z096d5eS$vu>J^c}h~6X_|?V zajKb7qJ^1>rJ0$bxrw=nVPbNkv1y`_fq|ug83Th8BZKW^2N|Ww@-n3?cXsC9pFBe* zK;WyCm0mU*yVq7rqwM{5hK`ee$aE<{1*J@(fr=06Q`PTH3(>#@`q+q_8j0kdx! zgAs!{LkdF@LmGoA5Ssw`#tf+pWu`y6bB2b+H O5LyDU+2-?#hAaT-jY0hY diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 0a758c9e8bfa6ad1054a04880f97126ea4679169..4617d45b6fd4bd266de2fdad0fb0af0cdbd88b3a 100644 GIT binary patch delta 244 zcmZqpz}E1AZ9)gj?WV3wAki|}D8<0oG|fE8Aju>(%_1pfyU#L484i|d{#i>=b1zjsbQvyO3s0#x+JPpBwJeON4Cd|1o8m{+AcA8oH$@Z zYs6s8V8UR)V9t=rkjP*PBrO^8ygIqfq5H`B8P>|1{I~aTFwUH-o@Qj8 zl9XneW@2QVYG#yZVP;}!W@cz^Vs2uXn4D;AnrLKTU}<2s-Der23XW$yjXFaFG5dW(7bnRSd46riHd`Jtjf^=ao6Y7$=PSFF|)4UgJhvz}3p z#W#(?h{2p8g&~O{jlmR%O@Mr3hExVKAf3oy0i;bBEPF0lIAm)%ok5BV*ef52Si<<}dVOFTq5)QyZy49rs# zO;asWlG99*3{BF^3=%DqjZzGZP1DSi43bPz(=3uwHg5=UVP^4b+uJz#M{s~ZGDnn} z*gPx8)gn1_=W8qvog5J|O93jFm<<&Ksa~nLHEB|<&n#EXSl!J+p$AxejTnp>Oc)Fp z%o$P{5*bW^qy<9?Lo!1eP&A3b5J;vmm;vPz87zUKMnE|Opbk@@s5wyH0EkV1deVTp Nk{D7p%SSzA1^~QbN-qEa delta 235 zcmZqJ!`QHgaY6^n{JHh_H}>3c7wC8u5U9@|;Mx`S@o&)5RhpYiJVZIv(~QhhlG04m zOpJ_E&5RN)%uFoJ%nZ#<%uNgvlM{_i6O9ZEEDg*yZwPQ zBr&8hm;$j0kZ;V8%3ubh6B#Ukv>o2KBDx6Mcv5Q#K1f?(KOW} zB{|I`$d z+oEc(c}FEzCr_3!Zc%^=swqJQL8?F1XKb(ebVY!9;jcHF4;Zgw^)+HJW-wteU@&J$ zWk_T&1(FsFDGbRBX+Y5=216j3#$X1NPh_wJiW&js41hXJfuiO>c>^Fe0qRKu>Plir K*}U7*l?ebx@JcZN delta 233 zcmZpuXsDRb!Lsid`@M}l8cG7&oK|04dFZvr`iG{mTlF)=HXl*?!lIsLWS)|gW}0SV zWSnYdlxSgQVrgb(Xl`O|VwjkmXl$BjWME)vV7B?b`b{pDGb=++PTpe_An@Mg(;5F8 znT|V;EaMQaWbK_SW89(u6?|w36$GjF*dEDjyZuxf%Zx8~HyTwt2Uu GD-!_s!Avy( diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 65822114f8b7a8c6ab8de73622403f7063d599cb..467c30cb7bf0aff33d40f22e90a4ba893c05caa7 100644 GIT binary patch delta 235 zcmZqJ!rZWhc|r$^+YR%z8+*QN6bS8mlsV(k4Cij2>0i|vt_E$Mu&Go~-N@L)z&th4 zG}R&{In5-=&?L>wAki|}D8<0oG|fE8Aju>(%_1pfv(AwkE|x84UcQ>V=3Ib4ddf!k zsw^(w&FP`%tawkVOy)U1MFA?9YYY_xs?OSdhBsqnc>^Fe0qRKu O>Plir+01?ID>DFK!B24j delta 235 zcmZqJ!rZWhc|r$Eic{O(jXhsB3J4!QtK3vK%Xv?=)2*8;E-l(TVNZ9> znu(Eds+m!ug_((^nVF%viMfekVsfIfX`+#Vfu(`jW}PE7Tr9KLR^Fey=3Ib)#SZDj zyZ~p9x%a+*usb#R)nuOYQxu?r9kNhCpz3&S84=EB1zWD%zjA%o<^$*dvHGSl7%`YL zq%b5gq%oKRu?diG%#g}p2BZ@iEP%8LgC&qOV=x4&GXY~mpiD9l8v}JD0@WD+p(PNT KZRWoAl^FoJ<4_R* diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 7a5790b907a52a6da90518adaf3b1c996dfebc4f..0b42ae8579ba012b4f7c13c62d4de9ea26a3d7c3 100644 GIT binary patch delta 257 zcmZqJAlR@$a6$)5;)>vljXkYBj9Yt{UVIT)8aUD2&u`~jCq5i`vAyLhQ{f49 zBV!W-^VCGsREw14G?OGllQc7fM9XBO6a!<^H1i~bB$L!Mi=>q4y+@eEr`PXe=H70% zkJ)J=%TniWJEphzvjhlCu`fGbu&KvoT1-j4+{vRF)1UaWR4712ufRls>MeLX4c=%^ z(GZnh!g_jpO#sU_7GEOkPGowTcGZRZQGedI|a}&eFP*1c5Ga!j#Ku4!i9mG*KxhfXX4~sSSsIxDy$)0* From 345e0d446b597920734e766a9b1759d742b78772 Mon Sep 17 00:00:00 2001 From: oleksandrchainsafe <127766834+oleksandrchainsafe@users.noreply.github.com> Date: Mon, 3 Jun 2024 19:32:13 +0100 Subject: [PATCH 95/97] README.md update for upcoming 2.6 release (#999) Readme code example updated Co-authored-by: = <=> --- README.md | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index f8fd826a2..543e8f5fc 100644 --- a/README.md +++ b/README.md @@ -5,22 +5,23 @@ [Twitter](https://twitter.com/chainsafeth) ## Documentation -You can access the docs here: https://docs.gaming.chainsafe.io/ - -Our codebase is quite easy to use. This is an example of a contract call from the SDK within unity. - -``` -public async void ContractCall() - { - object[] args = - { - Web3Accessor.Web3.Signer.PublicAddress - }; - var data = await Evm.ContractCall(Web3Accessor.Web3, method, abi, contractAddress, args); - var response = SampleOutputUtil.BuildOutputValue(data); - Debug.Log($"Output: {response}"); - // You can make additional changes after this line - } +You can access the full docs at [docs.gaming.chainsafe.io](https://docs.gaming.chainsafe.io) + +Our codebase is quite easy to use. This is an example of accessing player balance and calling a write method of a custom Smart Contract within Unity. + +```csharp +async void Awake() +{ + // Build Web3 client + var web3 = await BuildWeb3(); + + // Get ERC-20 balance for current user + var balance = await web3.Erc20.GetBalanceOf(erc20ContractAddress); + + // Interact with custom Contract + var customContract = web3.ContractBuilder.Build(contractAbi, contractAddress); + var friendHp = await customContract.SendSingle("healPlayer", nftItemId); +} ``` Additional prefab scripts can be found here https://docs.gaming.chainsafe.io/current/prefab-scripts#contract-call From 02af67964d84aae48ef65be20f589662e5aa1e83 Mon Sep 17 00:00:00 2001 From: kantagara Date: Mon, 3 Jun 2024 18:38:05 +0000 Subject: [PATCH 96/97] Auto Commit [skip ci] - Duplicate Packages Samples - Publish DLL Dependencies --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 17408 -> 17408 bytes .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 8192 -> 8192 bytes ...ing.InProcessTransactionExecutor.Unity.dll | Bin 6656 -> 6656 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 11264 -> 11264 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 42496 -> 42496 bytes .../ChainSafe.Gaming.MetaMask.Unity.dll | Bin 14848 -> 14848 bytes .../Libraries/ChainSafe.Gaming.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 55808 -> 55808 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 284672 -> 284672 bytes 16 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index b8b2823a8d5d6a9c09e6a374226015a57dbc2ff8..66bd551fc1d671707a06912724e8a364572d3da7 100644 GIT binary patch delta 242 zcmZqZU~K4MoY27%^#9?HjXgDn0tNByYI~nt^W0T*&o}=;p6X@^qwTC3#wMnz1}P>c zW=W=&=9WeV=Ef$e=4NJzmPv-@rj{w@CPqo-7Ut$gllNI@ZC11pXJYx3Bld2xja7g^ zc2Q`)!)9NPRodCzf3>~sCeN|zQGg2Wcm)*%sa~5R__0DO(=2A&+8diatbJJgjTuZB zOc_!c3>Z>?EE5JZh9n^0lEEB^jew%&3?LP$K-vrl6M>>h42D1+NKFcmHUX+i0@4;h NY|db``LVq$3jmm1Nc8{! delta 242 zcmZqZU~K4MoY2AIT)Oek#-18OffIpe78tqjbm-ZT^*omG>xRt|M%!66l8lT^49rs# zO;asWlG99*3{BF^3=%DqjZzGZP1DSi43bPz(=3uwChxP*+N@|H&cvc%A~t`rja7hv zjk;O8#s*98c@y^~wo3hbJb8{)j{;Qiwj5Ltq`K?V(xbOl8FTg=y>M`|hqVuje-eWc zgE4~%g8_p%Ln=cegDH@-U`Sy|W=I2yCNUTS$utHtpnM{OB~a7|C}#lFVG0yA2g(}& Tu?bL58cz}(m*)!fW1(K5-<+|)9~+{7r!+``=4X!5@d?ak-X4zaRuz1*{Q@|2ta zf%H2sc$EU|T-UTqZt@Hamzew|XMqA#aBB`!5TyFyvwz!L_IpKl?`U7Yc}uPfo4+xG z34O3w$OEZK0n#QwRY^eF P0*K8Sj5fQM>|_Q2!rD!1 delta 242 zcmZqpz}WDCaY6@+$&T1r8+$CG1acSbWdD`O>ozg{T+H;9PjWV2iCWIBkz{0SVql({ zXqsw~lALCeWN4CRW{_x^Y?NYPY?@}CWRPT%nr4xdGWlPI_U3bGhgezeZ(q1#@|2ta z0qf1X4_ZI=_TDC%J!$cs!_y{z$yuNP71V|af>fJa{=D_%{*bvcHU@JyZ^?CG^G{+h zVlZYfVK87YXGmp8WH1Gi77Qs2$qZ>g(If^#AeqKs29!@^ump-40p$#UI!uA0=0JG^ UAT|N&NdxLiVo2HSUb2%J0D%ovaR2}S diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 2c076c15ba189025e37d8d1cbe6889bce79b4107..18be90960f23755e62f8ad7b8f83584fe843d645 100644 GIT binary patch delta 235 zcmZqBY0#O_!D6%e%ZZIW8k_>jo`z2ju1|89tGie|BuB?*^AS!-Mh#;V(^P{L6BDx} zQ%iG8BLj0|lT>pvvqZ}zLvvHh6mt`!By$UMbECYRj$(tbFu~oM3wTsm{f!w+7)%*b84MUw zfGiURGlnD}-;%)`h>d`v<_sVesX*Ec2or&#NeqTS9!O0JkTwCTN&?arKy1!nwE3~1 GEDHc=j6{h5 delta 235 zcmZqBY0#O_!Lnkp(~*rm8k_=Vx2#mw_T_l5IeNtYvios`%||#T88woOj7<#8Qxi>7 zEmD%xOp**u(##AJEt8E>42(_F%##d~Oj6S<#m@pVH zm@}j@Br=!+NehM)hGd2`plA|@<0s!axN%a5# diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index 0e3db06cf863e2c3ecb17d7b6b8f93ecf6628752..b894c2d050ee97f34ff3f92db37c102504c77fe2 100644 GIT binary patch delta 235 zcmZq3X~>z-!Sdbz;`)s}JSqa=I_66fbJ<*4?I+j0C}4QGd4pvvqZ}zLvvHh6mt`!By$UMbEC}@G&>lX*9CS@mevjwI2yXTFqCzQ z-^SL^0{6{(+a}j&_b5OG?F^xUK*bdss}IgSnvl9&ihtSG%^Es6tp3IfCJd$wsSE}T zDL|G9gBe2-kZ;Lg4#Y-4QF8{6ic}zN284+~(If^#AP=M_1xT9!RV4vw3m`UUFxvds HP?iM%{oq9d delta 235 zcmZq3X~>z-!6N0Pw{~L>kBWfP&(_UJ?|=DCuJWt-|HGJL^9q#%EE-8h#wG^lsfnhk z7AeVTCP{`SX=VnAmdQpb2F9jo=1B%gCaGx_NhzBrXm&6%KMJayEUg_VuyWD7#QcV{ zK7B%5ChAjUR!^?c?oogW#=r!Dihm@Sgr{dHs&+_k6foVap_9YvpTuCqV9a2`V8CF` zkjjwAUMs`U~X)ZYHnthXqjYaZfcogZeo;VZeeb2#K2&~$Y4JC-~z?XH|HGZV$lkW zyFGcy@&EyKnL8JZt}A#hUUGNUO!4E%lUY`@DL@5JDnkWd`v<_sVesX*Ec2or&#NeqTS9!O0J WkTwCTN&?arKy1!nw0ZYhS0(`JeND*# delta 248 zcmZp8z|`=7X+j4}{xYuj8+#V?3#`x6juCs_;D6q4l_5~Oz`8;OENMxF)&X} zG)=WgNlr6KGBimuGf1>dHcBxtHcc~6GDtE>O|wW!VPLRfWH6t6aDn3Hn{$qHv1}-H zy)}8s@&JLYA1h;?tiR^DOK#?~W8G2>lUY`@DL@4^e?bL7s^^-#D+nvr6wZI7E4z8s zibE{^Neo5|#tbG51`Os5sSJq>ra;nyA%!8CAq^;+#9#;{(-_Qv@`((VKv5&0oB>dW bDNxiLC~pA7CO|!DKwU`;DVuk%b!7qoR~=Pj diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessSigner.dll index cf542b9887dba2804254af6022efbb27536eb843..684192c5a34d0676ae650c4d8eadc55f0fa62b99 100644 GIT binary patch delta 235 zcmZp0XmFU&!BUxA{AOd%13`hl@KRoN*SUUsmH7pxr5|{;xkgBfNyFI0G}R!*#KbJg z)Y9D2$iUp#B-Px^EYUK_(A?BA#oWXw$=t%++-UMSktCK7>9_@xO+*6({DTgPM(>}c{?P_Wk?+tnP%{4+=Od3f>#wG^lsfnhk z7AeVTCP{`SX=VnAmdQpb2F9jo=1B%gCaGx_Nhy=hi6pVaPb*zC*+euzfTM=zjQlE2 z&*eu7wqCs2y>Idq(HROb!RJsxkm@&v%WpsZXfsz*FniKwAF&oz|0D(@24e;j1_K6j zhE#?`22&tu!H~j`%#a2YO=2(vl4%TPK>0)lOQ5I`P|g6T!xSiL4wN?lViTaAG@z~| LhLp|nG7p&nHdRW1 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.dll index ffa9d45eb4bac1ee4b154446780b13dfd7c92a22..4f9185a532a9c4f5aa403a873ef591089e2bde0b 100644 GIT binary patch delta 235 zcmZoLX)u}4!6K^Dv0`J-86JTPtBbB&dwtAdV~MtfP-ME{<_z8rMh#;V(^P{L6BDx} zQ%iG8BLj0|lT>pvvqZ}zLvvHh6mt`!By$UMbEC-;{4p$VSzPW-uHX+4_?}YyT&ZKa z$I6{w+Fy5y9h!WDf1d(WPy;3iQoX5Yhxd8bd!Mdu+_Q4?Hi2`j{>BU@45kdJ3W|#700-a|V!#R3L2zgo!}WBnCqu52PjqNSgpvB>`y*AU0<(+I(3| Gml*)Y0!v~5 delta 235 zcmZoLX)u}4!Scq5{oux)Gdu!;*_oV=gOdE3{O2i5{`lhd<_z8rMvWvRV-o}O)I`%% zi_BC-HOJ zyt@=;oR_{Bk~jGV|2_q%;A$?YAW*gS^@sJ|Ta^E-^nR$6w|SeuIadE91|tSz1``GY z26Ki~hC~KaAZfvn!jR061{6(VFa(lm3}!(2L8Hy~yskU^#z&&AP~$n-gS~GHV!{n5G(}n3$L) znOd4#8X1@yo1~hXnI&2#8Je3~rkI-;C7D~8n;T8mRXEOaaP^salYb}#2uRwU&X4U> zbzaqY#drUfWc|qziklRmf|IqNf^ zAqB`XVK8Gz0`e^x%z@YlC~D3CQjrRz&44fwD4N7z2;_m(qyT9XpsFMwZ2`pQ3`U!$ IYh*G50D8Sfpa1{> delta 235 zcmZpOXo#55!7^)6$dQdbN2CR&{Q218w=&sh>kMusl?_iXZBCF`%B+!OWNcz!o|h=o_(`7@L@;8l;$* zm?fE7np+wfm>Zjqc4oZ+(BeSS69yx;5Ew@tQ~GeH3=_&pvf2vi-I<*@EE+j*5a zUPZS*Z+M=$l4N9TVql({ zXqsw~lALCeWN4CRW{_x^Y?NYPY?@}CWRPT%nr4xd!oa}F$iT$F;KayaJ9(n1!R9*C zurwAo&wDE;-sIg%Kfg}w zltI62Q&n{CuKVCTW9CJD{J1tR^_(;n`1PCS@eueOj8X~Oiav@ zOfAhVjSS3 z^a2D6a40!5P;41qk5niL>y0#ua* Qq%DBhoWW=_x7k-_02>EOJpcdz delta 245 zcmZoDX(*Y{!Sdbg%GZrO2Q&oY<4@`rOfqxcb1L!{f67zC%`uw6EP6>s#wG^lsfnhk z7AeVTCP{`SX=VnAmdQpb2F9jo=1B%gCaGx_Nhu5r9*hjmlk4>rCjZsl%yRa+(EQ0; z^a2Ey?UYMfHCe}dM<%0l%Cw6qlSTBWDL@5JTR;UtsuNYFKA0uPr{v`qv}W@u{ZFj^ zNeo5|#tbG51`Os5sSJq>ra;nyA%!8CAq^;+#9#;{(-_Qv@`((VKv5&0oB>dWDNxiL XC~pA7CO|!DKwU`;DVw>?zA^&ug+{Eg8&#*a#?U&Hz%83Z%_|FcB!4#9#>Ifz+e`X%nET SBp_`8#O4e}o6jp6vH$@1;7=t0 delta 245 zcmZqhY4DlQ!Lp+3@S2T15)uM;d1}fpztnKtbM<#%)5#^eo3}_vGwUT88JifGrzV=F zTBIbWnIsvSq?s8cS|%H%7#N$TnI{<}nWUy!B&9GgI59HVPIiz{nk+9<%EIznZTI9E zG64c|=l*S)lkwAITX(#vjoWwE$vra;nyA%!8CAq^;+#9#;{(-_Qv@`((VKv5&0oB>dWDNxiL XC~pA7CO|!DKwU`;DVxtL8nOTYWj9Xq diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.SygmaClient.dll index 4617d45b6fd4bd266de2fdad0fb0af0cdbd88b3a..89fde9c43761d389412a8fb4879ce7f7363aa992 100644 GIT binary patch delta 247 zcmZqpz}E1AZ9)gjlFN6mH}-7pVf?@@@N08Mf>t!6dzb8`4}W6n9&PX8V4N{m!`Q?$ z)gZ;h#4O3w(%jO>z}(m*)!fW1(K5-<+|)9~+{7r!+``=4XuHocMi~y4ir&nF({t7_ z1_*@yzO~eiko`Tur6Z&#Ysdpa2z>jfaYY)Z1U%m##TQ)NjJ%FrMu->lt-e z{EZn*7)%*b84MUwfGiURGlnD}-;%)`h>d`v<_sVesX*Ec2or&#NeqTS9!O0JkTwCT TN&?arKy1!nwEg>LMotz0r_)R1 delta 247 zcmZqpz}E1AZ9)gj?WV33c7jR^rnZ7JK+iQ*8{jVJTQVE+&JVZD&j7>~a4N^=@ z%#utk%`J@#%#BS_&CSdbEt3q*O)XQ*O^lMvEzHf0Hg5=UVP?5dv3&dFAHe|v3m>=& zhE6qh+FE5CW3%|Y=;VlySqd=0uTVjtYV#tqd5zPLO-XD&uzbyCq0oIS{>BU@45kdJ z3W|#700-a|V!#R3L2zgo!}WBnCqu52PjqNSgpvB>`y*AU0<( K+AJUSkQo3UVMsjy delta 238 zcmZqJ!`QHgaY6^nhA;olZS1+>F0lIAm)%ok5BV*ef52Si<<}dVOFTq4G?I*rO$^La z6HQYsQj*h5k_=7K%nTAOlZ{dgj7`(blMIqfQqwGwQZ{c0aA9WgYunp6`A2YoKr%;^ zn%F!m$JHV^bLVR;51kwlGD`s}n3xR}1gT!BxHV}~tpTA z7z`N98B!S%8BBqs1w#r$GD8|rG>O3wNTxBE0p$}JEP7*aONM?GW)0Jkhk^8f$< diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.dll index 633af91fefb9b5fd69bf0731e01725a6e7314027..854368be3fae07c6bb4a32dc7eb831400479900d 100644 GIT binary patch delta 236 zcmZpuXsDRb!J_od>F~xL4J82spI5GH79Q|eZy?CcVelqz^AV-bEE>iprl|%gCMIS{ zrk3WGMh51_CaLCTW{H+bhUTW0Ddr|dN#+*j=0=>o2KBDxQMI*_`*u=m*HPJNH zA|*M^B+1Yu&CDRtGTA7_z}Pg+Jjo!*BsI+XK+z-yLm-*PUPZ9Y NN@7UayxY>12>?AsO7#E$ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 467c30cb7bf0aff33d40f22e90a4ba893c05caa7..f25220cce4129d7afe1edcf41629391f55e91f5b 100644 GIT binary patch delta 238 zcmZqJ!rZWhc|r$Ed_&mWjXhsB3iwP~lT=wz;?ueE*uSggV%IiL*i<5@VQgZWYLH@L zVwPlTX>Ms`U~X)ZYHnthXqjYaZfcogZeo;VZeeb2v{~m!4Ht{*`5VtCuQ?YWa8Xk8 zcE$9iP7})CDPFPpc5yP#`6&wMfj46@7btyKEmE^~x&_T~fU|FHTSGng=#GNdvX zFr)xkCJbf_NkG0OgE6a40!5P;41qk5niL>y0#ua*q%DBhoWW=_ I_qDIg0Bnv>2LJ#7 delta 238 zcmZqJ!rZWhc|r$^+YR%z8+*QN6bS8mlsV(k4Cij2>0i|vt_E$Mu&G2)Bgx3v#K1f? z(KOW}B{|I`$K+z-yLm-*PUPZ9YN@7Ua%zf=EGXP`KP&EJm diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index 0b42ae8579ba012b4f7c13c62d4de9ea26a3d7c3..57f14c99f9287911746b56ee3161711717cc4a31 100644 GIT binary patch delta 260 zcmZqJAlR@$a6$(QpStkp#-7$5#;rX}FTM!85|R72Kh@P`)5P%hyQV+SZEyL?RB%GW z*u*r|AjQPQEXmZ;+|tOv+}I@5+{`S|GRe@~)H21~#3;$!!ra_wdhZct@#*#Zn7Oyx z?PGSD$Wr6@c+&J1f0h7&_lrGztnQ|`b{L(C(oxI*IQ@w~ON9bdbSg{~s9xydiw>!& z>H9w&@PF&Gy(WNV3yZ%og9(EvLn?y-Lkf^(!eGXb1ms&Xm;0RW@tQ@#KI delta 260 zcmZqJAlR@$a6$)5;)>vljXkYBj9Yt{UVIT)8aUD2&u`~jCq5i`vAyLhQ^5(1 zBqL)J1M}2G(^QL;fE^>Agpo#i!TrW9Hs& zw~yIrBFj?eZ#$;9__G8EOtCLJUa+ahWm-&0zTC;98q=Tnvs5TRMX$g_f$A-II}P4w zPtg#SUc!2Mdrbh#78d^`1|tSz1``GY26Ki~hC~KaAZfvn!jR061{6(VFa(lm3}!(2 mL Date: Mon, 3 Jun 2024 21:41:49 +0300 Subject: [PATCH 97/97] unity RPC Client issue fix (#996) * fix for main thread issue * circular dependency fix by moving IMainThreadRunner to ChainSafe.Gaming * referenced IMainThreadRunner in Web3AuthWallet * client now initialized * Reverting back to rpcclient --------- Co-authored-by: Nikola Garabandic --- .../Runtime/Web3AuthWallet.cs | 7 ++-- ....InProcessTransactionExecutor.Unity.csproj | 3 +- .../RpcClientWrapper.cs | 8 +++-- ...Gaming.InProcessTransactionExecutor.csproj | 1 - .../InProcessTransactionExecutor.cs | 36 +++++++++++-------- .../UnityDispatcherAdapter.cs | 1 + .../Core/Environment}/IMainThreadRunner.cs | 2 +- 7 files changed, 36 insertions(+), 22 deletions(-) rename src/{ChainSafe.Gaming.Unity => ChainSafe.Gaming/Web3/Core/Environment}/IMainThreadRunner.cs (85%) diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs index d88f21521..37683cd3b 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs @@ -8,6 +8,7 @@ using ChainSafe.Gaming.Web3.Analytics; using ChainSafe.Gaming.Web3.Core; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.Signer; using UnityEngine; using TWeb3Auth = Web3Auth; @@ -25,6 +26,7 @@ public class Web3AuthWallet : ISigner, ITransactionExecutor, ILifecycleParticipa private TWeb3Auth coreInstance; private InProcessSigner signer; private InProcessTransactionExecutor transactionExecutor; + private IMainThreadRunner mainThreadRunner; private readonly IAnalyticsClient analyticsClient; /// @@ -33,10 +35,11 @@ public class Web3AuthWallet : ISigner, ITransactionExecutor, ILifecycleParticipa /// The configuration for the Web3Auth wallet. /// The configuration for the target blockchain. /// The RPC provider for blockchain interaction. - public Web3AuthWallet(Web3AuthWalletConfig config, IRpcProvider rpcProvider, IAnalyticsClient analyticsClient) + public Web3AuthWallet(Web3AuthWalletConfig config, IRpcProvider rpcProvider, IMainThreadRunner mainThreadRunner, IAnalyticsClient analyticsClient) { this.config = config; this.rpcProvider = rpcProvider; + this.mainThreadRunner = mainThreadRunner; this.analyticsClient = analyticsClient; } @@ -69,7 +72,7 @@ public async ValueTask WillStartAsync() var signerConfig = new InProcessSignerConfig { PrivateKey = privateKey }; signer = new InProcessSigner(signerConfig); - transactionExecutor = new InProcessTransactionExecutor(signer, analyticsClient.ChainConfig, rpcProvider, new RpcClientWrapper(analyticsClient.ChainConfig)); + transactionExecutor = new InProcessTransactionExecutor(signer, analyticsClient.ChainConfig, rpcProvider, mainThreadRunner, new RpcClientWrapper(analyticsClient.ChainConfig)); void Web3Auth_OnLogin(Web3AuthResponse response) { diff --git a/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.csproj b/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.csproj index 73d85b1d2..36dd894ec 100644 --- a/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.csproj +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/ChainSafe.Gaming.InProcessTransactionExecutor.Unity.csproj @@ -6,14 +6,13 @@ True True ../../global.ruleset - enable Debug;Release;Test AnyCPU ChainSafe.Gaming.InProcessTransactionExecutor.Unity - + diff --git a/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs b/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs index 86062770e..ed40e4e8a 100644 --- a/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor.Unity/RpcClientWrapper.cs @@ -1,5 +1,7 @@ using System; +using System.Net.Http; using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.JsonRpc.Client; using Nethereum.Unity.Rpc; @@ -7,11 +9,13 @@ namespace ChainSafe.Gaming.InProcessTransactionExecutor.Unity { public class RpcClientWrapper : IRpcClientWrapper { + private readonly IChainConfig chainConfig; + public RpcClientWrapper(IChainConfig chainConfig) { - Client = new UnityWebRequestRpcTaskClient(new Uri(chainConfig.Rpc)); + this.chainConfig = chainConfig; } - public IClient Client { get; private set; } + public IClient Client => new RpcClient(new Uri(chainConfig.Rpc)); } } \ No newline at end of file diff --git a/src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj b/src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj index 1a2fca6ad..080af97b0 100644 --- a/src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj @@ -6,7 +6,6 @@ True True ../../global.ruleset - enable Debug;Release;Test AnyCPU ChainSafe.Gaming.InProcessTransactionExecutor diff --git a/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs b/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs index 2402435c7..403780e4e 100644 --- a/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs @@ -5,6 +5,7 @@ using ChainSafe.Gaming.Evm.Transactions; using ChainSafe.Gaming.Web3; using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.Hex.HexTypes; using Nethereum.RPC.Eth.DTOs; using Nethereum.Web3.Accounts; @@ -18,19 +19,21 @@ namespace ChainSafe.Gaming.InProcessTransactionExecutor /// public class InProcessTransactionExecutor : ITransactionExecutor { - private readonly NWeb3 web3; private readonly IRpcProvider rpcProvider; private readonly string accountAddress; + private NWeb3 web3; + /// /// Initializes a new instance of the class. /// /// Injected . /// Injected . /// Injected . + /// Injected . /// Injected . /// Throws exception if initializing instance fails. - public InProcessTransactionExecutor(ISigner signer, IChainConfig chainConfig, IRpcProvider rpcProvider, IRpcClientWrapper rpcClientWrapper) + public InProcessTransactionExecutor(ISigner signer, IChainConfig chainConfig, IRpcProvider rpcProvider, IMainThreadRunner mainThreadRunner, IRpcClientWrapper rpcClientWrapper) { // It should be possible to set up other signers to work with this as well. // However, does it make sense to let a remote wallet sign a transaction, but @@ -39,19 +42,24 @@ public InProcessTransactionExecutor(ISigner signer, IChainConfig chainConfig, IR throw new Web3Exception($"{nameof(InProcessTransactionExecutor)} only supports {nameof(InProcessSigner.InProcessSigner)}"); accountAddress = privateKey.GetPublicAddress(); var account = new Account(privateKey); - if (chainConfig.Rpc is not null && !string.Empty.Equals(chainConfig.Rpc)) - { - web3 = new NWeb3(account, rpcClientWrapper.Client); - } - else if (chainConfig.Ipc is not null && !string.Empty.Equals(chainConfig.Ipc)) - { - var client = new NIpcClient(chainConfig.Rpc); - web3 = new NWeb3(client); - } - else + + // Initialize Web3 on the main thread. + mainThreadRunner.Enqueue(() => { - throw new Web3Exception($"{nameof(IChainConfig)} should have at least one communication method set."); - } + if (chainConfig.Rpc is not null && !string.Empty.Equals(chainConfig.Rpc)) + { + web3 = new NWeb3(account, rpcClientWrapper.Client); + } + else if (chainConfig.Ipc is not null && !string.Empty.Equals(chainConfig.Ipc)) + { + var client = new NIpcClient(chainConfig.Rpc); + web3 = new NWeb3(client); + } + else + { + throw new Web3Exception($"{nameof(IChainConfig)} should have at least one communication method set."); + } + }); this.rpcProvider = rpcProvider; } diff --git a/src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs b/src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs index 671ff6cb4..ac064c7a8 100644 --- a/src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs +++ b/src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs @@ -1,6 +1,7 @@ using System; using System.Threading.Tasks; using ChainSafe.Gaming.Evm.Unity; +using ChainSafe.Gaming.Web3.Environment; namespace ChainSafe.Gaming.Unity { diff --git a/src/ChainSafe.Gaming.Unity/IMainThreadRunner.cs b/src/ChainSafe.Gaming/Web3/Core/Environment/IMainThreadRunner.cs similarity index 85% rename from src/ChainSafe.Gaming.Unity/IMainThreadRunner.cs rename to src/ChainSafe.Gaming/Web3/Core/Environment/IMainThreadRunner.cs index 5b7e6a38b..5392dc597 100644 --- a/src/ChainSafe.Gaming.Unity/IMainThreadRunner.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Environment/IMainThreadRunner.cs @@ -1,7 +1,7 @@ using System; using System.Threading.Tasks; -namespace ChainSafe.Gaming.Unity +namespace ChainSafe.Gaming.Web3.Environment { public interface IMainThreadRunner {